mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-02 07:18:25 +01:00
exp list: fix ui for tags/branches
This commit is contained in:
committed by
Peter Rowlands (변기호)
parent
1835c8c6e9
commit
bf2f08da09
@@ -25,7 +25,14 @@ class CmdExperimentsList(CmdBase):
|
||||
|
||||
for baseline in exps:
|
||||
if not (name_only or sha_only):
|
||||
ui.write(f"{baseline[:7]}:")
|
||||
tag_base = "refs/tags/"
|
||||
branch_base = "refs/heads/"
|
||||
name = baseline[:7]
|
||||
if baseline.startswith(tag_base):
|
||||
name = baseline[len(tag_base) :]
|
||||
elif baseline.startswith(branch_base):
|
||||
name = baseline[len(branch_base) :]
|
||||
ui.write(f"{name}:")
|
||||
for exp_name, rev in exps[baseline]:
|
||||
if name_only:
|
||||
ui.write(exp_name)
|
||||
|
||||
@@ -42,7 +42,7 @@ def ls(
|
||||
for baseline in ref_info_dict:
|
||||
name = baseline
|
||||
if tags[baseline] or ref_heads[baseline]:
|
||||
name = tags[baseline] or ref_heads[baseline][len(base) + 1 :]
|
||||
name = tags[baseline] or ref_heads[baseline]
|
||||
for info in ref_info_dict[baseline]:
|
||||
if git_remote:
|
||||
exp_rev = None
|
||||
|
||||
@@ -362,7 +362,7 @@ def test_list(tmp_dir, scm, dvc, exp_stage):
|
||||
exp_c = first(results)
|
||||
ref_info_c = first(exp_refs_by_rev(scm, exp_c))
|
||||
|
||||
assert dvc.experiments.ls() == {"master": [(ref_info_c.name, exp_c)]}
|
||||
assert dvc.experiments.ls() == {"refs/heads/master": [(ref_info_c.name, exp_c)]}
|
||||
|
||||
exp_list = dvc.experiments.ls(rev=ref_info_a.baseline_sha)
|
||||
assert {key: set(val) for key, val in exp_list.items()} == {
|
||||
@@ -372,20 +372,20 @@ def test_list(tmp_dir, scm, dvc, exp_stage):
|
||||
exp_list = dvc.experiments.ls(rev=[baseline_a, scm.get_rev()])
|
||||
assert {key: set(val) for key, val in exp_list.items()} == {
|
||||
baseline_a: {(ref_info_a.name, exp_a), (ref_info_b.name, exp_b)},
|
||||
"master": {(ref_info_c.name, exp_c)},
|
||||
"refs/heads/master": {(ref_info_c.name, exp_c)},
|
||||
}
|
||||
|
||||
exp_list = dvc.experiments.ls(all_commits=True)
|
||||
assert {key: set(val) for key, val in exp_list.items()} == {
|
||||
baseline_a: {(ref_info_a.name, exp_a), (ref_info_b.name, exp_b)},
|
||||
"master": {(ref_info_c.name, exp_c)},
|
||||
"refs/heads/master": {(ref_info_c.name, exp_c)},
|
||||
}
|
||||
|
||||
scm.checkout("branch", True)
|
||||
exp_list = dvc.experiments.ls(all_commits=True)
|
||||
assert {key: set(val) for key, val in exp_list.items()} == {
|
||||
baseline_a: {(ref_info_a.name, exp_a), (ref_info_b.name, exp_b)},
|
||||
"branch": {(ref_info_c.name, exp_c)},
|
||||
"refs/heads/branch": {(ref_info_c.name, exp_c)},
|
||||
}
|
||||
|
||||
|
||||
@@ -676,7 +676,7 @@ def test_experiment_unchanged(tmp_dir, scm, dvc, exp_stage):
|
||||
dvc.experiments.run(exp_stage.addressing)
|
||||
dvc.experiments.run(exp_stage.addressing)
|
||||
|
||||
assert len(dvc.experiments.ls()["master"]) == 2
|
||||
assert len(dvc.experiments.ls()["refs/heads/master"]) == 2
|
||||
|
||||
|
||||
def test_experiment_run_dry(tmp_dir, scm, dvc, exp_stage):
|
||||
|
||||
@@ -165,7 +165,7 @@ def test_list_remote(tmp_dir, scm, dvc, git_downstream, exp_stage, use_url):
|
||||
exp_list = downstream_exp.ls(all_commits=True, git_remote=remote)
|
||||
assert {key: set(val) for key, val in exp_list.items()} == {
|
||||
baseline_a: {(ref_info_a.name, None), (ref_info_b.name, None)},
|
||||
"master": {(ref_info_c.name, None)},
|
||||
"refs/heads/master": {(ref_info_c.name, None)},
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ def test_exp_save_after_commit(tmp_dir, dvc, scm):
|
||||
|
||||
all_exps = dvc.experiments.ls(all_commits=True)
|
||||
assert all_exps[baseline][0][0] == "exp-1"
|
||||
assert all_exps["master"][0][0] == "exp-2"
|
||||
assert all_exps["refs/heads/master"][0][0] == "exp-2"
|
||||
|
||||
|
||||
def test_exp_save_with_staged_changes(tmp_dir, dvc, scm):
|
||||
|
||||
@@ -198,7 +198,7 @@ def test_experiments_list_format(mocker, capsys, args, expected, dvc, scm):
|
||||
mocker.patch(
|
||||
"dvc.repo.experiments.ls.ls",
|
||||
return_value={
|
||||
"main": [
|
||||
"refs/heads/main": [
|
||||
("exp-a", "sha-a"),
|
||||
]
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user