Example #1
0
 def test_contact_detail_view_404_wrong_user(self):
     self.request.user = UserFactory.create()
     with self.assertRaises(Http404):
         views.contact_views.ContactView.as_view()(
             self.request,
             pk=self.contact.pk,
         )
Example #2
0
    def setUp(self):
        self.user = UserFactory()
        self.client = APIClient()
        self.client.credentials(HTTP_AUTHORIZATION=f'Token {self.user.auth_token}')

        self.game = OriginalGameFactory(title="Terraforming Mars")
        self.user_game = GameFactory(game=self.game, user=self.user)
Example #3
0
 def setUp(self):
     self.book = factories.BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = factories.BookOwnerFactory.create(user=self.user,
                                                   book=self.book)
     self.contact = factories.ContactFactory.create(book=self.book)
     self.request_factory = RequestFactory()
def handle(command):
    UserFactory(
        name='Administrator',
        username='******',
        email='*****@*****.**',
        is_admin=True
    )
Example #5
0
 def setUp(self):
     self.book = factories.BookFactory.create()
     request_factory = RequestFactory()
     request = request_factory.get(reverse('contacts-list'))
     request.user = UserFactory.create()
     request.current_book = self.book
     self.response = views.contact_list_views.ContactListView.as_view()(
         request)
Example #6
0
 def setUp(self):
     self.factory = APIRequestFactory()
     self.book = factories.BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = factories.BookOwnerFactory.create(
         book=self.book,
         user=self.user,
     )
Example #7
0
 def test_review_user_view_not_staff(self):
     user = UserFactory.create()
     book = BookFactory.create()
     bookowner = BookOwnerFactory.create(user=user,book=book)
     self.request.user = user
     self.request.current_book = book
     response = ReviewUserView.as_view()(self.request)
     self.assertEqual(response.status_code, 302)
Example #8
0
 def setUp(self):
     book = factories.BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = factories.BookOwnerFactory.create(user=self.user,
                                                   book=book)
     request_factory = RequestFactory()
     self.request = request_factory.get(reverse('contacts-new'), )
     self.request.current_book = book
Example #9
0
 def test_for_user(self):
     book = factories.BookFactory.create()
     user = UserFactory.create()
     contact = factories.ContactFactory.create(book=book)
     bookowner = factories.BookOwnerFactory.create(user=user, book=book)
     contactField1 = factories.ContactFieldFactory.create(contact=contact)
     contactField2 = factories.ContactFieldFactory.create()
     fields = models.ContactField.objects.for_user(user=user)
     self.assertEqual(1, len(fields))
Example #10
0
 def test_review_user_view_renders(self):
     user = UserFactory.create()
     user.is_staff = True
     book = BookFactory.create()
     bookowner = BookOwnerFactory.create(user=user,book=book)
     self.request.user = user
     self.request.current_book = book
     response = ReviewUserView.as_view()(self.request)
     response.render()
Example #11
0
 def setUp(self):
     book = BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = BookOwnerFactory.create(user=self.user,book=book)
     request_factory = RequestFactory()
     request = request_factory.get(reverse('profile'))
     request.user = self.user
     request.current_book = book
     self.response = ProfileView.as_view()(request)
Example #12
0
 def setUp(self):
     book = factories.BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = factories.BookOwnerFactory.create(user=self.user,
                                                   book=book)
     self.contact = factories.ContactFactory.create(book=book)
     request_factory = RequestFactory()
     self.request = request_factory.get(self.contact.get_absolute_url())
     self.request.current_book = book
Example #13
0
 def test_contact_list_view_wrong_user_for_book(self):
     contact = factories.ContactFactory.create(book=self.book)
     request = self.factory.get('/api/contacts/', format='json')
     user = UserFactory.create(username='******')
     force_authenticate(request, user=user)
     response = views.ContactListCreateAPIView.as_view()(request)
     response.render()
     self.assertEqual(response.status_code, 200)
     self.assertEqual(len(response.data), 0)
Example #14
0
    def setUp(self):
        self.user = UserFactory()
        self.client = APIClient()
        self.client.credentials(HTTP_AUTHORIZATION=f'Token {self.user.auth_token}')

        this_dir, _ = os.path.split(__file__)
        with open(os.path.join(this_dir, f'test_data/bgg_response_terraforming_mars.xml'), 'r',
                  encoding="utf-8") as xml_file:
            self.xml_data = xml_file.read()
Example #15
0
 def setUp(self):
     book = factories.BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = factories.BookOwnerFactory.create(user=self.user,
                                                   book=book)
     self.contact = factories.ContactFactory.create(book=book)
     request_factory = RequestFactory()
     self.request = request_factory.get(
         reverse('contacts-edit', kwargs={'pk': self.contact.id}), )
     self.request.current_book = book
Example #16
0
 def setUp(self):
     self.book = factories.BookFactory.create(name="James Family")
     self.user = UserFactory(username="******")
     self.bookowner = factories.BookOwnerFactory(book=self.book, user=self.user)
     self.contact = factories.ContactFactory.create(
         name="Philip James",
         book=self.book,
     )
     self.log = factories.LogFactory.create(contact=self.contact)
     self.contact.update_last_contact_from_log(self.log)
Example #17
0
 def test_log_list_view_wrong_user_for_book(self):
     request = self.factory.get(self.url, format='json')
     user = UserFactory.create(username='******')
     force_authenticate(request, user=user)
     response = views.LogListCreateAPIView.as_view()(
         request,
         pk=self.contact.id,
     )
     response.render()
     self.assertEqual(response.status_code, 404)
