P5-4105 update package price calculations
This commit is contained in:
+4
-6
@@ -81,14 +81,12 @@ def canvas_cm2_price(cm2):
|
|||||||
|
|
||||||
|
|
||||||
def package_price(product_group, width, height, market):
|
def package_price(product_group, width, height, market):
|
||||||
if market.territory in ['US', 'EU']:
|
if market.territory == 'US':
|
||||||
if product_group == 'canvas' and max(width, height) > 119:
|
if product_group in ['canvas', 'poster']:
|
||||||
return 100
|
|
||||||
elif product_group == 'poster':
|
|
||||||
if width > 110:
|
if width > 110:
|
||||||
return 400
|
return 150
|
||||||
else:
|
else:
|
||||||
return 250
|
return 100
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+12
-16
@@ -139,7 +139,7 @@ class TestPrice(unittest2.TestCase):
|
|||||||
self.assertEqual(1800, canvas_price(width=150, height=150,
|
self.assertEqual(1800, canvas_price(width=150, height=150,
|
||||||
market=sweden, framed=True, inc_vat=True))
|
market=sweden, framed=True, inc_vat=True))
|
||||||
|
|
||||||
self.assertEqual(195, canvas_price(width=150, height=150,
|
self.assertEqual(201, canvas_price(width=150, height=150,
|
||||||
market=us, framed=True, inc_vat=True))
|
market=us, framed=True, inc_vat=True))
|
||||||
|
|
||||||
self.assertEqual(672, canvas_price(
|
self.assertEqual(672, canvas_price(
|
||||||
@@ -151,10 +151,8 @@ class TestPrice(unittest2.TestCase):
|
|||||||
self.assertEqual(462, canvas_price(width=50, height=50,
|
self.assertEqual(462, canvas_price(width=50, height=50,
|
||||||
market=denmark, framed=True, inc_vat=False))
|
market=denmark, framed=True, inc_vat=False))
|
||||||
|
|
||||||
self.assertEqual(174, canvas_price(width=150, height=100, market=us, designer=designer_moomin, inc_vat=False))
|
self.assertEqual(180, canvas_price(width=150, height=100, market=us, designer=designer_moomin, inc_vat=False))
|
||||||
self.assertEqual(174, canvas_price(width=150, height=100, market=us, designer=designer_moomin, inc_vat=True))
|
self.assertEqual(180, canvas_price(width=150, height=100, market=us, designer=designer_moomin, inc_vat=True))
|
||||||
self.assertEqual(154, canvas_price(width=150, height=100, market=eu, designer=designer_moomin, inc_vat=False))
|
|
||||||
self.assertEqual(192, canvas_price(width=150, height=100, market=eu, designer=designer_moomin, inc_vat=True))
|
|
||||||
|
|
||||||
def test_canvas_frame_price(self):
|
def test_canvas_frame_price(self):
|
||||||
self.assertEqual(624, canvas_frame_price(
|
self.assertEqual(624, canvas_frame_price(
|
||||||
@@ -171,7 +169,7 @@ class TestPrice(unittest2.TestCase):
|
|||||||
width=40, height=40, market=sweden, inc_vat=True))
|
width=40, height=40, market=sweden, inc_vat=True))
|
||||||
self.assertEqual(71, canvas_frame_price(
|
self.assertEqual(71, canvas_frame_price(
|
||||||
width=40, height=120, market=us))
|
width=40, height=120, market=us))
|
||||||
self.assertEqual(54, canvas_frame_price(
|
self.assertEqual(66, canvas_frame_price(
|
||||||
width=40, height=100, market=us))
|
width=40, height=100, market=us))
|
||||||
self.assertEqual(578, canvas_frame_price(
|
self.assertEqual(578, canvas_frame_price(
|
||||||
width=40, height=120, market=sweden))
|
width=40, height=120, market=sweden))
|
||||||
@@ -260,10 +258,10 @@ class TestPrice(unittest2.TestCase):
|
|||||||
self.assertEqual(91, inquiry_price(inquiry, framed=False))
|
self.assertEqual(91, inquiry_price(inquiry, framed=False))
|
||||||
|
|
||||||
def test_package_price(self):
|
def test_package_price(self):
|
||||||
self.assertEqual(100, package_price('canvas', 150, 40, market=us))
|
self.assertEqual(150, package_price('canvas', 150, 40, market=us))
|
||||||
self.assertEqual(0, package_price('canvas', 150, 40, market=sweden))
|
self.assertEqual(0, package_price('canvas', 150, 40, market=sweden))
|
||||||
self.assertEqual(400, package_price('poster', 150, 40, market=us))
|
self.assertEqual(150, package_price('poster', 150, 40, market=us))
|
||||||
self.assertEqual(250, package_price('poster', 40, 40, market=us))
|
self.assertEqual(100, package_price('poster', 40, 40, market=us))
|
||||||
self.assertEqual(0, package_price('poster', 150, 40, market=sweden))
|
self.assertEqual(0, package_price('poster', 150, 40, market=sweden))
|
||||||
|
|
||||||
def test_poster_cm2_price(self):
|
def test_poster_cm2_price(self):
|
||||||
@@ -276,17 +274,15 @@ class TestPrice(unittest2.TestCase):
|
|||||||
def test_poster_price(self):
|
def test_poster_price(self):
|
||||||
self.assertEqual(354, poster_price(width=30, height=40, hanger=True, market=sweden))
|
self.assertEqual(354, poster_price(width=30, height=40, hanger=True, market=sweden))
|
||||||
self.assertEqual(250, poster_price(width=30, height=40, hanger=False, market=sweden))
|
self.assertEqual(250, poster_price(width=30, height=40, hanger=False, market=sweden))
|
||||||
self.assertEqual(66, poster_price(width=30, height=40, hanger=True, market=us), 'extra cost for us market')
|
self.assertEqual(48, poster_price(width=30, height=40, hanger=True, market=us), 'extra cost for us market')
|
||||||
self.assertEqual(71, poster_price(width=30, height=40, hanger=True, market=eu), 'extra cost for eu market')
|
self.assertEqual(76, poster_price(width=120, height=40, market=us), 'high extra cost for us market wide posters')
|
||||||
self.assertEqual(106, poster_price(width=120, height=40, market=us), 'high extra cost for us market wide posters')
|
self.assertEqual(77, poster_price(width=120, height=40, market=us, designer=designer_moomin))
|
||||||
self.assertEqual(114, poster_price(width=120, height=40, market=eu), 'high extra cost for eu market wide posters')
|
|
||||||
self.assertEqual(107, poster_price(width=120, height=40, market=us, designer=designer_moomin))
|
|
||||||
|
|
||||||
def test_poster_hanger_price(self):
|
def test_poster_hanger_price(self):
|
||||||
self.assertEqual(166, poster_hanger_price(30, market=sweden))
|
self.assertEqual(166, poster_hanger_price(30, market=sweden))
|
||||||
self.assertEqual(390, poster_hanger_price(150, market=sweden))
|
self.assertEqual(390, poster_hanger_price(150, market=sweden))
|
||||||
self.assertEqual(47, poster_hanger_price(30, market=us))
|
self.assertEqual(29, poster_hanger_price(30, market=us))
|
||||||
self.assertEqual(88, poster_hanger_price(150, market=us))
|
self.assertEqual(58, poster_hanger_price(150, market=us))
|
||||||
|
|
||||||
def test_poster_custom_inquiry_price(self):
|
def test_poster_custom_inquiry_price(self):
|
||||||
with mock.patch.object(Inquiry, 'market', sweden):
|
with mock.patch.object(Inquiry, 'market', sweden):
|
||||||
|
|||||||
Reference in New Issue
Block a user