diff options
author | Andrei Zeliankou <zelenkov@nginx.com> | 2020-12-09 16:17:46 +0000 |
---|---|---|
committer | Andrei Zeliankou <zelenkov@nginx.com> | 2020-12-09 16:17:46 +0000 |
commit | 7be62c3c213c3da1da1a45c8db16192eb0ed14d8 (patch) | |
tree | 6c44a78d9e8fb357998f887390b472497a953d35 /test | |
parent | 4c846ae69308983050a55f6467c2d53e78120e0b (diff) | |
download | unit-7be62c3c213c3da1da1a45c8db16192eb0ed14d8.tar.gz unit-7be62c3c213c3da1da1a45c8db16192eb0ed14d8.tar.bz2 |
Tests: TestUnit class removed.
Prerequisite checks moved to the fixture in conftest.py.
Diffstat (limited to '')
-rw-r--r-- | test/conftest.py | 34 | ||||
-rw-r--r-- | test/unit/http.py | 3 | ||||
-rw-r--r-- | test/unit/main.py | 36 |
3 files changed, 35 insertions, 38 deletions
diff --git a/test/conftest.py b/test/conftest.py index 07d5f059..5c8da65f 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -184,6 +184,40 @@ def pytest_runtest_makereport(item, call): setattr(item, "rep_" + rep.when, rep) +@pytest.fixture(scope='class', autouse=True) +def check_prerequisites(request): + cls = request.cls + missed = [] + + # check modules + + if 'modules' in cls.prerequisites: + available_modules = list(option.available['modules'].keys()) + + for module in cls.prerequisites['modules']: + if module in available_modules: + continue + + missed.append(module) + + if missed: + pytest.skip('Unit has no ' + ', '.join(missed) + ' module(s)') + + # check features + + if 'features' in cls.prerequisites: + available_features = list(option.available['features'].keys()) + + for feature in cls.prerequisites['features']: + if feature in available_features: + continue + + missed.append(feature) + + if missed: + pytest.skip(', '.join(missed) + ' feature(s) not supported') + + @pytest.fixture(autouse=True) def run(request): unit = unit_run() diff --git a/test/unit/http.py b/test/unit/http.py index ae74eac3..57e6ed3a 100644 --- a/test/unit/http.py +++ b/test/unit/http.py @@ -7,11 +7,10 @@ import select import socket import pytest -from unit.main import TestUnit from unit.option import option -class TestHTTP(TestUnit): +class TestHTTP(): def http(self, start_str, **kwargs): sock_type = kwargs.get('sock_type', 'ipv4') port = kwargs.get('port', 7080) diff --git a/test/unit/main.py b/test/unit/main.py deleted file mode 100644 index 749ff3ab..00000000 --- a/test/unit/main.py +++ /dev/null @@ -1,36 +0,0 @@ -import pytest -from unit.option import option - - -class TestUnit(): - @classmethod - def setup_class(cls): - missed = [] - - # check modules - - if 'modules' in cls.prerequisites: - available_modules = list(option.available['modules'].keys()) - - for module in cls.prerequisites['modules']: - if module in available_modules: - continue - - missed.append(module) - - if missed: - pytest.skip('Unit has no ' + ', '.join(missed) + ' module(s)') - - # check features - - if 'features' in cls.prerequisites: - available_features = list(option.available['features'].keys()) - - for feature in cls.prerequisites['features']: - if feature in available_features: - continue - - missed.append(feature) - - if missed: - pytest.skip(', '.join(missed) + ' feature(s) not supported') |