e828acf175
CI / lint (push) Successful in 1m32s
CI / typecheck (push) Successful in 1m38s
CI / lint (pull_request) Successful in 1m30s
CI / typecheck (pull_request) Successful in 1m30s
CI / behave (3.11) (pull_request) Successful in 1m39s
CI / behave (3.12) (pull_request) Successful in 1m39s
CI / build (pull_request) Successful in 1m29s
CI / behave (3.13) (pull_request) Successful in 1m39s
CI / behave (3.11) (push) Successful in 1m39s
CI / behave (3.12) (push) Successful in 1m41s
CI / behave (3.13) (push) Successful in 1m37s
CI / build (push) Successful in 1m30s
ISSUES CLOSED: #1
CleverRDFLib BDD Test Suite
This directory contains Behavior-Driven Development (BDD) tests written using Behave.
Test Structure
Feature Files
ontology_loading.feature- Tests for ontology loading functionalityclass_hierarchy.feature- Tests for class hierarchy buildinggraph_loading.feature- Tests for graph loadingresolvers.feature- Tests for reference resolversfilters.feature- Tests for IRI filteringobservers.feature- Tests for observer patternvalidation.feature- Tests for OWL validationconsistency_checking.feature- Tests for consistency checkingmetadata_extraction.feature- Tests for metadata extractionstrategies.feature- Tests for loading strategiesexample.feature- Placeholder feature
Step Definitions
ontology_loading_steps.py- Complete step definitions for ontology loadingclass_hierarchy_steps.py- Complete step definitions for class hierarchystub_steps.py- Stub step definitions for features without full implementationscommon_steps.py- Common step definitions shared across featuresexample_steps.py- Step definitions for placeholder feature
Running Tests
Run all tests
nox -s unit_tests
Run specific feature
nox -s unit_tests -- features/ontology_loading.feature
Run with verbose output
nox -s unit_tests -- -v
Current Status
- ✅ Ontology Loading: Fully implemented with comprehensive step definitions
- ✅ Class Hierarchy: Fully implemented with comprehensive step definitions
Notes
- Tests follow design patterns used in the codebase (Observer, Factory, Strategy, etc.)
- Step definitions are detailed and well-commented
- Tests are broken into small, granular steps for better maintainability