Example #18
0
 def test_tagged_list_view_401_if_wrong_user(self):
     request = self.request_factory.get(
         reverse('contacts-tagged', kwargs={'pk': self.tag.id}))
     request.user = UserFactory.create()
     request.current_book = self.book
     with self.assertRaises(Http404):
         views.contact_list_views.TaggedContactListView.as_view()(
             request,
             pk=self.tag.pk,
         )
Example #19
0
 def test_log_delete_view_401_if_wrong_user(self):
     self.request = self.request_factory.get(
         reverse('log-delete', kwargs={'pk': self.log.id}))
     self.request.user = UserFactory.create()
     self.request.current_book = self.book
     with self.assertRaises(PermissionDenied):
         views.log_views.DeleteLogView.as_view()(
             self.request,
             pk=self.log.pk,
         )
Example #20
0
 def setUp(self):
     self.factory = APIRequestFactory()
     self.book = factories.BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = factories.BookOwnerFactory.create(
         book=self.book,
         user=self.user,
     )
     self.contact = factories.ContactFactory(book=self.book)
     self.url = '/api/contacts/{}/tags/'.format(self.contact.id)
     self.log = factories.LogFactory.create(contact=self.contact)
Example #21
0
 def setUp(self):
     self.book = factories.BookFactory.create()
     self.user = UserFactory.create(username='******')
     bookowner = factories.BookOwnerFactory.create(user=self.user,
                                                   book=self.book)
     request_factory = RequestFactory()
     self.request = request_factory.get(
         reverse('book_settings', kwargs={'book': self.book.id}), )
     self.request.current_book = self.book
     setattr(self.request, 'session', 'session')
     messages = FallbackStorage(self.request)
     setattr(self.request, '_messages', messages)
Example #22
0
 def test_tag_create_view_wrong_book_for_user(self):
     request = self.factory.post(
         '/api/tags/',
         {
             'tag': 'Test tag',
             'book': str(self.book.id)
         },
         format='json',
     )
     user = UserFactory.create(username='******')
     force_authenticate(request, user=user)
     response = views.TagListCreateAPIView.as_view()(request)
     response.render()
     self.assertEqual(response.status_code, 401)
Example #23
0
 def test_log_edit_view_401_if_right_user(self):
     self.request = self.request_factory.get(
         reverse('log-edit',
                 kwargs={
                     'pk': self.log.id,
                     'book': self.book.id
                 }))
     self.request.user = UserFactory.create()
     self.request.current_book = self.book
     with self.assertRaises(PermissionDenied):
         views.log_views.EditLogView.as_view()(
             self.request,
             pk=self.log.pk,
         )
Example #24
0
 def test_log_create_view_wrong_book_for_user(self):
     request = self.factory.post(
         '/api/contacts/',
         {'contact': str(self.contact.id)},
         format='json',
     )
     user = UserFactory.create(username='******')
     force_authenticate(request, user=user)
     response = views.LogListCreateAPIView.as_view()(
         request,
         pk=self.contact.id,
     )
     response.render()
     self.assertEqual(response.status_code, 404)
Example #25
0
 def test_contact_detail_raises_404_if_wrong_user(self):
     contact = factories.ContactFactory.create(book=self.book)
     request = self.factory.get(
         '/api/contacts/{}'.format(contact.pk),
         format='json',
     )
     user = UserFactory.create(username="******")
     force_authenticate(request, user=user)
     response = views.ContactDetailEditAPIView.as_view()(
         request,
         pk=contact.id,
     )
     response.render()
     self.assertEqual(response.status_code, 404)
Example #26
0
 def test_contact_create_view_wrong_book_for_user(self):
     request = self.factory.post(
         '/api/contacts/',
         {
             'name': 'Philip',
             'book': str(self.book.id)
         },
         format='json',
     )
     user = UserFactory.create(username='******')
     force_authenticate(request, user=user)
     response = views.ContactListCreateAPIView.as_view()(request)
     response.render()
     self.assertEqual(response.status_code, 401)
Example #27
0
 def test_contact_list_view_contains_only_what_it_should(self):
     user = UserFactory.create(username='******')
     factories.BookOwnerFactory.create(book=self.book, user=user)
     good_contact = factories.ContactFactory.create(book=self.book)
     bad_contact = factories.ContactFactory.create()
     good_tag = factories.TagFactory.create(book=self.book)
     bad_tag = factories.TagFactory.create()
     good_contact.tags.add(good_tag)
     request_factory = RequestFactory()
     request = request_factory.get(reverse('contacts-list'))
     request.user = user
     request.current_book = self.book
     response = views.contact_list_views.ContactListView.as_view()(request)
     self.assertEqual(len(response.context_data.get('tags')), 1)
     self.assertEqual(len(response.context_data.get('contact_list')), 1)
     self.assertEqual(response.context_data.get('tags')[0], good_tag)
     self.assertEqual(
         response.context_data.get('contact_list')[0],
         good_contact,
     )
Example #28
0
 def setUp(self):
     self.book = factories.BookFactory.create()
     self.user = UserFactory.create(email='*****@*****.**')
     factories.BookOwnerFactory.create(user=self.user, book=self.book)
     self.contact = factories.ContactFactory.create(
         name="Philip James",
         book=self.book,
     )
     factories.ContactFieldFactory.create(
         contact=self.contact,
         kind='email',
         value='*****@*****.**',
         label='email',
     )
     # Creating this twice because there was a bug
     factories.ContactFieldFactory.create(
         contact=self.contact,
         kind='email',
         value='*****@*****.**',
         label='email',
     )
Example #29
0
 def test_get_contacts_for_user_bad_user(self):
     user = UserFactory.create(username="******")
     self.assertFalse(
         list(models.Contact.objects.get_contacts_for_user(user)),
     )
Example #30
0
 def test_contact_cant_be_edited_by_bad(self):
     user = UserFactory.create(username='******')
     self.assertFalse(self.contact.can_be_edited_by(user))