test_.py 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. # -*- coding: utf-8 -*-
  2. import pytest
  3. import datetime
  4. import dingguo
  5. import yaml
  6. import os
  7. project_root_path = os.path.realpath(os.path.join(__file__, '..', '..'))
  8. test_data_path = os.path.join(project_root_path, 'tests', 'data')
  9. def test_order_dict_repr():
  10. order = dingguo.Order(
  11. platform = u'platform',
  12. order_id = u'id',
  13. order_date = datetime.datetime(2016, 5, 8, 0, 18, 17),
  14. customer_id = u'customer',
  15. )
  16. item_0 = dingguo.Item(name = u'item 0', price_brutto = dingguo.Sum(1.0, u'EUR'))
  17. order.items.append(item_0)
  18. item_1 = dingguo.Item(name = u'item 1', price_brutto = dingguo.Sum(2.0, u'EUR'))
  19. order.items.append(item_1)
  20. discount_0 = dingguo.Discount(name = u'discount 0', amount = dingguo.Sum(3.0, u'EUR'))
  21. order.discounts.append(discount_0)
  22. discount_1 = dingguo.Discount(name = u'discount 1', amount = dingguo.Sum(4.0, u'EUR'))
  23. order.discounts.append(discount_1)
  24. assert order.dict_repr() == {
  25. 'articles': [item_0, item_1],
  26. 'customer_id': u'customer',
  27. 'discounts': [discount_0, discount_1],
  28. 'order_date': u'2016-05-08',
  29. 'order_id': u'id',
  30. 'platform': u'platform',
  31. }
  32. def test_order_from_dict():
  33. item_0 = dingguo.Item(name = u'item 0', price_brutto = dingguo.Sum(1.0, u'EUR'))
  34. item_1 = dingguo.Item(name = u'item 1', price_brutto = dingguo.Sum(2.0, u'EUR'))
  35. discount_0 = dingguo.Discount(name = u'discount 0', amount = dingguo.Sum(3.0, u'EUR'))
  36. discount_1 = dingguo.Discount(name = u'discount 1', amount = dingguo.Sum(4.0, u'EUR'))
  37. order = dingguo.Order.from_dict({
  38. 'articles': [item_0, item_1],
  39. 'customer_id': u'customer',
  40. 'discounts': [discount_0, discount_1],
  41. 'order_date': u'2016-05-08',
  42. 'order_id': u'id',
  43. 'platform': u'platform',
  44. })
  45. assert order.items == [item_0, item_1]
  46. assert order.customer_id == u'customer'
  47. assert order.discounts == [discount_0, discount_1]
  48. assert order.order_date == datetime.date(2016, 5, 8)
  49. assert order.order_id == u'id'
  50. assert order.platform == u'platform'