Пример #1
0
def test_total_setter():
    price = TaxedMoney(net=Money(10, "USD"), gross=Money(15, "USD"))
    order = models.Order()
    order.total = price
    assert order.total_net_amount == Decimal(10)
    assert order.total.net == Money(10, "USD")
    assert order.total_gross_amount == Decimal(15)
    assert order.total.gross == Money(15, "USD")
    assert order.total.tax == Money(5, "USD")
def test_total_setter():
    price = TaxedMoney(net=Money(10, 'USD'), gross=Money(15, 'USD'))
    order = models.Order()
    order.total = price
    assert order.total_net == Money(10, 'USD')
    assert order.total.net == Money(10, 'USD')
    assert order.total_gross == Money(15, 'USD')
    assert order.total.gross == Money(15, 'USD')
    assert order.total.tax == Money(5, 'USD')
Пример #3
0
def test_total_setter(billing_address: Address, tax_rates_countries: dict):
    price = Price(net=10, gross=20, currency='USD')
    order = models.Order()
    order.total = price
    assert order.total_net.net == 10
    assert order.total_tax.net == 10

    # testing the tax applying from the billing address
    order.billing_address = billing_address
    price = Price(net=10, currency='EUR')

    assert order.total_net.net == 10

    for country, tax_rate in tax_rates_countries.items():
        billing_address.country = Country(country)
        order.total = price

        expected_tax = Decimal(10 * tax_rate)

        assert order.total_net.net == 10
        assert_decimal(order.total_tax.net, expected_tax)
        assert order.tax_rate == int(tax_rate * 100)
Пример #4
0
def test_total_setter():
    price = Price(net=10, gross=20, currency='USD')
    order = models.Order()
    order.total = price
    assert order.total_net.net == 10
    assert order.total_tax.net == 10
Пример #5
0
def test_total_property_empty_value():
    order = models.Order(total_net=None, total_tax=None)
    assert order.total is None
Пример #6
0
def test_total_property():
    order = models.Order(total_net=20, total_tax=5)
    assert order.total.gross == 25
    assert order.total.tax == 5
    assert order.total.net == 20