Example #1
0
    def test_no_integer_pk(self):
        """Ensure we fail with 404 when person PK is string, not integer."""
        tests = [
            (self.factory.get('/'), 'alpha'),
            (self.factory.post('/', {'person': 'alpha'}), None),
        ]
        for request, person_id in tests:
            with self.subTest(method=request.method):
                with self.assertRaises(Http404):
                    assign(request, self.event, person_id=person_id)

                # just reset the link, for safety sake
                self.event.assigned_to = None
                self.event.save()
Example #2
0
    def test_no_integer_pk(self):
        """Ensure we fail with 404 when person PK is string, not integer."""
        tests = [
            (self.factory.get('/'), 'alpha'),
            (self.factory.post('/', {'person': 'alpha'}), None),
        ]
        for request, person_id in tests:
            with self.subTest(method=request.method):
                with self.assertRaises(Http404):
                    assign(request, self.event, person_id=person_id)

                # just reset the link, for safety sake
                self.event.assigned_to = None
                self.event.save()
Example #3
0
    def test_assigning(self):
        """Ensure that with assignment is set correctly."""
        first_person = Person.objects.first()
        tests = [
            (self.factory.get('/'), first_person.pk),
            (self.factory.post('/', {'person': first_person.pk}), None),
        ]
        for request, person_id in tests:
            with self.subTest(method=request.method):
                # just reset the link, for safety sake
                self.event.assigned_to = None
                self.event.save()

                assign(request, self.event, person_id=person_id)
                self.event.refresh_from_db()
                self.assertEqual(self.event.assigned_to, first_person)
Example #4
0
    def test_assigning(self):
        """Ensure that with assignment is set correctly."""
        first_person = Person.objects.first()
        tests = [
            (self.factory.get('/'), first_person.pk),
            (self.factory.post('/', {'person': first_person.pk}), None),
        ]
        for request, person_id in tests:
            with self.subTest(method=request.method):
                # just reset the link, for safety sake
                self.event.assigned_to = None
                self.event.save()

                assign(request, self.event, person_id=person_id)
                self.event.refresh_from_db()
                self.assertEqual(self.event.assigned_to, first_person)
Example #5
0
    def test_removing_assignment(self):
        """Ensure that with person_id=None, the assignment is removed."""
        first_person = Person.objects.first()
        tests = [
            (self.factory.get('/'), None),
            (self.factory.post('/'), None),
        ]
        for request, person_id in tests:
            with self.subTest(method=request.method):
                # just re-set the link to first person, for safety sake
                self.event.assigned_to = first_person
                self.event.save()

                assign(request, self.event, person_id=person_id)

                self.event.refresh_from_db()
                self.assertEqual(self.event.assigned_to, None)
Example #6
0
    def test_removing_assignment(self):
        """Ensure that with person_id=None, the assignment is removed."""
        first_person = Person.objects.first()
        tests = [
            (self.factory.get('/'), None),
            (self.factory.post('/'), None),
        ]
        for request, person_id in tests:
            with self.subTest(method=request.method):
                # just re-set the link to first person, for safety sake
                self.event.assigned_to = first_person
                self.event.save()

                assign(request, self.event, person_id=person_id)

                self.event.refresh_from_db()
                self.assertEqual(self.event.assigned_to, None)
Example #7
0
 def get(self, request, *args, **kwargs):
     self.object = self.get_object()
     requested_person_id = self.kwargs.get(self.person_url_kwarg)
     assign(request, self.object, requested_person_id)
     return super().get(request, *args, **kwargs)
Example #8
0
 def get(self, request, *args, **kwargs):
     self.object = self.get_object()
     requested_person_id = self.kwargs.get(self.person_url_kwarg)
     assign(request, self.object, requested_person_id)
     return super().get(request, *args, **kwargs)