Rename _all to all_ remove some tricky func test.

This commit is contained in:
karajan1001
2022-07-12 21:39:49 +09:00
committed by Peter Rowlands (변기호)
parent b37524603a
commit 02681f2e65
5 changed files with 22 additions and 67 deletions
+1 -1
View File
@@ -14,7 +14,7 @@ class CmdQueueRemove(CmdBase):
def run(self):
removed_list = self.repo.experiments.celery_queue.remove(
revs=self.args.task,
_all=self.args.all,
all_=self.args.all,
success=self.args.success,
queued=self.args.queued,
failed=self.args.failed,
+2 -2
View File
@@ -131,7 +131,7 @@ def remove(
queued: bool = False,
failed: bool = False,
success: bool = False,
_all: bool = False,
all_: bool = False,
) -> List[str]:
"""Remove the specified entries from the queue.
@@ -145,7 +145,7 @@ def remove(
Returns:
Revisions (or names) which were removed.
"""
if _all:
if all_:
queued = failed = success = True
if queued or failed or success:
return self.clear(failed=failed, success=success, queued=queued)
+17 -62
View File
@@ -11,22 +11,6 @@ def to_dict(tasks):
return status_dict
@pytest.fixture
def queued_tasks(tmp_dir, dvc, scm, exp_stage):
queue_length = 3
name_list = []
for i in range(queue_length):
name = f"queued{i}"
name_list.append(name)
dvc.experiments.run(
exp_stage.addressing,
params=[f"foo={i+2*queue_length}"],
queue=True,
name=name,
)
return ["queued0", "queued1", "queued2"]
@pytest.fixture
def success_tasks(tmp_dir, dvc, scm, test_queue, exp_stage):
queue_length = 3
@@ -42,7 +26,7 @@ def success_tasks(tmp_dir, dvc, scm, test_queue, exp_stage):
@pytest.fixture
def failed_tasks(tmp_dir, dvc, scm, test_queue, failed_exp_stage, capsys):
def failed_tasks(tmp_dir, dvc, scm, test_queue, failed_exp_stage):
queue_length = 3
name_list = []
for i in range(queue_length):
@@ -55,8 +39,6 @@ def failed_tasks(tmp_dir, dvc, scm, test_queue, failed_exp_stage, capsys):
name=name,
)
dvc.experiments.run(run_all=True)
output = capsys.readouterr()
assert "Failed to reproduce experiment" in output.err
return name_list
@@ -82,68 +64,41 @@ def test_celery_logs(
assert "failed to reproduce 'failed-copy-file'" in captured.out
def test_queue_status(dvc, failed_tasks, success_tasks, queued_tasks):
assert len(dvc.experiments.stash_revs) == 3
def test_queue_remove_done(dvc, failed_tasks, success_tasks):
assert len(dvc.experiments.celery_queue.failed_stash) == 3
status = to_dict(dvc.experiments.celery_queue.status())
assert len(status) == 9
for task in failed_tasks:
assert status[task] == "Failed"
for task in success_tasks:
assert status[task] == "Success"
for task in queued_tasks:
assert status[task] == "Queued"
def test_queue_remove(dvc, failed_tasks, success_tasks, queued_tasks):
assert len(dvc.experiments.stash_revs) == 3
assert len(dvc.experiments.celery_queue.failed_stash) == 3
assert len(dvc.experiments.celery_queue.status()) == 9
assert len(status) == 6
for name in failed_tasks:
assert status[name] == "Failed"
for name in success_tasks:
assert status[name] == "Success"
with pytest.raises(InvalidArgumentError):
dvc.experiments.celery_queue.remove(failed_tasks[:2] + ["non-exist"])
assert len(dvc.experiments.celery_queue.status()) == 9
assert len(dvc.experiments.celery_queue.status()) == 6
to_remove = failed_tasks[:2] + success_tasks[1:] + queued_tasks[1:2]
to_remove = [failed_tasks[0], success_tasks[2]]
assert set(dvc.experiments.celery_queue.remove(to_remove)) == set(
to_remove
)
assert len(dvc.experiments.stash_revs) == 2
assert len(dvc.experiments.celery_queue.failed_stash) == 1
assert len(dvc.experiments.celery_queue.failed_stash) == 2
status = to_dict(dvc.experiments.celery_queue.status())
assert set(status) == set(
queued_tasks[:1]
+ queued_tasks[2:]
+ success_tasks[:1]
+ failed_tasks[2:]
)
assert status[queued_tasks[0]] == "Queued"
assert status[queued_tasks[2]] == "Queued"
assert (
dvc.experiments.celery_queue.remove([], queued=True)
== queued_tasks[:1] + queued_tasks[2:]
)
assert len(dvc.experiments.stash_revs) == 0
assert len(dvc.experiments.celery_queue.failed_stash) == 1
assert len(dvc.experiments.celery_queue.status()) == 2
assert set(status) == set(failed_tasks[1:] + success_tasks[:2])
assert (
dvc.experiments.celery_queue.remove([], failed=True)
== failed_tasks[2:]
== failed_tasks[1:]
)
assert len(dvc.experiments.stash_revs) == 0
assert len(dvc.experiments.celery_queue.failed_stash) == 0
assert len(dvc.experiments.celery_queue.status()) == 1
assert set(to_dict(dvc.experiments.celery_queue.status())) == set(
success_tasks[:2]
)
assert (
dvc.experiments.celery_queue.remove([], success=True)
== success_tasks[:1]
== success_tasks[:2]
)
assert len(dvc.experiments.stash_revs) == 0
assert len(dvc.experiments.celery_queue.failed_stash) == 0
assert len(dvc.experiments.celery_queue.status()) == 0
assert dvc.experiments.celery_queue.status() == []
+1 -1
View File
@@ -33,7 +33,7 @@ def test_experiments_remove(dvc, scm, mocker):
assert cmd.run() == 0
remove_mocker.assert_called_once_with(
revs=["exp1", "exp2"],
_all=True,
all_=True,
success=True,
failed=True,
queued=True,
@@ -129,5 +129,5 @@ def test_remove_all(test_queue, mocker):
clear_mocker = mocker.patch.object(
test_queue, "clear", return_value=mocker.Mock()
)
test_queue.remove([], _all=True)
test_queue.remove([], all_=True)
assert clear_mocker.called_once_with(queud=True, failed=True, success=True)