From 462b0783421f482596c5731158642f06e8616ccf Mon Sep 17 00:00:00 2001 From: Martin Date: Thu, 29 Aug 2019 11:49:20 +0200 Subject: [PATCH] P5-4105 update package price calculations --- api/lib/prices.py | 10 ++++------ tests/lib/test_prices.py | 28 ++++++++++++---------------- 2 files changed, 16 insertions(+), 22 deletions(-) diff --git a/api/lib/prices.py b/api/lib/prices.py index ef49b48..4ad449f 100644 --- a/api/lib/prices.py +++ b/api/lib/prices.py @@ -81,14 +81,12 @@ def canvas_cm2_price(cm2): def package_price(product_group, width, height, market): - if market.territory in ['US', 'EU']: - if product_group == 'canvas' and max(width, height) > 119: - return 100 - elif product_group == 'poster': + if market.territory == 'US': + if product_group in ['canvas', 'poster']: if width > 110: - return 400 + return 150 else: - return 250 + return 100 return 0 diff --git a/tests/lib/test_prices.py b/tests/lib/test_prices.py index bfc487d..4b5b790 100644 --- a/tests/lib/test_prices.py +++ b/tests/lib/test_prices.py @@ -139,7 +139,7 @@ class TestPrice(unittest2.TestCase): self.assertEqual(1800, canvas_price(width=150, height=150, 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)) self.assertEqual(672, canvas_price( @@ -151,10 +151,8 @@ class TestPrice(unittest2.TestCase): self.assertEqual(462, canvas_price(width=50, height=50, 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(174, 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)) + self.assertEqual(180, 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=True)) def test_canvas_frame_price(self): self.assertEqual(624, canvas_frame_price( @@ -171,7 +169,7 @@ class TestPrice(unittest2.TestCase): width=40, height=40, market=sweden, inc_vat=True)) self.assertEqual(71, canvas_frame_price( width=40, height=120, market=us)) - self.assertEqual(54, canvas_frame_price( + self.assertEqual(66, canvas_frame_price( width=40, height=100, market=us)) self.assertEqual(578, canvas_frame_price( width=40, height=120, market=sweden)) @@ -260,10 +258,10 @@ class TestPrice(unittest2.TestCase): self.assertEqual(91, inquiry_price(inquiry, framed=False)) 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(400, package_price('poster', 150, 40, market=us)) - self.assertEqual(250, package_price('poster', 40, 40, market=us)) + self.assertEqual(150, package_price('poster', 150, 40, market=us)) + self.assertEqual(100, package_price('poster', 40, 40, market=us)) self.assertEqual(0, package_price('poster', 150, 40, market=sweden)) def test_poster_cm2_price(self): @@ -276,17 +274,15 @@ class TestPrice(unittest2.TestCase): def test_poster_price(self): 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(66, 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(106, poster_price(width=120, height=40, market=us), 'high extra cost for us market wide posters') - 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)) + self.assertEqual(48, poster_price(width=30, height=40, hanger=True, market=us), 'extra cost for us market') + self.assertEqual(76, 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)) def test_poster_hanger_price(self): self.assertEqual(166, poster_hanger_price(30, market=sweden)) self.assertEqual(390, poster_hanger_price(150, market=sweden)) - self.assertEqual(47, poster_hanger_price(30, market=us)) - self.assertEqual(88, poster_hanger_price(150, market=us)) + self.assertEqual(29, poster_hanger_price(30, market=us)) + self.assertEqual(58, poster_hanger_price(150, market=us)) def test_poster_custom_inquiry_price(self): with mock.patch.object(Inquiry, 'market', sweden):