P5-4046 update poster hanging list price

This commit is contained in:
Martin
2019-08-06 16:33:53 +02:00
parent 5f02343fd3
commit 5990622b5b
3 changed files with 23 additions and 23 deletions
+7 -7
View File
@@ -238,19 +238,19 @@ def poster_hanger_price(width, market, reseller=None, rounded=True, inc_vat=True
def _price_for_poster_hanger_size(size): def _price_for_poster_hanger_size(size):
if size > 0 and size <= 30: if size > 0 and size <= 30:
return 95.2 return 83
if size > 30 and size <= 50: if size > 30 and size <= 50:
return 135.2 return 118
if size > 50 and size <= 60: if size > 50 and size <= 60:
return 143.2 return 125
if size > 60 and size <= 70: if size > 60 and size <= 70:
return 151.2 return 132
if size > 70 and size <= 100: if size > 70 and size <= 100:
return 220 return 192
if size > 100 and size <= 125: if size > 100 and size <= 125:
return 250 return 218
if size > 125 and size <= 150: if size > 125 and size <= 150:
return 300 return 262
raise ValueError('Invalid poster hanger size: {}'.format(size)) raise ValueError('Invalid poster hanger size: {}'.format(size))
+12 -12
View File
@@ -274,25 +274,25 @@ class TestPrice(unittest2.TestCase):
self.assertEqual(0.028, poster_cm2_price(100000)) self.assertEqual(0.028, poster_cm2_price(100000))
def test_poster_price(self): def test_poster_price(self):
self.assertEqual(369, 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(67, poster_price(width=30, height=40, hanger=True, market=us), 'extra cost for us market') self.assertEqual(66, poster_price(width=30, height=40, hanger=True, market=us), 'extra cost for us market')
self.assertEqual(73, poster_price(width=30, height=40, hanger=True, market=eu), 'extra cost for eu market') self.assertEqual(71, poster_price(width=30, height=40, hanger=True, market=eu), 'extra cost for eu market')
self.assertEqual(110, 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(119, poster_price(width=120, height=40, market=eu), 'high extra cost for eu market wide posters') self.assertEqual(114, poster_price(width=120, height=40, market=eu), 'high extra cost for eu market wide posters')
self.assertEqual(111, poster_price(width=120, height=40, market=us, designer=designer_moomin)) 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(182, poster_hanger_price(30, market=sweden)) self.assertEqual(166, poster_hanger_price(30, market=sweden))
self.assertEqual(438, poster_hanger_price(150, market=sweden)) self.assertEqual(390, poster_hanger_price(150, market=sweden))
self.assertEqual(48, poster_hanger_price(30, market=us)) self.assertEqual(47, poster_hanger_price(30, market=us))
self.assertEqual(92, poster_hanger_price(150, market=us)) self.assertEqual(88, 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):
inquiry = Inquiry(product_group='poster', territory='SE', width=30, height=40, inquiry = Inquiry(product_group='poster', territory='SE', width=30, height=40,
hanger=True, price_retouch=200, pricepremium=0) hanger=True, price_retouch=200, pricepremium=0)
self.assertEqual(369, inquiry_price(inquiry, inc_price_retouch=False)) self.assertEqual(354, inquiry_price(inquiry, inc_price_retouch=False))
self.assertEqual(619, inquiry_price(inquiry, inc_price_retouch=True)) self.assertEqual(604, inquiry_price(inquiry, inc_price_retouch=True))
self.assertEqual(250, inquiry_price(inquiry, inc_price_retouch=False, hanger=False)) self.assertEqual(250, inquiry_price(inquiry, inc_price_retouch=False, hanger=False))
+4 -4
View File
@@ -159,8 +159,8 @@ class TestEndpoints(flask_testing.TestCase):
{ {
'hanger': True, 'hanger': True,
'height': 30, 'height': 30,
'price': 419.0, 'price': 397.5,
'price_excl_vat': 335.2, 'price_excl_vat': 318,
'width': 50 'width': 50
}, },
{ {
@@ -177,8 +177,8 @@ class TestEndpoints(flask_testing.TestCase):
response = self.client.get('/prices/poster-hanger?width=50&territory=SE') response = self.client.get('/prices/poster-hanger?width=50&territory=SE')
self.assert200(response) self.assert200(response)
product = response.json['data'][0] product = response.json['data'][0]
self.assertEqual(231.5, product['price']) self.assertEqual(210.0, product['price'])
self.assertEqual(185.2, product['price_excl_vat']) self.assertEqual(168, product['price_excl_vat'])
self.assertEqual(50, product['width']) self.assertEqual(50, product['width'])
def test_inquiry_wallpaper(self): def test_inquiry_wallpaper(self):