52 lines
1.4 KiB
Python
52 lines
1.4 KiB
Python
import solo_turnier.competition_class
|
|
import pytest
|
|
|
|
@pytest.fixture(params=range(9))
|
|
def fix_pureClass(request):
|
|
cases = (
|
|
('Newc', 'Newc.'),
|
|
('Newc.', 'Newc.'),
|
|
('Newcomer', 'Newc.'),
|
|
('Beg', 'Beg.'),
|
|
('Beg.', 'Beg.'),
|
|
('Beginner', 'Beg.'),
|
|
('Adv', 'Adv.'),
|
|
('Adv.', 'Adv.'),
|
|
('Advanced', 'Adv.'),
|
|
)
|
|
return cases[request.param]
|
|
|
|
def test_pureClassParsing(fix_pureClass):
|
|
className = fix_pureClass[0]
|
|
expected = fix_pureClass[1]
|
|
|
|
parser = solo_turnier.competition_class.CompetitionClassParser()
|
|
ret = parser.parseClass(className)
|
|
|
|
assert isinstance(ret, solo_turnier.competition_class.CompetitionClass)
|
|
assert str(ret) == expected
|
|
|
|
assert parser.isPureClass(className)
|
|
|
|
@pytest.fixture(params=range(4))
|
|
def fix_combinedClass(request):
|
|
cases = (
|
|
('Newc/Beg', 'Newc./Beg.'),
|
|
('Newc./Beg', 'Newc./Beg.'),
|
|
('Beginner/Adv', 'Beg./Adv.'),
|
|
('Beg/Adv', 'Beg./Adv.'),
|
|
)
|
|
return cases[request.param]
|
|
|
|
def test_combinedClassParsing(fix_combinedClass):
|
|
className = fix_combinedClass[0]
|
|
expected = fix_combinedClass[1]
|
|
|
|
parser = solo_turnier.competition_class.CompetitionClassParser()
|
|
ret = parser.parseClass(className)
|
|
|
|
assert isinstance(ret, solo_turnier.competition_class.CombinedCompetitionClass)
|
|
assert str(ret) == expected
|
|
|
|
assert not parser.isPureClass(className)
|