import pytest
from calculatrice import Calculatrice
def pytest_generate_tests(metafunc):
funcarglist = metafunc.cls.params[metafunc.function.__name__]
argnames = sorted(funcarglist[0])
metafunc.parametrize(argnames, [[funcargs[name] for name in argnames]
for funcargs in funcarglist])
class TestClass(object):
params = {
'test_sommet': [dict(liste=[4]), dict(liste=[2,7,12]), dict(liste=[2,4,7,-1]),],
'test_somme': [dict(liste=[2,3], resAttendu=5), dict(liste=[2,3,6], resAttendu=9)],
}
def test_sommet(self, liste):
calc = Calculatrice()
for i in liste:
calc.empiler(i)
resAttendu = liste[-1]
resEffectif = calc.sommet()
assert resAttendu == resEffectif, "le dernier nombre empilé est au sommet"
def test_somme(self, liste,resAttendu):
calc = Calculatrice()
for i in liste:
calc.empiler(i)
calc.ajouter()
resEffectif = calc.sommet()
assert resAttendu == resEffectif, "la somme des 2 derniers nombres est au sommet"