Ejemplo n.º 1
0
def test_apply_tax_to_price_include_tax(taxes):
    money = Money(100, "USD")
    assert apply_tax_to_price(taxes, "standard", money) == TaxedMoney(
        net=Money("81.30", "USD"), gross=Money(100, "USD")
    )
    assert apply_tax_to_price(taxes, "medical", money) == TaxedMoney(
        net=Money("92.59", "USD"), gross=Money(100, "USD")
    )
Ejemplo n.º 2
0
def test_apply_tax_to_price_include_tax(taxes):
    money = Money(100, "USD")
    assert apply_tax_to_price(taxes, "standard",
                              money) == TaxedMoney(net=Money("81.30", "USD"),
                                                   gross=Money(100, "USD"))
    assert apply_tax_to_price(taxes, "medical",
                              money) == TaxedMoney(net=Money("92.59", "USD"),
                                                   gross=Money(100, "USD"))
Ejemplo n.º 3
0
def test_apply_tax_to_price_include_fallback_to_standard_rate(taxes):
    money = Money(100, 'USD')
    assert apply_tax_to_price(taxes, 'space suits', money) == TaxedMoney(
        net=Money('81.30', 'USD'), gross=Money(100, 'USD'))

    taxed_money = TaxedMoney(net=Money(100, 'USD'), gross=Money(100, 'USD'))
    assert apply_tax_to_price(taxes, 'space suits', taxed_money) == TaxedMoney(
        net=Money('81.30', 'USD'), gross=Money(100, 'USD'))
Ejemplo n.º 4
0
def test_apply_tax_to_price_include_tax(taxes):
    money = Money(100, 'USD')
    assert apply_tax_to_price(taxes, 'standard',
                              money) == TaxedMoney(net=Money('81.30', 'USD'),
                                                   gross=Money(100, 'USD'))
    assert apply_tax_to_price(taxes, 'medical',
                              money) == TaxedMoney(net=Money('92.59', 'USD'),
                                                   gross=Money(100, 'USD'))
Ejemplo n.º 5
0
def test_apply_tax_to_price_include_fallback_to_standard_rate(taxes):
    money = Money(100, 'RUB')
    assert apply_tax_to_price(taxes, 'space suits', money) == TaxedMoney(
        net=Money('81.30', 'RUB'), gross=Money(100, 'RUB'))

    taxed_money = TaxedMoney(net=Money(100, 'RUB'), gross=Money(100, 'RUB'))
    assert apply_tax_to_price(taxes, 'space suits', taxed_money) == TaxedMoney(
        net=Money('81.30', 'RUB'), gross=Money(100, 'RUB'))
Ejemplo n.º 6
0
def test_apply_tax_to_price_include_fallback_to_standard_rate(taxes):
    money = Money(100, "USD")
    assert apply_tax_to_price(taxes, "space suits",
                              money) == TaxedMoney(net=Money("81.30", "USD"),
                                                   gross=Money(100, "USD"))

    taxed_money = TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD"))
    assert apply_tax_to_price(taxes, "space suits", taxed_money) == TaxedMoney(
        net=Money("81.30", "USD"), gross=Money(100, "USD"))
Ejemplo n.º 7
0
def test_apply_tax_to_price_no_taxes_return_taxed_money_range():
    money_range = MoneyRange(Money(100, "USD"), Money(200, "USD"))
    taxed_money_range = TaxedMoneyRange(
        TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD")),
        TaxedMoney(net=Money(200, "USD"), gross=Money(200, "USD")),
    )

    assert apply_tax_to_price(None, "standard", money_range) == taxed_money_range
    assert apply_tax_to_price(None, "standard", taxed_money_range) == taxed_money_range
Ejemplo n.º 8
0
def test_apply_tax_to_price_no_taxes_return_taxed_money_range():
    money_range = MoneyRange(Money(100, 'USD'), Money(200, 'USD'))
    taxed_money_range = TaxedMoneyRange(
        TaxedMoney(net=Money(100, 'USD'), gross=Money(100, 'USD')),
        TaxedMoney(net=Money(200, 'USD'), gross=Money(200, 'USD')))

    assert (apply_tax_to_price(
        None, 'standard', money_range) == taxed_money_range)
    assert (apply_tax_to_price(
        None, 'standard', taxed_money_range) == taxed_money_range)
