|
@@ -0,0 +1,129 @@
|
|
|
+
|
|
|
+
|
|
|
+import pytest
|
|
|
+
|
|
|
+import datetime
|
|
|
+import dingguo
|
|
|
+import yaml
|
|
|
+import os
|
|
|
+
|
|
|
+def get_item_a():
|
|
|
+ return dingguo.Item(
|
|
|
+ name = u'item',
|
|
|
+ price_brutto = dingguo.Sum(1.0, u'EUR'),
|
|
|
+ )
|
|
|
+def get_item_b():
|
|
|
+ return dingguo.Item(
|
|
|
+ name = u'item',
|
|
|
+ price_brutto = dingguo.Sum(2.0, u'EUR'),
|
|
|
+ )
|
|
|
+
|
|
|
+def get_discount_a():
|
|
|
+ return dingguo.Discount(
|
|
|
+ name = u'discount',
|
|
|
+ amount = dingguo.Sum(1.0, u'EUR'),
|
|
|
+ )
|
|
|
+
|
|
|
+def get_discount_b():
|
|
|
+ return dingguo.Discount(
|
|
|
+ name = u'discount',
|
|
|
+ amount = dingguo.Sum(2.0, u'EUR'),
|
|
|
+ )
|
|
|
+
|
|
|
+def get_order_a():
|
|
|
+ order = dingguo.Order(
|
|
|
+ platform = u'platform',
|
|
|
+ order_id = u'id',
|
|
|
+ order_date = datetime.datetime(2016, 5, 8, 0, 18, 17),
|
|
|
+ customer_id = u'customer',
|
|
|
+ )
|
|
|
+ order.items.append(get_item_a())
|
|
|
+ order.items.append(get_item_b())
|
|
|
+ order.discounts.append(get_discount_a())
|
|
|
+ order.discounts.append(get_discount_b())
|
|
|
+ return order
|
|
|
+
|
|
|
+def get_order_b():
|
|
|
+ order = dingguo.Order(
|
|
|
+ platform = u'platform',
|
|
|
+ order_id = u'id',
|
|
|
+ order_date = datetime.datetime(2016, 5, 8, 0, 18, 17),
|
|
|
+ )
|
|
|
+ order.items.append(get_item_a())
|
|
|
+ order.items.append(get_item_b())
|
|
|
+ order.discounts.append(get_discount_a())
|
|
|
+ order.discounts.append(get_discount_b())
|
|
|
+ return order
|
|
|
+
|
|
|
+def get_order_c():
|
|
|
+ order = dingguo.Order(
|
|
|
+ platform = u'platform',
|
|
|
+ order_id = u'id',
|
|
|
+ order_date = datetime.datetime(2016, 5, 8, 0, 18, 17),
|
|
|
+ )
|
|
|
+ order.items.append(get_item_a())
|
|
|
+ order.items.append(get_item_b())
|
|
|
+ order.items.append(get_item_b())
|
|
|
+ order.discounts.append(get_discount_a())
|
|
|
+ order.discounts.append(get_discount_b())
|
|
|
+ return order
|
|
|
+
|
|
|
+def test_figure_eq():
|
|
|
+ assert dingguo.Figure(1, u'mm') == dingguo.Figure(1, u'mm')
|
|
|
+
|
|
|
+def test_figure_eq_inverted():
|
|
|
+ assert not dingguo.Figure(1, u'mm') == dingguo.Figure(2, u'mm')
|
|
|
+
|
|
|
+def test_figure_ne():
|
|
|
+ assert dingguo.Figure(1, u'mm') != dingguo.Figure(2, u'mm')
|
|
|
+
|
|
|
+def test_figure_ne_inverted():
|
|
|
+ assert not dingguo.Figure(1, u'mm') != dingguo.Figure(1, u'mm')
|
|
|
+
|
|
|
+def test_item_eq():
|
|
|
+ assert get_item_a() == get_item_a()
|
|
|
+ assert get_item_b() == get_item_b()
|
|
|
+
|
|
|
+def test_item_eq_inverted():
|
|
|
+ assert not get_item_a() == get_item_b()
|
|
|
+
|
|
|
+def test_item_ne():
|
|
|
+ assert get_item_a() != get_item_b()
|
|
|
+
|
|
|
+def test_item_ne_inverted():
|
|
|
+ assert not get_item_a() != get_item_a()
|
|
|
+ assert not get_item_b() != get_item_b()
|
|
|
+
|
|
|
+def test_discount_eq():
|
|
|
+ assert get_discount_a() == get_discount_a()
|
|
|
+ assert get_discount_b() == get_discount_b()
|
|
|
+
|
|
|
+def test_discount_eq_inverted():
|
|
|
+ assert not get_discount_a() == get_discount_b()
|
|
|
+
|
|
|
+def test_discount_ne():
|
|
|
+ assert get_discount_a() != get_discount_b()
|
|
|
+
|
|
|
+def test_discount_ne_inverted():
|
|
|
+ assert not get_discount_a() != get_discount_a()
|
|
|
+ assert not get_discount_b() != get_discount_b()
|
|
|
+
|
|
|
+def test_order_eq():
|
|
|
+ assert get_order_a() == get_order_a()
|
|
|
+ assert get_order_b() == get_order_b()
|
|
|
+ assert get_order_c() == get_order_c()
|
|
|
+
|
|
|
+def test_order_eq_inverted():
|
|
|
+ assert not get_order_a() == get_order_c()
|
|
|
+ assert not get_order_b() == get_order_a()
|
|
|
+ assert not get_order_c() == get_order_b()
|
|
|
+
|
|
|
+def test_order_neq():
|
|
|
+ assert get_order_a() != get_order_c()
|
|
|
+ assert get_order_b() != get_order_a()
|
|
|
+ assert get_order_c() != get_order_b()
|
|
|
+
|
|
|
+def test_order_neq_inverted():
|
|
|
+ assert not get_order_a() != get_order_a()
|
|
|
+ assert not get_order_b() != get_order_b()
|
|
|
+ assert not get_order_c() != get_order_c()
|