| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- # -*- coding: utf-8 -*-
- from django.test import TestCase
-
- from oscar.apps.basket.models import Basket
- from oscar.apps.partner import strategy
- from oscar.test.factories import (
- BasketFactory, BasketLineAttributeFactory, ProductFactory, OptionFactory)
-
-
- class TestANewBasket(TestCase):
-
- def setUp(self):
- self.basket = Basket()
- self.basket.strategy = strategy.Default()
-
- def test_has_zero_lines(self):
- self.assertEqual(0, self.basket.num_lines)
-
- def test_has_zero_items(self):
- self.assertEqual(0, self.basket.num_items)
-
- def test_doesnt_contain_vouchers(self):
- self.assertFalse(self.basket.contains_a_voucher)
-
- def test_can_be_edited(self):
- self.assertTrue(self.basket.can_be_edited)
-
- def test_is_empty(self):
- self.assertTrue(self.basket.is_empty)
-
- def test_is_not_submitted(self):
- self.assertFalse(self.basket.is_submitted)
-
- def test_has_no_applied_offers(self):
- self.assertEqual({}, self.basket.applied_offers())
-
-
- class TestBasketLine(TestCase):
-
- def test_description(self):
- basket = BasketFactory()
- product = ProductFactory(title="A product")
- basket.add_product(product)
-
- line = basket.lines.first()
- self.assertEqual(line.description, "A product")
-
- def test_description_with_attributes(self):
- basket = BasketFactory()
- product = ProductFactory(title="A product")
- basket.add_product(product)
-
- line = basket.lines.first()
- BasketLineAttributeFactory(
- line=line, value=u'\u2603', option__name='with')
- self.assertEqual(line.description, u"A product (with = '\u2603')")
-
- def test_create_line_reference(self):
- basket = BasketFactory()
- product = ProductFactory(title="A product")
- option = OptionFactory(name="product_option", code="product_option")
- option_product = ProductFactory(title=u'Asunción')
- options = [{'option' : option, 'value': option_product}]
- basket.add_product(product, options = options)
-
-
|