Ejemplo n.º 9
0
def test_apply_tax_to_price_no_taxes_return_taxed_money_range():
    money_range = MoneyRange(Money(100, 'USD'), Money(200, 'USD'))
    taxed_money_range = TaxedMoneyRange(
        TaxedMoney(net=Money(100, 'USD'), gross=Money(100, 'USD')),
        TaxedMoney(net=Money(200, 'USD'), gross=Money(200, 'USD')))

    assert (apply_tax_to_price(None, 'standard',
                               money_range) == taxed_money_range)
    assert (apply_tax_to_price(None, 'standard',
                               taxed_money_range) == taxed_money_range)
Ejemplo n.º 10
0
def test_apply_tax_to_price_include_fallback_to_standard_rate(taxes):
    money = Money(100, "USD")
    assert apply_tax_to_price(taxes, "space suits", money) == TaxedMoney(
        net=Money("81.30", "USD"), gross=Money(100, "USD")
    )

    taxed_money = TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD"))
    assert apply_tax_to_price(taxes, "space suits", taxed_money) == TaxedMoney(
        net=Money("81.30", "USD"), gross=Money(100, "USD")
    )
Ejemplo n.º 11
0
def test_apply_tax_to_price_no_taxes_return_taxed_money_range():
    money_range = MoneyRange(Money(100, "USD"), Money(200, "USD"))
    taxed_money_range = TaxedMoneyRange(
        TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD")),
        TaxedMoney(net=Money(200, "USD"), gross=Money(200, "USD")),
    )

    assert apply_tax_to_price(None, "standard",
                              money_range) == taxed_money_range
    assert apply_tax_to_price(None, "standard",
                              taxed_money_range) == taxed_money_range
Ejemplo n.º 12
0
def test_apply_tax_to_price_do_not_include_tax(site_settings, taxes):
    site_settings.include_taxes_in_prices = False
    site_settings.save()

    money = Money(100, 'USD')
    assert apply_tax_to_price(taxes, 'standard', money) == TaxedMoney(
        net=Money(100, 'USD'), gross=Money(123, 'USD'))
    assert apply_tax_to_price(taxes, 'medical', money) == TaxedMoney(
        net=Money(100, 'USD'), gross=Money(108, 'USD'))

    taxed_money = TaxedMoney(net=Money(100, 'USD'), gross=Money(100, 'USD'))
    assert apply_tax_to_price(taxes, 'standard', taxed_money) == TaxedMoney(
        net=Money(100, 'USD'), gross=Money(123, 'USD'))
    assert apply_tax_to_price(taxes, 'medical', taxed_money) == TaxedMoney(
        net=Money(100, 'USD'), gross=Money(108, 'USD'))
Ejemplo n.º 13
0
def test_apply_tax_to_price_do_not_include_tax(site_settings, taxes):
    site_settings.include_taxes_in_prices = False
    site_settings.save()

    money = Money(100, 'RUB')
    assert apply_tax_to_price(taxes, 'standard', money) == TaxedMoney(
        net=Money(100, 'RUB'), gross=Money(123, 'RUB'))
    assert apply_tax_to_price(taxes, 'medical', money) == TaxedMoney(
        net=Money(100, 'RUB'), gross=Money(108, 'RUB'))

    taxed_money = TaxedMoney(net=Money(100, 'RUB'), gross=Money(100, 'RUB'))
    assert apply_tax_to_price(taxes, 'standard', taxed_money) == TaxedMoney(
        net=Money(100, 'RUB'), gross=Money(123, 'RUB'))
    assert apply_tax_to_price(taxes, 'medical', taxed_money) == TaxedMoney(
        net=Money(100, 'RUB'), gross=Money(108, 'RUB'))
Ejemplo n.º 14
0
def test_apply_tax_to_price_include_tax_fallback_to_standard_rate(
        site_settings, taxes):
    site_settings.include_taxes_in_prices = False
    site_settings.save()

    money = Money(100, 'USD')
    taxed_money = TaxedMoney(net=Money(100, 'USD'), gross=Money(123, 'USD'))
    assert apply_tax_to_price(taxes, 'space suits', money) == taxed_money
Ejemplo n.º 15
0
def test_apply_tax_to_price_do_not_include_tax_fallback_to_standard_rate(
        site_settings, taxes):
    site_settings.include_taxes_in_prices = False
    site_settings.save()

    money = Money(100, 'USD')
    taxed_money = TaxedMoney(net=Money(100, 'USD'), gross=Money(123, 'USD'))
    assert apply_tax_to_price(taxes, 'space suits', money) == taxed_money
