test: Add comprehensive E2E tests for all 7 RAG adaptors
Added TestRAGAdaptorsE2E class with 6 comprehensive end-to-end tests covering:
1. test_e2e_all_rag_adaptors_from_same_skill
- Verifies all 7 RAG adaptors (LangChain, LlamaIndex, Haystack, Weaviate,
Chroma, FAISS, Qdrant) can package the same skill
- Validates JSON output format
- Ensures consistent behavior across platforms
2. test_e2e_rag_adaptors_preserve_metadata
- Tests metadata preservation (source, version, author, tags)
- Validates different platform structures (LangChain list, Weaviate schema,
Chroma dict)
- Ensures metadata flows through packaging pipeline
3. test_e2e_rag_json_structure_validation
- Validates JSON structure for each of 7 RAG adaptors
- Ensures required fields present (documents, metadata, IDs, etc.)
- Platform-specific structure validation
4. test_e2e_rag_empty_skill_handling
- Tests graceful handling of empty skill directories
- Verifies empty but valid structures returned
- Prevents crashes on edge cases
5. test_e2e_rag_category_detection
- Verifies category inference from file names
- Tests overview + reference categorization
- Validates across LangChain, Weaviate, and Chroma
6. test_e2e_rag_integration_workflow_chromadb
- Complete workflow test: package → ChromaDB → query → verify
- Tests in-memory ChromaDB integration
- Validates semantic search functionality
- Skipped if chromadb not installed
Results:
- 6 new E2E tests added
- 23 total E2E tests passing
- 1 test skipped (chromadb integration, optional dependency)
- All existing tests still passing (no regressions)
- Test coverage for all RAG adaptors now comprehensive
Phase 3 of optional enhancements complete.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>