We have 5 test projects with overlapping and outdated code:
- EmailDB.Testing - Old integration tests using removed classes
- EmailDB.Testing.RawBlocks - Simple RawBlockManager test
- EmailDB.Testing.FileFormatBenchmark - Benchmarks for old implementations
- NetNinja.Testing.BlockManager - Basic integration test
- EmailDB.UnitTests - Comprehensive test suite with all modern tests
This project contains all the valuable tests including:
- All the new tests we created (HybridEmailStore, performance, stress tests, etc.)
- Comprehensive test coverage
- Modern implementation using current APIs
- Well-organized test structure
- EmailDB.Testing - Uses non-existent StorageManager/BlockManager classes
- EmailDB.Testing.FileFormatBenchmark - Tests obsolete CapnProto/Protobuf implementations
- EmailDB.Format.CapnProto - Alternative implementation not aligned with current architecture
- EmailDB.Format.Protobuf - Alternative implementation with build errors
- EmailDB.Testing.RawBlocks - Simple but valid RawBlockManager test
- NetNinja.Testing.BlockManager - Valid integration test of core managers
- Single test project to maintain
- No confusion about which tests to run
- Easier CI/CD setup
- Cleaner solution structure
- All tests in one place
- Copy useful tests from EmailDB.Testing.RawBlocks to EmailDB.UnitTests
- Copy integration test from NetNinja.Testing.BlockManager to EmailDB.UnitTests
- Remove obsolete projects from solution
- Delete obsolete project folders
- Update solution file