Compare commits

...

3 Commits

Author SHA1 Message Date
51addd8fbb Testing messgaes 2021-06-12 17:06:09 +02:00
29d2813fcc Some weird bug only occuring when testing 2021-06-12 17:05:54 +02:00
cc9343270a explorers -> explorer 2021-06-12 17:05:32 +02:00
5 changed files with 85 additions and 25 deletions

View File

@ -28,6 +28,6 @@ from lostplaces.views import SignUpView
urlpatterns = [
path('admin/', admin.site.urls),
path('signup/', SignUpView.as_view(), name='signup'),
path('explorers/', include('django.contrib.auth.urls')),
path('explorer/', include('django.contrib.auth.urls')),
path('', include('lostplaces.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

View File

@ -25,7 +25,7 @@
</ul>
</div>
<form id="id_tag_submit_form" class="LP-Form LP-Form--inline LP-Form--tagging" method="POST" action="{% url config.submit_url_name tagged_id=config.tagged_item.id%}">
<form id="id_tag_submit_form" class="LP-Form LP-Form--inline LP-Form--tagging" method="POST" action="{{config.submit_url}}">
<fieldset class="LP-Form__Fieldset">
<legend class="LP-Form__Legend">{% translate 'Add tags' %}</legend>
{% csrf_token %}

View File

@ -17,6 +17,20 @@ class ViewTestCase(TestCase):
'''
view = None
def assertMessage(self, response, message_text, message_type, msg=None):
self.assertNotEqual(
None,
re.search(
"""<div.*message.*%s.*>.*%s.*</div>""" % (
message_type.lower(),
message_text.lower()
),
response.content.decode().replace('\n', '').lower()
),
msg
)
def assertContext(self, response, key, value=None):
'''
Checks weather the response's context has the given key

View File

@ -9,6 +9,7 @@ from django.urls import reverse
from django.contrib.auth.models import User
from django.utils import timezone
from django.conf import settings
from django.utils.translation import ugettext_lazy as _
from lostplaces.models import Place
@ -99,7 +100,7 @@ class TestPlaceCreateView(ViewTestCase):
self.client.login(username='testpeter', password='Develop123')
response = self.client.post(
reverse('place_create'),
{
data={
'name': 'test place 486',
'location': 'test location',
'latitude': 45.804192,
@ -107,23 +108,27 @@ class TestPlaceCreateView(ViewTestCase):
'description': """
Cupiditate harum reprehenderit ipsam iure consequuntur eaque eos reiciendis. Blanditiis vel minima minus repudiandae voluptate aut quia sed. Provident ex omnis illo molestiae. Ullam eos et est provident enim deserunt.
"""
}
},
follow=True
)
self.assertHttpRedirect(response)
self.assertHttpOK(response)
place = Place.objects.get(name='test place 486')
self.assertNotEqual(
None,
place,
msg='Submitted place not found in database / model'
),
self.assertNotEqual(
None,
re.search(
""".*%s""" % reverse(
'place_detail', kwargs={'pk': place.id}
),
response.url
)
self.assertEqual(
reverse(
'place_detail', kwargs={'pk': place.id}
),
response.redirect_chain[-1][0]
)
self.assertMessage(
response,
_('Successfully created place'),
'success',
msg='Expecting a visible success message'
)
def test_positive_image(self):
@ -138,7 +143,7 @@ class TestPlaceCreateView(ViewTestCase):
)
response = self.client.post(
reverse('place_create'),
{
data={
'name': 'test place 894',
'location': 'test location',
'latitude': 45.804192,
@ -147,29 +152,33 @@ class TestPlaceCreateView(ViewTestCase):
Cupiditate harum reprehenderit ipsam iure consequuntur eaque eos reiciendis. Blanditiis vel minima minus repudiandae voluptate aut quia sed. Provident ex omnis illo molestiae. Ullam eos et est provident enim deserunt.
""",
'filename': [image]
}
},
follow=True
)
self.assertHttpRedirect(response)
self.assertHttpOK(response)
place = Place.objects.get(name='test place 894')
self.assertNotEqual(
None,
place,
msg='Submitted place not found in database / model'
),
self.assertNotEqual(
None,
re.search(
""".*%s""" % reverse(
'place_detail', kwargs={'pk': place.id}
),
response.url
)
self.assertEqual(
reverse(
'place_detail', kwargs={'pk': place.id}
),
response.redirect_chain[-1][0]
)
self.assertEqual(
len(place.placeimages.all()),
1,
msg='Expecting the place to have exactly 1 place image'
)
self.assertMessage(
response,
_('Successfully created place'),
'success',
msg='Expecting a visible success message'
)
def test_negative_no_name(self):
self.client.login(username='testpeter', password='Develop123')
@ -190,6 +199,12 @@ class TestPlaceCreateView(ViewTestCase):
0,
msg='Expecting no place to be created'
)
self.assertMessage(
response,
_('Please fill in all required fields.'),
'error',
msg='Expecing a visible error message'
)
def test_negative_no_location(self):
self.client.login(username='testpeter', password='Develop123')
@ -210,6 +225,12 @@ class TestPlaceCreateView(ViewTestCase):
0,
msg='Expecting no place to be created'
)
self.assertMessage(
response,
_('Please fill in all required fields.'),
'error',
msg='Expecing a visible error message'
)
def test_negative_no_latitude(self):
self.client.login(username='testpeter', password='Develop123')
@ -230,6 +251,12 @@ class TestPlaceCreateView(ViewTestCase):
0,
msg='Expecting no place to be created'
)
self.assertMessage(
response,
_('Please fill in all required fields.'),
'error',
msg='Expecing a visible error message'
)
def test_negative_no_longitude(self):
self.client.login(username='testpeter', password='Develop123')
@ -250,6 +277,12 @@ class TestPlaceCreateView(ViewTestCase):
0,
msg='Expecting no place to be created'
)
self.assertMessage(
response,
_('Please fill in all required fields.'),
'error',
msg='Expecing a visible error message'
)
class PlaceDetailViewTestCase(TaggableViewTestCaseMixin, MapableViewTestCaseMixin, ViewTestCase):
view = PlaceDetailView
@ -273,6 +306,19 @@ class PlaceDetailViewTestCase(TaggableViewTestCaseMixin, MapableViewTestCaseMixi
place.tags.add('I a tag', 'testlocation')
place.save()
def test_not_authenticated(self):
response = self.client.get(reverse('place_detail', kwargs={'pk': 1}))
self.assertHttpRedirect(response)
self.assertEqual(
'%s?next=%s' % (
reverse('login'),
reverse('place_detail', kwargs={'pk': 1})
),
response.url,
msg='Expecting unauthenticated user to be redirected to login page, using the \'next\' GET-Param to store the places details page'
)
def test_context(self):
self.client.login(username='testpeter', password='Develop123')
response = self.client.get(reverse('place_detail', kwargs={'pk': 1}))

View File

@ -50,7 +50,7 @@ class PlaceDetailView(IsAuthenticatedMixin, View):
'all_tags': Tag.objects.all(),
'submit_form': TagSubmitForm(),
'tagged_item': place,
'submit_url_name': 'place_tag_submit',
'submit_url': reverse('place_tag_submit', kwargs={'tagged_id': place.id}),
'delete_url_name': 'place_tag_delete'
}
}