File size: 5,035 Bytes
bbfde3f | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | # Accessibility Checker Tests
This directory contains comprehensive tests for the Accessibility Checker backend API, organized by functionality categories.
## π Test Categories
### `/forms-and-flashing/`
Tests for form detection and flashing objects analysis:
- **`test-forms-flashing-separation.js`** - Tests separation of forms and flashing objects into distinct checks
- **`test-form-duplicate-prevention.js`** - Tests deduplication of form field detections
- **`test-improved-form-detection.js`** - Tests enhanced form detection patterns
- **`test-forms-flashing.js`** - Legacy combined forms and flashing test
### `/location-tracking/`
Tests for location-aware accessibility detection:
- **`test-location-tracking.js`** - Tests paragraph-level location tracking system
- **`test-image-locations.js`** - Tests image accessibility with location information
- **`test-gif-location-detection.js`** - Tests GIF detection with relationship mapping and locations
### `/link-analysis/`
Tests for link accessibility analysis:
- **`test-link-descriptiveness.js`** - Tests detection of non-descriptive link text
- **`test-duplicate-links.js`** - Tests deduplication of link issues
### `/system-fixes/`
Tests for system-level fixes and improvements:
- **`test-flagging-system.js`** - Tests conversion from auto-fix to flagging system
- **`test-function-fix.js`** - Tests fix for function definition scope issues
### `/legacy/`
Historical tests from earlier development phases:
- **`test-advanced-shadows.js`** - Advanced shadow removal tests
- **`test-batch-processing.js`** - Batch document processing tests
- **`test-comprehensive-shadows.js`** - Comprehensive shadow detection tests
- **`test-line-spacing-detection.js`** - Line spacing analysis tests
- **`test-line-spacing.js`** - Line spacing validation tests
- **`test-session-system.js`** - Session management tests
- **`test-shadow-removal.js`** - Shadow removal functionality tests
- **`test-simple-detection.js`** - Basic detection tests
## π Running Tests
### Run All Tests
```bash
# Run all tests in a category
node tests/forms-and-flashing/test-forms-flashing-separation.js
node tests/location-tracking/test-gif-location-detection.js
node tests/link-analysis/test-duplicate-links.js
node tests/system-fixes/test-function-fix.js
```
### Run Category Tests
```bash
# Forms and Flashing
find tests/forms-and-flashing -name "*.js" -exec node {} \;
# Location Tracking
find tests/location-tracking -name "*.js" -exec node {} \;
# Link Analysis
find tests/link-analysis -name "*.js" -exec node {} \;
# System Fixes
find tests/system-fixes -name "*.js" -exec node {} \;
```
## π Test Coverage
### Current Functionality Coverage:
- β
**Forms Detection** - Enhanced patterns, duplicate prevention, location tracking
- β
**Flashing Objects** - Separate analysis, animation detection, location tracking
- β
**GIF Detection** - Location mapping, relationship parsing, accessibility recommendations
- β
**Link Analysis** - Non-descriptive detection, pattern matching, deduplication
- β
**Location Tracking** - Paragraph-level precision, page estimation, context tracking
- β
**System Integrity** - Function scoping, error handling, flagging system
### Key Features Tested:
- **Separation of Concerns** - Forms and flashing objects as distinct checks
- **Duplicate Prevention** - Location-based deduplication using Set()
- **Priority Selection** - Smart form type prioritization when multiple patterns match
- **Comprehensive Detection** - 14+ form element types, 9+ animation types
- **Location Precision** - Paragraph numbers, page estimates, heading context
- **Error Handling** - Function definition fixes, scope resolution
## π― Development Workflow
These tests were created during active development to validate:
1. **API Response Structure** - Ensuring proper JSON formatting and field consistency
2. **Location Information** - Verifying paragraph-level tracking across all checks
3. **Deduplication Logic** - Preventing multiple reports of the same accessibility issue
4. **Pattern Matching** - Validating regex patterns for various document structures
5. **Function Integration** - Testing function availability and proper scoping
6. **Feature Separation** - Ensuring modular, maintainable code architecture
## π Success Metrics
Tests validate these success criteria:
- **No Duplicate Reports** - Each accessibility issue reported exactly once
- **Accurate Locations** - Precise paragraph and page information for all issues
- **Comprehensive Coverage** - Detection of all supported accessibility issues
- **Error-Free Execution** - No function definition or runtime errors
- **Consistent Formatting** - Uniform API response structure across all checks
---
**Last Updated**: November 12, 2025
**Total Tests**: 20+ comprehensive test files
**Coverage**: Forms, Flashing Objects, GIFs, Links, Locations, System Fixes |