feast-dev / feast-dev/feast

[Test restructure 5] Refactor root conftest.py — move fixtures, remove marker filtering

Open
#6,053 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
7.3k
Forks
1.4k
Avg merge
1d 21h
Merged PRs (30d)
15

Description

## What

The root `tests/conftest.py` currently does too much. Refactor it to match the new structure.

## Changes

### Move to `universal/conftest.py`:
- `environment` fixture and `pytest_generate_tests` parametrization logic
- `universal_data_sources` fixture (`construct_universal_test_data`)
- `e2e_data_sources` fixture
- `feature_server_endpoint` fixture
- `feature_store_for_online_retrieval` fixture
- `vectordb_environment` fixture
- `fake_ingest_data`, `fake_document_data`, `fake_image_data`

### Delete from root:
- `pytest_collection_modifyitems` marker filtering logic (the entire function)
- `--integration` CLI option from `pytest_addoption`
- Related marker registration that only served filtering

### Keep in root:
- `simple_dataset_1`, `simple_dataset_2` (used across tiers)
- `temp_dir`, `server_port` (used across tiers)
- Marker registrations still needed for pytest `--strict-markers`
- `--benchmark` option and benchmark filtering (if still needed)

## Validation

- `pytest tests/unit` runs without collecting any universal or integration tests
- `pytest tests/universal` still discovers and parametrizes the `environment` fixture correctly
- No fixture resolution errors across any tier

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.