Ejemplo n.º 16
0
def test_apply_tax_to_price_do_not_include_tax(site_settings, taxes):
    site_settings.include_taxes_in_prices = False
    site_settings.save()

    money = Money(100, "USD")
    assert apply_tax_to_price(taxes, "standard", money) == TaxedMoney(
        net=Money(100, "USD"), gross=Money(123, "USD")
    )
    assert apply_tax_to_price(taxes, "medical", money) == TaxedMoney(
        net=Money(100, "USD"), gross=Money(108, "USD")
    )

    taxed_money = TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD"))
    assert apply_tax_to_price(taxes, "standard", taxed_money) == TaxedMoney(
        net=Money(100, "USD"), gross=Money(123, "USD")
    )
    assert apply_tax_to_price(taxes, "medical", taxed_money) == TaxedMoney(
        net=Money(100, "USD"), gross=Money(108, "USD")
    )
Ejemplo n.º 17
0
def test_apply_tax_to_price_do_not_include_tax(site_settings, taxes):
    site_settings.include_taxes_in_prices = False
    site_settings.save()

    money = Money(100, "USD")
    assert apply_tax_to_price(taxes, "standard",
                              money) == TaxedMoney(net=Money(100, "USD"),
                                                   gross=Money(123, "USD"))
    assert apply_tax_to_price(taxes, "medical",
                              money) == TaxedMoney(net=Money(100, "USD"),
                                                   gross=Money(108, "USD"))

    taxed_money = TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD"))
    assert apply_tax_to_price(taxes, "standard",
                              taxed_money) == TaxedMoney(net=Money(100, "USD"),
                                                         gross=Money(
                                                             123, "USD"))
    assert apply_tax_to_price(taxes, "medical",
                              taxed_money) == TaxedMoney(net=Money(100, "USD"),
                                                         gross=Money(
                                                             108, "USD"))
Ejemplo n.º 18
0
def test_apply_tax_to_price_no_taxes_raise_typeerror_for_invalid_type():
    with pytest.raises(TypeError):
        assert apply_tax_to_price(None, 'standard', 100)
Ejemplo n.º 19
0
def test_apply_tax_to_price_raise_typeerror_for_invalid_type(taxes):
    with pytest.raises(TypeError):
        assert apply_tax_to_price(taxes, "standard", 100)
Ejemplo n.º 20
0
def test_apply_tax_to_price_no_taxes_return_taxed_money():
    money = Money(100, 'USD')
    taxed_money = TaxedMoney(net=Money(100, 'USD'), gross=Money(100, 'USD'))

    assert apply_tax_to_price(None, 'standard', money) == taxed_money
    assert apply_tax_to_price(None, 'medical', taxed_money) == taxed_money
Ejemplo n.º 21
0
def test_apply_tax_to_price_no_taxes_return_taxed_money():
    money = Money(100, "USD")
    taxed_money = TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD"))

    assert apply_tax_to_price(None, "standard", money) == taxed_money
    assert apply_tax_to_price(None, "medical", taxed_money) == taxed_money
Ejemplo n.º 22
0
def test_apply_tax_to_price_no_taxes_raise_typeerror_for_invalid_type():
    with pytest.raises(TypeError):
        assert apply_tax_to_price(None, 'standard', 100)
Ejemplo n.º 23
0
def test_apply_tax_to_price_raise_typeerror_for_invalid_type(taxes):
    with pytest.raises(TypeError):
        assert apply_tax_to_price(taxes, "standard", 100)
Ejemplo n.º 24
0
def test_apply_tax_to_price_no_taxes_return_taxed_money():
    money = Money(100, 'USD')
    taxed_money = TaxedMoney(net=Money(100, 'USD'), gross=Money(100, 'USD'))

    assert apply_tax_to_price(None, 'standard', money) == taxed_money
    assert apply_tax_to_price(None, 'medical', taxed_money) == taxed_money
Ejemplo n.º 25
0
def test_apply_tax_to_price_no_taxes_return_taxed_money():
    money = Money(100, "USD")
    taxed_money = TaxedMoney(net=Money(100, "USD"), gross=Money(100, "USD"))

    assert apply_tax_to_price(None, "standard", money) == taxed_money
    assert apply_tax_to_price(None, "medical", taxed_money) == taxed_money
Ejemplo n.º 26
0
def test_apply_tax_to_price_include_tax(taxes):
    money = Money(100, 'USD')
    assert apply_tax_to_price(taxes, 'standard', money) == TaxedMoney(
        net=Money('81.30', 'USD'), gross=Money(100, 'USD'))
    assert apply_tax_to_price(taxes, 'medical', money) == TaxedMoney(
        net=Money('92.59', 'USD'), gross=Money(100, 'USD'))