def test_unique_slug(self):
     create_product('Test product unique slug 1', 'test-product-unique-slug-1')
     p1 = Product.objects.get(name='Test product unique slug 1') 
     p1.save()  
     create_product('Test product unique slug 2', 'test-product-unique-slug-1')
     p2 = Product.objects.get(name='Test product unique slug 2')   
     self.assertRaises(IntegrityError, p2.save())
Exemple #2
0
    def test_shop_product_detail_view_url_exists_at_desired_location(self):

        create_product('Test product for detail', 'test-product-for-detail')
        product = Product.objects.get(name='Test product for detail')
        product_id = str(product.id)
        product_slug = str(product.slug)

        resp = self.client.get('/products/' + product_id + '/' + product_slug +
                               '/')
    def test_wishlist_items_del(self):
        user1 = User.objects.create()

        create_product('Test wishlist', 'test-slug')
        product = Product.objects.get(name='Test wishlist')
        product.wishlisted.remove(user1)

        wishlist_items = user1.wishlist_items.all()

        self.assertQuerysetEqual(wishlist_items, [])
Exemple #4
0
    def test_wishlist_view_with_a_past_product(self):
        create_product('Test product for wishlist', 'test')

        product = Product.objects.get(name='Test product for wishlist')

        user1 = User.objects.create()
        product.wishlisted.add(user1)
        wishlist_items = user1.wishlist_items.all()

        self.assertQuerysetEqual(wishlist_items,
                                 ['<Product: Test product for wishlist>'])
Exemple #5
0
    def test_shop_view_with_four_last_products(self):
        for i in range(1, 5):
            create_product('Test product for last ' + str(i), 'test')

        resp = self.client.get(reverse('shop:ProductList'))
        self.assertQuerysetEqual(resp.context['products'], [
            '<Product: Test product for last 4>',
            '<Product: Test product for last 3>',
            '<Product: Test product for last 2>',
            '<Product: Test product for last 1>'
        ])
    def test_wishlist_items_add(self):
        user1 = User.objects.create()

        create_product('Test wishlist', 'test-slug')
        product = Product.objects.get(name='Test wishlist')
        product_name = product.name
        product.wishlisted.add(user1)

        wishlist_items = user1.wishlist_items.all()

        self.assertQuerysetEqual(wishlist_items,
                                 ['<Product: ' + product_name + '>'])
Exemple #7
0
    def test_shop_view_with_a_past_product(self):
        create_product('Test product for past 1', 'test')

        resp = self.client.get(reverse('shop:ProductList'))
        self.assertQuerysetEqual(resp.context['products'],
                                 ['<Product: Test product for past 1>'])
 def setUpTestData(cls):
     create_product("Test", 'test')       
 def test_price_with_discount(self):
     create_product('Test product', 'test-product')
     product = Product.objects.get(name='Test product')
     price_with_discount = getattr(product, 'price_with_discount')
     self.assertEquals(price_with_discount, 900)
 def test_get_absolute_url(self):
     create_product('Test product for detail', 'test-product-for-detail')
     product = Product.objects.get(name='Test product for detail')
     product_id = str(product.id)
     product_slug = str(product.slug)
     self.assertEquals(product.get_absolute_url(), '/products/' + product_id + '/' + product_slug + '/')