File size: 1,521 Bytes
f2e524e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
from src.analyzer import ImageAnalyzer
import json

def test_analyzer():
    analyzer = ImageAnalyzer()
    
    # Mock data with focused Generic / Filler cases
    site_data = {
        "https://example.com/test-generic": [
            {"src": "g1.jpg", "alt": "logo"},              # BAD: Exact generic
            {"src": "g2.jpg", "alt": "image"},             # BAD: Exact generic
            {"src": "g3.jpg", "alt": "company logo"},      # BAD: Short partial generic (< 3 words)
            {"src": "g4.jpg", "alt": "header banner"},     # BAD: Short partial generic (< 3 words)
            {"src": "g5.jpg", "alt": "Eminent Tactiles Logo"}, # GOOD: Long partial generic (>= 3 words)
            {"src": "g6.jpg", "alt": "Product Thumbnail View"}, # GOOD: Long partial generic (>= 3 words)
            {"src": "g7.jpg", "alt": "placeholder icon"},  # BAD: Short partial generic
            {"src": "g8.jpg", "alt": "unique identifier"}, # BAD: Too few words (caught by logic C, safe check)
            {"src": "g9.jpg", "alt": "My Photo"},          # BAD: Short partial generic
        ]
    }
    
    print("Running Generic Term Analyzer Test...")
    report = analyzer.analyze_site(site_data)
    
    # Extract just the poor quality logic results for clarity
    results = []
    for img in report['details'][0]['images_with_poor_alt']:
        results.append(f"ALT: '{img['alt']}' -> REASON: {img['reason']}")
        
    for res in results:
        print(res)

if __name__ == "__main__":
    test_analyzer()