本文整理汇总了Python中oscar.apps.shipping.Scales类的典型用法代码示例。如果您正苦于以下问题:Python Scales类的具体用法?Python Scales怎么用?Python Scales使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Scales类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_weight_calculation_of_basket_with_line_quantity
def test_weight_calculation_of_basket_with_line_quantity(self):
basket = Basket()
basket.add_product(create_product(attributes={"weight": 1}), quantity=3)
basket.add_product(create_product(attributes={"weight": 2}), quantity=4)
scales = Scales(attribute_code="weight")
self.assertEquals(1 * 3 + 2 * 4, scales.weigh_basket(basket))
示例2: test_weight_calculation_of_basket
def test_weight_calculation_of_basket(self):
basket = Basket()
basket.add_product(create_product(attributes={'weight': 1}))
basket.add_product(create_product(attributes={'weight': 2}))
scales = Scales(attribute_code='weight')
self.assertEquals(1+2, scales.weigh_basket(basket))
示例3: charge_incl_tax
def charge_incl_tax(self):
scales = Scales(attribute_code=self.weight_attribute, default_weight=self.default_weight)
weight = scales.weigh_basket(self._basket)
band = self.get_band_for_weight(weight)
if not band:
if self.bands.all().exists() and self.upper_charge:
return self.upper_charge
else:
return D("0.00")
return band.charge
示例4: test_returns_correct_weight_for_nonempty_basket_with_line_quantities
def test_returns_correct_weight_for_nonempty_basket_with_line_quantities(self):
basket = factories.create_basket(empty=True)
products = [
(factories.create_product(attributes={'weight': '1'},
price=D('5.00')), 3),
(factories.create_product(attributes={'weight': '2'},
price=D('5.00')), 4)]
for product, quantity in products:
basket.add(product, quantity=quantity)
scales = Scales(attribute_code='weight')
self.assertEqual(1*3 + 2*4, scales.weigh_basket(basket))
示例5: test_returns_correct_weight_for_nonempty_basket
def test_returns_correct_weight_for_nonempty_basket(self):
basket = factories.create_basket(empty=True)
products = [
factories.create_product(attributes={'weight': '1'},
price=D('5.00')),
factories.create_product(attributes={'weight': '2'},
price=D('5.00'))]
for product in products:
basket.add(product)
scales = Scales(attribute_code='weight')
self.assertEqual(1 + 2, scales.weigh_basket(basket))
示例6: charge_incl_tax
def charge_incl_tax(self):
# Note, when weighing the basket, we don't check whether the item
# requires shipping or not. It is assumed that if something has a
# weight, then it requires shipping.
scales = Scales(attribute_code=self.weight_attribute,
default_weight=self.default_weight)
weight = scales.weigh_basket(self._basket)
band = self.get_band_for_weight(weight)
if not band:
if self.bands.all().exists() and self.upper_charge:
return self.upper_charge
else:
return D('0.00')
return band.charge
示例7: test_returns_zero_for_empty_basket
def test_returns_zero_for_empty_basket(self):
basket = Basket()
scales = Scales(attribute_code='weight')
self.assertEqual(0, scales.weigh_basket(basket))
示例8: test_raises_exception_when_attribute_is_missing
def test_raises_exception_when_attribute_is_missing(self):
scales = Scales(attribute_code='weight')
p = factories.create_product()
with self.assertRaises(ValueError):
scales.weigh_product(p)
示例9: test_uses_default_weight_when_attribute_is_missing
def test_uses_default_weight_when_attribute_is_missing(self):
scales = Scales(attribute_code='weight', default_weight=0.5)
p = factories.create_product()
self.assertEqual(0.5, scales.weigh_product(p))
示例10: test_weighs_uses_specified_attribute
def test_weighs_uses_specified_attribute(self):
scales = Scales(attribute_code='weight')
p = factories.create_product(attributes={'weight': '1'})
self.assertEqual(1, scales.weigh_product(p))
示例11: test_weight_calculation_of_empty_basket
def test_weight_calculation_of_empty_basket(self):
basket = Basket()
scales = Scales(attribute_code='weight')
self.assertEquals(0, scales.weigh_basket(basket))
示例12: test_simple_weight_calculation
def test_simple_weight_calculation(self):
scales = Scales(attribute_code='weight')
p = create_product(attributes={'weight': 1})
self.assertEqual(1, scales.weigh_product(p))
示例13: test_exception_is_raised_when_attribute_is_missing
def test_exception_is_raised_when_attribute_is_missing(self):
scales = Scales(attribute_code="weight")
p = create_product()
with self.assertRaises(ValueError):
scales.weigh_product(p)
示例14: test_default_weight_is_used_when_attribute_is_missing
def test_default_weight_is_used_when_attribute_is_missing(self):
scales = Scales(attribute_code="weight", default_weight=0.5)
p = create_product()
self.assertEqual(0.5, scales.weigh_product(p))