File size: 2,524 Bytes
a1d11a9
 
 
 
 
 
 
 
 
 
7d90b6b
 
 
fa36d82
7d90b6b
 
 
 
 
 
 
fa36d82
 
7d90b6b
 
 
 
a1d11a9
fa36d82
a1d11a9
7d90b6b
 
fa36d82
7d90b6b
 
 
a1d11a9
 
 
 
fa36d82
a1d11a9
 
 
 
 
 
 
 
 
 
 
 
fa36d82
a1d11a9
 
 
 
 
fa36d82
a1d11a9
 
 
 
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
"""
Run get/list operations and print results (no writes).
Run from backend:  python -m db.test_functions.query_data ***
Requires DATABASE_URL in backend/.env.
"""

import db


def run():
    print("=== list_mangas (default: newest first) ===\n")
    mangas = db.list_mangas()
    for m in mangas:
        print(f"  {m.provider_id} | {m.manga_title}")
    print(f"\n  Total: {len(mangas)} manga(s)\n")

    if not mangas:
        print("No data. Run:  python -m db.test_functions.create_data")
        return

    first_manga = mangas[0]
    provider_id = first_manga.provider_id
    manga_title = first_manga.manga_title

    chapters = db.list_chapters(manga_title, provider_id=provider_id)
    if not chapters:
        print(f"No chapters for {manga_title}. Run create_data to add pages.")
        return
    chapter_number = chapters[0].chapter_number

    print(f"=== list_chapters({manga_title!r}, provider_id={provider_id!r}) ===\n")
    for c in chapters[:5]:
        print(f"  ch.{c.chapter_number} (id={c.id})")
    if len(chapters) > 5:
        print(f"  ... and {len(chapters) - 5} more chapter(s)")
    print(f"\n  Total: {len(chapters)} chapter(s)\n")

    print(f"=== get_chapter_segments({provider_id!r}, {manga_title!r}, {chapter_number}) ===\n")
    segments = db.get_chapter_segments(provider_id, manga_title, chapter_number)
    for i, s in enumerate(segments[:5]):  # show first 5
        print(f"  [{i+1}] page {s.page_number} seg {s.segment_index}: {s.original_text[:30]!r}{s.translated_text[:30]!r}")
    if len(segments) > 5:
        print(f"  ... and {len(segments) - 5} more segment(s)")
    print(f"\n  Total: {len(segments)} segment(s) in chapter\n")

    print(f"=== get_segments (provider_id={provider_id!r}, manga_title={manga_title!r}, chapter_number={chapter_number}, page_number=1) ===\n")
    page_segments = db.get_segments(
        provider_id=provider_id,
        manga_title=manga_title,
        chapter_number=chapter_number,
        page_number=1,
    )
    for s in page_segments:
        print(f"  seg {s.segment_index}: {s.translated_text!r}")
    print(f"\n  Total: {len(page_segments)} segment(s) on page 1\n")

    print("=== get_segments (no filters: all segments) ===\n")
    all_segments = db.get_segments()
    for s in all_segments:
        print(f"  {s.provider_id} | {s.manga_title} ch.{s.chapter_number} | {s.page_number} | {s.segment_index}: {s.translated_text!r}")
    print(f"\n  Total: {len(all_segments)} segment(s)\n")

if __name__ == "__main__":
    run()