Validate that the testing infrastructure is properly configured.
| 8 | |
| 9 | |
| 10 | class TestInfrastructureSetup: |
| 11 | """Validate that the testing infrastructure is properly configured.""" |
| 12 | |
| 13 | def test_project_structure_exists(self): |
| 14 | """Test that the required project structure is in place.""" |
| 15 | # Check that main packages exist |
| 16 | assert Path("damai").exists(), "damai package directory should exist" |
| 17 | assert Path("damai_appium").exists(), "damai_appium package directory should exist" |
| 18 | |
| 19 | # Check that test directories exist |
| 20 | assert Path("tests").exists(), "tests directory should exist" |
| 21 | assert Path("tests/unit").exists(), "tests/unit directory should exist" |
| 22 | assert Path("tests/integration").exists(), "tests/integration directory should exist" |
| 23 | |
| 24 | def test_pyproject_toml_exists(self): |
| 25 | """Test that pyproject.toml exists and is properly configured.""" |
| 26 | pyproject_path = Path("pyproject.toml") |
| 27 | assert pyproject_path.exists(), "pyproject.toml should exist" |
| 28 | |
| 29 | # Read and validate content |
| 30 | content = pyproject_path.read_text() |
| 31 | assert "[tool.poetry]" in content, "Poetry configuration should be present" |
| 32 | assert "[tool.pytest.ini_options]" in content, "Pytest configuration should be present" |
| 33 | assert "[tool.coverage" in content, "Coverage configuration should be present" |
| 34 | |
| 35 | def test_conftest_exists(self): |
| 36 | """Test that conftest.py exists with fixtures.""" |
| 37 | conftest_path = Path("tests/conftest.py") |
| 38 | assert conftest_path.exists(), "tests/conftest.py should exist" |
| 39 | |
| 40 | # Verify it contains fixture definitions |
| 41 | content = conftest_path.read_text() |
| 42 | assert "@pytest.fixture" in content, "conftest.py should contain fixtures" |
| 43 | |
| 44 | def test_packages_importable(self): |
| 45 | """Test that the main packages can be imported.""" |
| 46 | try: |
| 47 | import damai |
| 48 | assert damai is not None |
| 49 | except ImportError as e: |
| 50 | pytest.fail(f"Failed to import damai package: {e}") |
| 51 | |
| 52 | try: |
| 53 | import damai_appium |
| 54 | assert damai_appium is not None |
| 55 | except ImportError as e: |
| 56 | pytest.fail(f"Failed to import damai_appium package: {e}") |
| 57 | |
| 58 | @pytest.mark.unit |
| 59 | def test_unit_marker_works(self): |
| 60 | """Test that the unit marker is properly configured.""" |
| 61 | # This test should be marked as unit |
| 62 | assert True |
| 63 | |
| 64 | @pytest.mark.integration |
| 65 | def test_integration_marker_works(self): |
| 66 | """Test that the integration marker is properly configured.""" |
| 67 | # This test should be marked as integration |
nothing calls this directly
no outgoing calls
no test coverage detected