You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
13 lines
1.0 KiB
13 lines
1.0 KiB
from pathlib import Path
|
|
from src.config_loader import UnifiedLogSettings
|
|
from src.models import UnifiedEvent,PersonAnalysisRecord,SessionSummary,LogConsistencyIssue
|
|
from src.unified_event_logger import UnifiedEventLogger
|
|
|
|
def test_four_csvs_bom_json_dedup(tmp_path:Path)->None:
|
|
c=UnifiedLogSettings(True,str(tmp_path),True,True,True,True,1,True,True,True,True,False,False,"",True)
|
|
l=UnifiedEventLogger(c,"exp","sid","stamp");l.open()
|
|
e=UnifiedEvent("exp","sid","id","system","x",None,1,"t",1.,metadata={"日本語":"値"})
|
|
l.write_events([e,e]);r=PersonAnalysisRecord("exp","sid",1);l.write_analysis([r,r]);s=SessionSummary("exp","sid","t");l.write_session(s);l.write_session(s);l.write_issues([LogConsistencyIssue("unknown","warning",1,None,"m",{"日":"本"})]);l.close();l.close()
|
|
assert len(list(tmp_path.glob("*.csv")))==4
|
|
assert all(p.read_bytes().startswith(b"\xef\xbb\xbf") for p in tmp_path.glob("*.csv"))
|
|
assert "日本語" in (tmp_path/"stamp_exp_unified_events.csv").read_text(encoding="utf-8-sig")
|
|
|