Example #1
0
    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)
Example #2
0
 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()
Example #3
0
 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)
Example #4
0
 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)
Example #5
0
 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)
Example #6
0
 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})
Example #7
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 #8
0
    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,
        }
Example #9
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())
Example #10
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)
     self.log = factories.LogFactory.create(contact=self.contact)
     self.request_factory = RequestFactory()
Example #11
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())
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)
     self.log = factories.LogFactory.create(contact=self.contact)
     self.request_factory = RequestFactory()
Example #13
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 #14
0
 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)
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)
     self.tag = factories.TagFactory.create(tag='Test', book=book)
     self.contact.tags.add(self.tag)
     self.request_factory = RequestFactory()
Example #16
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'),
     )
Example #17
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)
     self.tag = factories.TagFactory.create(tag='Test', book=book)
     self.contact.tags.add(self.tag)
     self.request_factory = RequestFactory()
Example #18
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 #19
0
 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)
Example #20
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}),
     )
Example #21
0
 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)
Example #22
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()
     with self.assertRaises(PermissionDenied):
         views.log_views.DeleteLogView.as_view()(
             self.request,
             pk=self.log.pk,
         )
Example #23
0
 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)
Example #24
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()
     with self.assertRaises(Http404):
         views.contact_views.TaggedContactListView.as_view()(
             request,
             pk=self.tag.pk,
         )
Example #25
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})
     )
     self.request.user = UserFactory.create()
     with self.assertRaises(PermissionDenied):
         views.log_views.EditLogView.as_view()(
             self.request,
             pk=self.log.pk,
         )
Example #26
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)
Example #27
0
 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
     }
Example #28
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 #29
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()
     with self.assertRaises(Http404):
         views.contact_views.TaggedContactListView.as_view()(
             request,
             pk=self.tag.pk,
         )
Example #30
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()
     with self.assertRaises(PermissionDenied):
         views.log_views.DeleteLogView.as_view()(
             self.request,
             pk=self.log.pk,
         )
Example #31
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})
     )
     self.request.user = UserFactory.create()
     with self.assertRaises(PermissionDenied):
         views.log_views.EditLogView.as_view()(
             self.request,
             pk=self.log.pk,
         )
Example #32
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 #33
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 #34
0
    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": "",
        }
Example #35
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 #36
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 #37
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 #38
0
 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,
     )
Example #39
0
 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,
     )
Example #40
0
 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,
     }
Example #41
0
 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)
Example #42
0
 def test_log_cant_be_viewed_by_bad(self):
     user = UserFactory.create(username='******')
     self.assertFalse(self.log.can_be_viewed_by(user))
Example #43
0
 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)
Example #44
0
 def setUp(self):
     self.user = UserFactory()
     self.product = ProductFactory()
     self.path = reverse("shop:product_detail",
                         kwargs={"slug": self.product.slug})
Example #45
0
 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()
Example #46
0
 def test_contact_cant_be_edited_by_bad(self):
     user = UserFactory.create(username='******')
     self.assertFalse(self.contact.can_be_edited_by(user))
Example #47
0
 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)
Example #48
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 #49
0
 def setUp(self):
     request_factory = RequestFactory()
     request = request_factory.get(reverse('profile'))
     request.user = UserFactory.create()
     self.response = ProfileView.as_view()(request)
Example #50
0
 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)