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.
 

12 lines
945 B

from pathlib import Path
from src.analysis_reporter import AnalysisReporter
from src.config_loader import AnalysisSettings
from src.models import AnalysisResult,AnalysisRunSummary,ResponseRateTestResult
def cfg(path:Path,overwrite:bool=True)->AnalysisSettings:return AnalysisSettings(True,"in",str(path),True,True,True,True,"weak","auto","mannwhitney","valid_turn_analysis",False,overwrite,.05)
def empty(path:Path)->AnalysisResult:return AnalysisResult([],ResponseRateTestResult("none",0,0,0,0,None,None,None,None,None,"none",None,None,"empty"),[],[],[],AnalysisRunSummary("a",0,0,0,0,0,0,"t",str(path),"日本語"))
def test_six_bom_csvs_and_overwrite(tmp_path:Path)->None:
paths=AnalysisReporter(cfg(tmp_path)).write(empty(tmp_path));assert len(paths)==6 and all(p.read_bytes().startswith(b"\xef\xbb\xbf") for p in paths)
try:AnalysisReporter(cfg(tmp_path,False)).write(empty(tmp_path));assert False
except FileExistsError:pass