File size: 1,420 Bytes
10e7813
 
 
 
 
0d11aa0
10e7813
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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

import pathlib
ROOT=pathlib.Path(__file__).resolve().parents[1]

def test_version_372():
    assert (ROOT/"VERSION").read_text(encoding="utf-8").strip()=="4.6.1"

def test_route_modules_exist():
    for name in ("datasets.py","user_state.py","project_package.py","data_health.py"):
        assert (ROOT/"routes"/name).exists()

def test_ui_server_is_assembly_for_extracted_routes():
    ui=(ROOT/"ui_server.py").read_text(encoding="utf-8")
    assert "register_user_state_routes(app, globals())" in ui
    assert "register_datasets_routes(app, globals())" in ui
    assert "register_project_package_routes(app, globals())" in ui
    assert "async def sidebar_dataset_detail" not in ui
    assert "async def build_project_package" not in ui
    assert "async def get_synced_workspace" not in ui

def test_extracted_route_contracts_are_preserved():
    datasets=(ROOT/"routes"/"datasets.py").read_text(encoding="utf-8")
    package=(ROOT/"routes"/"project_package.py").read_text(encoding="utf-8")
    state=(ROOT/"routes"/"user_state.py").read_text(encoding="utf-8")
    assert '"/api/sidebar/datasets/{group}/{source_key}"' in datasets
    assert '"/api/sidebar/datasets/quality"' in datasets
    assert '"/api/sidebar/project-package/build"' in package
    assert '"/api/sidebar/project-package/download/{token}"' in package
    assert '"/api/sidebar/workspace"' in state
    assert '"/api/sidebar/favorites"' in state