Files
slic/tests/test_param.py
T
tligui_y f6bb324a66
Run Pytest with HTML and XML Test Reports / tests (push) Successful in 26s
Update tests/test_param.py
2025-07-17 10:07:31 +02:00

44 lines
1.1 KiB
Python

import pytest
# Paramètres simples avec id au bout
@pytest.mark.parametrize("x", [
pytest.param(1, id="one"),
pytest.param(2, id="two")
])
def test_basic_ids(x):
pass
# id au milieu avec autre kwarg (reason)
@pytest.mark.parametrize("x", [
pytest.param(10, reason="because", id="ten"),
pytest.param(20, id="twenty", marks=pytest.mark.skip(reason="nope")),
])
def test_with_reason_and_marks(x):
pass
# Plusieurs arguments positionnels
@pytest.mark.parametrize("a, b", [
pytest.param(1, 2, id="1-2"),
pytest.param(3, 4, id="3-4"),
])
def test_multiple_positional_args(a, b):
pass
# Avec un argument non-évaluable
@pytest.mark.parametrize("data", [
pytest.param(object(), id="custom-obj"),
])
def test_non_literal_with_id(data):
pass
from datetime import datetime, timedelta
testdata = [
(datetime(2001, 12, 12), datetime(2001, 12, 11), timedelta(1)),
(datetime(2001, 12, 11), datetime(2001, 12, 12), timedelta(-1)),
]
@pytest.mark.parametrize("a,b,expected", testdata, ids=["forward", "backward"])
def test_timedistance_v1(a, b, expected):
diff = a - b
assert diff == expected