File size: 1,361 Bytes
3353b43
 
 
 
c175ac0
3353b43
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
from pathlib import Path
ROOT=Path(__file__).resolve().parents[1]

def test_version():
    assert (ROOT/'VERSION').read_text(encoding='utf-8').strip()=='4.6.20'

def test_new_query_slot_reset():
    rt=(ROOT/"services"/"chat_runtime.py").read_text(encoding="utf-8")
    assert "def _is_explicit_new_data_query" in rt
    assert "def _reset_optional_slots_for_new_query" in rt
    assert 'for key in ("depth","layer","format")' in rt
    assert "and (not is_new_query)" in rt

def test_surface_only_preflight():
    rt=(ROOT/"services"/"chat_runtime.py").read_text(encoding="utf-8")
    assert "def _ocean_surface_only_depth_conflict" in rt
    assert "OISST / SST 是表层海温产品" in rt
    assert "depth_conflict" in rt

def test_multitask_final_render():
    js=(ROOT/"static"/"js"/"app.js").read_text(encoding="utf-8")
    assert "## 多任务执行结果" in js
    assert 'addMessage("assistant",finalAnswer' in js
    assert "parallel-final" in js

def test_partial_failure_still_finalizes():
    js=(ROOT/"static"/"js"/"app.js").read_text(encoding="utf-8")
    assert "const successCount=results.filter(x=>!x.error).length" in js
    assert "const failCount=results.length-successCount" in js

def test_done_payload_fallbacks():
    js=(ROOT/"static"/"js"/"app.js").read_text(encoding="utf-8")
    assert "E.d.answer" in js and "E.d.content" in js