perf: speed up test suite with parallel execution
- Enable pytest-xdist with -n auto for parallel test execution - Consolidate migrated_db fixture in conftest.py (was duplicated in 4 files) - Remove local fixture definitions and unused imports from test files Test execution: ~24s -> ~5s (~5x speedup) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,17 @@ import tempfile
|
||||
|
||||
import pytest
|
||||
|
||||
from animaltrack.db import get_db
|
||||
from animaltrack.migrations import run_migrations
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def migrated_db(tmp_path):
|
||||
"""Create a database with migrations applied."""
|
||||
db_path = str(tmp_path / "test.db")
|
||||
run_migrations(db_path, "migrations", verbose=False)
|
||||
return get_db(db_path)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def temp_migrations_dir(tmp_path):
|
||||
|
||||
@@ -6,18 +6,6 @@ import json
|
||||
import apsw
|
||||
import pytest
|
||||
|
||||
from animaltrack.db import get_db
|
||||
from animaltrack.migrations import run_migrations
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def migrated_db(tmp_path):
|
||||
"""Create a database with migrations applied."""
|
||||
db_path = str(tmp_path / "test.db")
|
||||
migrations_dir = "migrations"
|
||||
run_migrations(db_path, migrations_dir, verbose=False)
|
||||
return get_db(db_path)
|
||||
|
||||
|
||||
class TestMigrationCreatesAllTables:
|
||||
"""Tests that migration creates all event tables."""
|
||||
|
||||
@@ -4,18 +4,6 @@
|
||||
import apsw
|
||||
import pytest
|
||||
|
||||
from animaltrack.db import get_db
|
||||
from animaltrack.migrations import run_migrations
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def migrated_db(tmp_path):
|
||||
"""Create a database with migrations applied."""
|
||||
db_path = str(tmp_path / "test.db")
|
||||
migrations_dir = "migrations"
|
||||
run_migrations(db_path, migrations_dir, verbose=False)
|
||||
return get_db(db_path)
|
||||
|
||||
|
||||
class TestMigrationCreatesAllTables:
|
||||
"""Tests that migration creates all reference tables."""
|
||||
|
||||
@@ -5,9 +5,7 @@ import time
|
||||
|
||||
import pytest
|
||||
|
||||
from animaltrack.db import get_db
|
||||
from animaltrack.id_gen import generate_id
|
||||
from animaltrack.migrations import run_migrations
|
||||
from animaltrack.models.reference import (
|
||||
FeedType,
|
||||
Location,
|
||||
@@ -26,14 +24,6 @@ from animaltrack.repositories import (
|
||||
)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def migrated_db(tmp_path):
|
||||
"""Create a database with migrations applied."""
|
||||
db_path = str(tmp_path / "test.db")
|
||||
run_migrations(db_path, "migrations", verbose=False)
|
||||
return get_db(db_path)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def now_utc():
|
||||
"""Current time in milliseconds since epoch."""
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
# ABOUTME: Tests for the reference data seeder.
|
||||
# ABOUTME: Validates that seeding populates correct data and is idempotent.
|
||||
|
||||
import pytest
|
||||
|
||||
from animaltrack.db import get_db
|
||||
from animaltrack.migrations import run_migrations
|
||||
from animaltrack.models.reference import ProductUnit, UserRole
|
||||
from animaltrack.repositories import (
|
||||
FeedTypeRepository,
|
||||
@@ -16,14 +12,6 @@ from animaltrack.repositories import (
|
||||
from animaltrack.seeds import run_seeds
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def migrated_db(tmp_path):
|
||||
"""Create a database with migrations applied."""
|
||||
db_path = str(tmp_path / "test.db")
|
||||
run_migrations(db_path, "migrations", verbose=False)
|
||||
return get_db(db_path)
|
||||
|
||||
|
||||
class TestSeedCounts:
|
||||
"""Tests that seeding creates the correct number of records."""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user