ppe2/tests/tests_tutorial/shop/test_pricing.py

22 lines
611 B
Python

from src.tutorial.testing.shop.pricing import discount_price
import pytest
def test_discount_price_reduces_price():
result = discount_price(100.0, 20.0)
assert result == 80
assert discount_price(100.0, 50.0) == 50
assert discount_price(100.0, 0) == 100
assert discount_price(100.0, 100) == 0
def test_negative_orice_raises_value_error() -> None:
with pytest.raises(ValueError):
discount_price(-100.0, 50.0) is ValueError
def test_percent_above_hundered_message() -> None:
with pytest.raises(ValueError, match="between 0 and 100"):
discount_price(100.0, 150.0)