mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-02 07:18:25 +01:00
Rename _all to all_ remove some tricky func test.
This commit is contained in:
committed by
Peter Rowlands (변기호)
parent
b37524603a
commit
02681f2e65
@@ -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,
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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() == []
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user