123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- # -*- coding: utf-8 -*-
- import pytest
- import datetime
- import dingguo
- import yaml
- import os
- def test_order_dict_repr():
- order = dingguo.Order(
- platform = u'platform',
- order_id = u'id',
- order_date = datetime.datetime(2016, 5, 8, 0, 18, 17),
- customer_id = u'customer',
- )
- item_0 = dingguo.Item(name = u'item 0', price_brutto = dingguo.Sum(1.0, u'EUR'))
- order.items.append(item_0)
- item_1 = dingguo.Item(name = u'item 1', price_brutto = dingguo.Sum(2.0, u'EUR'))
- order.items.append(item_1)
- discount_0 = dingguo.Discount(name = u'discount 0', amount = dingguo.Sum(3.0, u'EUR'))
- order.discounts.append(discount_0)
- discount_1 = dingguo.Discount(name = u'discount 1', amount = dingguo.Sum(4.0, u'EUR'))
- order.discounts.append(discount_1)
- assert order.dict_repr() == {
- 'articles': [item_0, item_1],
- 'customer_id': u'customer',
- 'discounts': [discount_0, discount_1],
- 'order_date': u'2016-05-08',
- 'order_id': u'id',
- 'platform': u'platform',
- }
- def test_order_from_dict_flat():
- item_0 = dingguo.Item(name = u'item 0', price_brutto = dingguo.Sum(1.0, u'EUR'))
- item_1 = dingguo.Item(name = u'item 1', price_brutto = dingguo.Sum(2.0, u'EUR'))
- discount_0 = dingguo.Discount(name = u'discount 0', amount = dingguo.Sum(3.0, u'EUR'))
- discount_1 = dingguo.Discount(name = u'discount 1', amount = dingguo.Sum(4.0, u'EUR'))
- order = dingguo.Order.from_dict({
- 'articles': [item_0, item_1],
- 'customer_id': u'customer',
- 'discounts': [discount_0, discount_1],
- 'order_date': u'2016-05-08',
- 'order_id': u'id',
- 'platform': u'platform',
- })
- assert order.items == [item_0, item_1]
- assert order.customer_id == u'customer'
- assert order.discounts == [discount_0, discount_1]
- assert order.order_date == datetime.date(2016, 5, 8)
- assert order.order_id == u'id'
- assert order.platform == u'platform'
- def test_order_from_dict_tree():
- order = dingguo.Order.from_dict({
- 'articles': [
- {
- 'name': u'item 0',
- 'price_brutto': 1.0,
- 'price_brutto_currency': u'EUR',
- },
- {
- 'name': u'item 1',
- 'price_brutto': 2.0,
- 'price_brutto_currency': u'EUR',
- },
- ],
- 'customer_id': u'customer',
- 'discounts': [
- {
- 'name': u'discount 0',
- 'value': 3.0,
- 'value_currency': u'EUR',
- },
- {
- 'name': u'discount 1',
- 'value': 4.0,
- 'value_currency': u'EUR',
- },
- ],
- 'order_date': u'2016-05-08',
- 'order_id': u'id',
- 'platform': u'platform',
- })
- assert order.items == [
- dingguo.Item(name = u'item 0', price_brutto = dingguo.Sum(1.0, u'EUR')),
- dingguo.Item(name = u'item 1', price_brutto = dingguo.Sum(2.0, u'EUR')),
- ]
- assert order.customer_id == u'customer'
- assert order.discounts == [
- dingguo.Discount(name = u'discount 0', amount = dingguo.Sum(3.0, u'EUR')),
- dingguo.Discount(name = u'discount 1', amount = dingguo.Sum(4.0, u'EUR')),
- ]
- assert order.order_date == datetime.date(2016, 5, 8)
- assert order.order_id == u'id'
- assert order.platform == u'platform'
- def test_item_from_dict():
- item = dingguo.Item.from_dict({
- 'name': u'item',
- 'price_brutto': 1.0,
- 'price_brutto_currency': u'EUR',
- })
- assert item.name == u'item'
- assert item.price_brutto == dingguo.Sum(1.0, u'EUR')
- def test_discount_from_dict():
- discount = dingguo.Discount.from_dict({
- 'name': u'discount',
- 'value': 1.0,
- 'value_currency': u'EUR',
- })
- assert discount.name == u'discount'
- assert discount.amount == dingguo.Sum(1.0, u'EUR')
|