def test_sums_transactions_by_sku(self): rates = Rates([]) transactions = [ {"store": "Store", "sku": "SKU123", "amount": Decimal("1.1"), "currency": "FOO"}, {"store": "Store", "sku": "SKU123", "amount": Decimal("1.2"), "currency": "FOO"}, {"store": "Store", "sku": "SKU123", "amount": Decimal("1.3"), "currency": "FOO"}, {"store": "Store", "sku": "SKU234", "amount": Decimal("5.0"), "currency": "FOO"}] trans = Transactions(rates, transactions) self.assertEqual(trans.total("SKU123", "FOO"), Decimal("3.6"))
def test_converts_transactions_to_currency(self): rates = Rates([ {"from": "FOO", "to": "BAR", "conversion": Decimal("0.98")}, {"from": "BAR", "to": "BAZ", "conversion": Decimal("1.02")}]) transactions = [ {"store": "Store", "sku": "SKU123", "amount": Decimal("1.1"), "currency": "FOO"}, {"store": "Store", "sku": "SKU123", "amount": Decimal("1.2"), "currency": "BAR"}, {"store": "Store", "sku": "SKU123", "amount": Decimal("1.3"), "currency": "BAZ"}] trans = Transactions(rates, transactions) self.assertEqual(trans.total("SKU123", "FOO"), Decimal('3.62501'))
def test_that_rates_work(self): trans = Transactions(Rates(TEST_RATES), TEST_TRANSACTIONS) t = trans.total(sku = "DM1182", currency = "USD") self.assertEqual(t, Decimal("134.228"))