123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- # -*- coding: utf-8 -*-
- 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(items = True):
- order = dingguo.Order(
- platform = u'platform',
- order_id = u'id',
- order_date = datetime.datetime(2016, 5, 8, 0, 18, 17),
- customer_id = u'customer',
- )
- if items:
- 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 get_person_a():
- return dingguo.Person(
- first_name = u'Fabian Peter',
- last_name = u'Hammerle',
- )
- def get_person_b():
- return dingguo.Person(
- first_name = u'名字',
- last_name = u'贵姓',
- )
- @pytest.mark.parametrize('a,b', [
- [dingguo.Figure(1, u'mm'), dingguo.Figure(1, u'mm')],
- [get_item_a(), get_item_a()],
- [get_item_b(), get_item_b()],
- [get_person_a(), get_person_a()],
- [get_person_b(), get_person_b()],
- [get_discount_a(), get_discount_a()],
- [get_discount_b(), get_discount_b()],
- [get_order_a(), get_order_a()],
- [get_order_b(), get_order_b()],
- [get_order_c(), get_order_c()],
- ])
- def test_eq(a, b):
- assert a == b
- assert b == a
- assert not a != b
- assert not b != a
- @pytest.mark.parametrize('a,b', [
- [dingguo.Figure(1, u'mm'), dingguo.Figure(2, u'mm')],
- [get_item_a(), get_item_b()],
- [get_person_a(), get_person_b()],
- [get_discount_a(), get_discount_b()],
- [get_order_a(), get_order_b()],
- [get_order_a(), get_order_a(items = False)],
- [get_order_b(), get_order_c()],
- [get_order_a(), get_order_c()],
- ])
- def test_neq(a, b):
- assert a != b
- assert b != a
- assert not a == b
- assert not b == a
- def test_order_ne_items_reversed():
- order = get_order_a()
- order.items = order.items[::-1]
- assert get_order_a() != order
|