def test_multiple_truth(): reference = { 'pst': { 'burn': {'burned', 'burnt'}, 'shrink': {'shrank', 'shrunk'} } } evaluator = Evaluator(reference) prediction = {'one': {'burn': 'burnt', 'shrink': 'shrunk'}} assert evaluator.score(prediction) == 1
def test_load(tmp_path): ref_file = os.path.join(tmp_path, 'test.gold') prd_file = os.path.join(tmp_path, 'test.pred') # The same test case as `test_basic`, but written to file with open(ref_file, 'w') as f: print('get', 'gets', '3sg.prs', sep='\t', file=f) print('get', 'got', 'pst', sep='\t', file=f) print('set', 'sets', '3sg.prs', sep='\t', file=f) print('set', 'set', 'pst', sep='\t', file=f) with open(prd_file, 'w') as f: print('get', 'gets', '3sg.prs', sep='\t', file=f) print('get', 'get', 'pst', sep='\t', file=f) print('set', 'sets', '3sg.prs', sep='\t', file=f) print('set', 'set', 'pst', sep='\t', file=f) evaluator = Evaluator(load_reference(ref_file)) assert evaluator.score(load_prediction(prd_file)) == 0.75