def test_refunded_possible(self): user = UserFactory() info_user = UserFactory(username="******") ticket_type = TicketTypeFactory(single_ticket_per_product=False) product = ProductFactory(ticket_type=ticket_type) order = OrderFactory(user=user) opr = OrderProductRelationFactory(order=order, product=product, quantity=5) opr.create_tickets() # Quantity is 5, we should be able to refund 5 self.assertEqual(opr.possible_refund, 5) # Mark a ticket as used ticket1 = opr.shoptickets.first() ticket1.mark_as_used(pos=PosFactory(), user=UserFactory()) # Quantity is 5, but 1 is used, so we should be able to refund 4 self.assertEqual(opr.possible_refund, 4) refund = order.create_refund(created_by=info_user) # Refund 1 ticket opr.create_rpr(refund=refund, quantity=1) opr.save() # Quantity is 4, but 1 is used and 1 is refunded, so we should be able to refund 4 self.assertEqual(opr.possible_refund, 3)
def setUp(self): self.user = UserFactory() self.info_user = UserFactory(username="******") self.order = OrderFactory(user=self.user) self.opr1 = OrderProductRelationFactory(order=self.order, quantity=5) self.opr2 = OrderProductRelationFactory(order=self.order, quantity=1) self.opr3 = OrderProductRelationFactory(order=self.order, quantity=10) self.order.mark_as_paid()
def setUp(self): book = factories.BookFactory.create() user = UserFactory.create(username='******') bookowner = factories.BookOwnerFactory.create(user=user, book=book) contact = factories.ContactFactory(book=book) request_factory = RequestFactory() request = request_factory.get(contact.get_absolute_url()) request.user = UserFactory.create() self.response = views.contact_views.ContactListView.as_view()(request)
def setUp(self): book = factories.BookFactory.create() user = UserFactory.create(username='******') bookowner = factories.BookOwnerFactory.create(user=user,book=book) contact = factories.ContactFactory(book=book) request_factory = RequestFactory() request = request_factory.get(contact.get_absolute_url()) request.user = UserFactory.create() self.response = views.contact_views.ContactListView.as_view()(request)
def test_refunded_cannot_be_larger_than_quantity(self): """OrderProductRelation with refunded > quantity should raise an IntegrityError.""" user = UserFactory() info_user = UserFactory(username="******") ticket_type = TicketTypeFactory(single_ticket_per_product=False) product = ProductFactory(ticket_type=ticket_type) order = OrderFactory(user=user) opr = OrderProductRelationFactory(order=order, product=product, quantity=5) refund = order.create_refund(created_by=info_user) with self.assertRaises(ValidationError): opr.create_rpr(refund=refund, quantity=6)
def setUp(self): self.user = UserFactory() self.order = OrderFactory(user=self.user) # Add order OrderProductRelationFactory(order=self.order) self.path = reverse("shop:order_review_and_pay", kwargs={"pk": self.order.pk})
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, )
def setUp(self): self.mutation = '''mutation CreateGroupMember($input: GroupMemberCreateInputType!){ createGroupmember(groupmember: $input){ errors { field messages } groupmember { id member{ id username } group{ id title } } ok } }''' self.input = { "member": UserFactory.create().id, "group": UserGroupFactory.create().id, }
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())
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) self.log = factories.LogFactory.create(contact=self.contact) self.request_factory = RequestFactory()
def test_tag_create_view_bad_book(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) view = views.TagListCreateAPIView.as_view() response = view(request) response.render() self.assertEqual(response.status_code, 401)
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) self.tag = factories.TagFactory.create(tag='Test', book=book) self.contact.tags.add(self.tag) self.request_factory = RequestFactory()
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'), )
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, )
def test_tag_list_view_wrong_user_for_book(self): tag = factories.TagFactory.create(book=self.book) request = self.factory.get('/api/tags/', format='json') user = UserFactory.create(username='******') force_authenticate(request, user=user) response = views.TagListCreateAPIView.as_view()(request) response.render() self.assertEqual(response.status_code, 200) self.assertEqual(len(response.data), 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}), )
def test_single_ticket_created(self): user = UserFactory() ticket_type = TicketTypeFactory(single_ticket_per_product=True) product = ProductFactory(ticket_type=ticket_type) order = OrderFactory(user=user) OrderProductRelationFactory(order=order, product=product, quantity=5) order.mark_as_paid() self.assertEquals( ShopTicket.objects.filter(product=product, order=order).count(), 1)
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() with self.assertRaises(PermissionDenied): views.log_views.DeleteLogView.as_view()( self.request, pk=self.log.pk, )
def test_add_youtube_video(self): vt = YoutubeVideoType('http://www.youtube.com/watch?v=_ShmidkrcY0') vt_2 = YoutubeVideoType('http://www.youtube.com/watch?v=_ShmidkrcY0we') vt_3 = YoutubeVideoType('http://www.youtube.com/watch?v=_ShmidkrcY0ewgwe') user = UserFactory() video, video_url = Video.add(vt, user) with assert_raises(Video.UrlAlreadyAdded): video_2, video_url_2 = Video.add(vt_2, user) with assert_raises(Video.UrlAlreadyAdded): video_3, video_url_3 = Video.add(vt_3, user)
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() with self.assertRaises(Http404): views.contact_views.TaggedContactListView.as_view()( request, pk=self.tag.pk, )
def test_log_edit_view_401_if_right_user(self): self.request = self.request_factory.get( reverse('log-edit', kwargs={'pk': self.log.id}) ) self.request.user = UserFactory.create() with self.assertRaises(PermissionDenied): views.log_views.EditLogView.as_view()( self.request, pk=self.log.pk, )
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)
def setUp(self): self.user = UserFactory.create() self.data = { "description": "for the test", "date": "2020-10-10", "start_time": "10:10:19", "end_time": "12:10:10", "task": TaskFactory(), "user": self.user }
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)
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)
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)
def setUp(self): self.user = UserFactory() self.order = OrderFactory(user=self.user) self.path = reverse("shop:order_detail", kwargs={"pk": self.order.pk}) # We are using a formset which means we have to include some "management form" data. self.base_form_data = { "form-TOTAL_FORMS": "1", "form-INITIAL_FORMS": "1", "form-MAX_NUM_FORMS": "", }
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)
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)
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)
def test_contact_list_view_contains_only_what_it_should(self): book = factories.BookFactory.create() user = UserFactory.create(username='******') factories.BookOwnerFactory.create(book=book, user=user) good_contact = factories.ContactFactory.create(book=book) bad_contact = factories.ContactFactory.create() good_tag = factories.TagFactory.create(book=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 response = views.contact_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, )
def setUp(self): self.mutation = ''' mutation DeleteGroupMember($group: ID!, $member: ID!){ deleteGroupmember(group: $group, member: $member){ errors { field messages } ok groupmember{ member{ id username email } } } }''' self.variables = { "member": UserFactory.create().id, "group": UserGroupFactory.create().id, }
def setUp(self): request_factory = RequestFactory() request = request_factory.get(reverse('contacts-list')) request.user = UserFactory.create() self.response = views.contact_views.ContactListView.as_view()(request)
def test_log_cant_be_viewed_by_bad(self): user = UserFactory.create(username='******') self.assertFalse(self.log.can_be_viewed_by(user))
def test_order_list_view_as_logged_in(self): user = UserFactory() self.client.force_login(user) path = reverse("shop:order_list") response = self.client.get(path) self.assertEquals(response.status_code, 200)
def setUp(self): self.user = UserFactory() self.product = ProductFactory() self.path = reverse("shop:product_detail", kwargs={"slug": self.product.slug})
def test_review_user_view_200(self): user = UserFactory.create() user.is_staff = True self.request.user = user response = ReviewUserView.as_view()(self.request) response.render()
def test_contact_cant_be_edited_by_bad(self): user = UserFactory.create(username='******') self.assertFalse(self.contact.can_be_edited_by(user))
def test_review_user_view_200(self): user = UserFactory.create() user.is_staff = True self.request.user = user response = ReviewUserView.as_view()(self.request) self.assertEqual(response.status_code, 200)
def test_get_contacts_for_user_bad_user(self): user = UserFactory.create(username="******") self.assertFalse( list(models.Contact.objects.get_contacts_for_user(user)), )
def setUp(self): request_factory = RequestFactory() request = request_factory.get(reverse('profile')) request.user = UserFactory.create() self.response = ProfileView.as_view()(request)
def test_review_user_view_not_staff(self): user = UserFactory.create() self.request.user = user response = ReviewUserView.as_view()(self.request) self.assertEqual(response.status_code, 302)