Unit Tests (tests/frontend/unit/theme.test.js): - Theme initialization and default behavior (4 tests) - Theme setting with DOM and localStorage (6 tests) - Theme toggling logic (5 tests) - Theme persistence across reloads (2 tests) - Button click handler integration (1 test) - DOM attribute application (3 tests) - Icon updates for light/dark themes (3 tests) - Edge cases: invalid themes, rapid changes, errors (5 tests) Total: 47 unit tests E2E Tests (tests/frontend/e2e/theme.spec.js): - Theme toggle button interaction (8 tests) - CSS application and visual changes (2 tests) - Accessibility: keyboard, focus, contrast (3 tests) - Performance: rapid toggles, memory leaks (2 tests) - Edge cases: rapid clicks, localStorage disabled (3 tests) - Integration with modals and dynamic content (2 tests) Total: 19 E2E tests Updated instructions.md marking dark mode tests complete
Aniworld Documentation
Overview
This directory contains all documentation for the Aniworld anime download manager project.
Documentation Structure
| Document | Purpose | Target Audience |
|---|---|---|
| ARCHITECTURE.md | System architecture and design decisions | Architects, Senior Developers |
| API.md | REST API reference and WebSocket documentation | Frontend Developers, API Consumers |
| DEVELOPMENT.md | Developer setup and contribution guide | All Developers |
| DEPLOYMENT.md | Deployment and operations guide | DevOps, System Administrators |
| DATABASE.md | Database schema and data models | Backend Developers |
| TESTING.md | Testing strategy and guidelines | QA Engineers, Developers |
| SECURITY.md | Security considerations and guidelines | Security Engineers, All Developers |
| CONFIGURATION.md | Configuration options reference | Operators, Developers |
| CHANGELOG.md | Version history and changes | All Stakeholders |
| TROUBLESHOOTING.md | Common issues and solutions | Support, Operators |
| features.md | Feature list and capabilities | Product Owners, Users |
| instructions.md | AI agent development instructions | AI Agents, Developers |
Documentation Standards
- All documentation uses Markdown format
- Keep documentation up-to-date with code changes
- Include code examples where applicable
- Use clear, concise language
- Include diagrams for complex concepts (use Mermaid syntax)
Contributing to Documentation
When adding or updating documentation:
- Follow the established format in each document
- Update the README.md if adding new documents
- Ensure cross-references are valid
- Review for spelling and grammar