Spaces:
Running on Zero
Running on Zero
| import sys | |
| from pathlib import Path | |
| sys.path.insert(0, str(Path(__file__).resolve().parent.parent / "tools" / "voxel-model-eval")) | |
| import eval as ev | |
| def test_parse_models_arg_single(): | |
| assert ev.parse_models_arg("Gemma4-12B=unsloth/gemma-4-12b-it-GGUF") == [ | |
| ("Gemma4-12B", "unsloth/gemma-4-12b-it-GGUF") | |
| ] | |
| def test_parse_models_arg_multiple(): | |
| out = ev.parse_models_arg("A=org/a,B=org/b") | |
| assert out == [("A", "org/a"), ("B", "org/b")] | |
| def test_parse_models_arg_empty_returns_empty(): | |
| assert ev.parse_models_arg("") == [] | |
| def test_parse_models_arg_tolerates_whitespace(): | |
| assert ev.parse_models_arg(" A = org/a , B = org/b ") == [("A", "org/a"), ("B", "org/b")] | |
| def test_merge_rows_appends_new_model(): | |
| existing = [{"model": "A", "prompt": "cat"}] | |
| new = [{"model": "B", "prompt": "cat"}] | |
| assert ev.merge_rows(existing, new) == existing + new | |
| def test_merge_rows_overwrites_same_model(): | |
| # re-testing model A drops ALL its old rows (incl. other themes) then appends | |
| # the fresh run; model B is untouched. | |
| existing = [ | |
| {"model": "A", "prompt": "cat"}, | |
| {"model": "A", "prompt": "snake"}, | |
| {"model": "B", "prompt": "cat"}, | |
| ] | |
| new = [{"model": "A", "prompt": "cat"}, {"model": "A", "prompt": "snake"}] | |
| out = ev.merge_rows(existing, new) | |
| assert out == [{"model": "B", "prompt": "cat"}] + new | |
| # no duplicate A rows | |
| assert sum(1 for r in out if r["model"] == "A") == 2 | |
| def test_merge_rows_into_empty(): | |
| new = [{"model": "A", "prompt": "cat"}] | |
| assert ev.merge_rows([], new) == new | |