Files
dvc/tests/func/test_diff.py
T

87 lines
2.5 KiB
Python

import pytest
def test_no_scm(tmp_dir, dvc):
tmp_dir.dvc_gen("file", "text")
pytest.skip("TODO: define behavior, should it fail?")
def test_added(tmp_dir, scm, dvc):
tmp_dir.dvc_gen("file", "text")
pytest.skip("TODO: define output structure")
def test_deleted(tmp_dir, scm, dvc):
tmp_dir.dvc_gen("file", "text", commit="add file")
(tmp_dir / "file").unlink()
pytest.skip("TODO: define output structure")
def test_modified(tmp_dir, scm, dvc):
tmp_dir.dvc_gen("file", "first", commit="first version")
tmp_dir.dvc_gen("file", "second")
pytest.skip("TODO: define output structure")
def test_refs(tmp_dir, scm, dvc):
tmp_dir.dvc_gen("file", "first", commit="first version")
tmp_dir.dvc_gen("file", "second", commit="second version")
tmp_dir.dvc_gen("file", "third", commit="third version")
# dvc.diff("HEAD~1") --> (third, second)
# dvc.diff("HEAD~1", "HEAD~2") --> (second, first)
# dvc.diff("missing") --> error
pytest.skip("TODO: define output structure")
def test_target(tmp_dir, scm, dvc):
tmp_dir.dvc_gen("foo", "foo")
tmp_dir.dvc_gen("bar", "bar")
scm.add([".gitignore", "foo.dvc", "bar.dvc"])
scm.commit("lowercase")
tmp_dir.dvc_gen("foo", "FOO")
tmp_dir.dvc_gen("bar", "BAR")
scm.add(["foo.dvc", "bar.dvc"])
scm.commit("uppercase")
# dvc.diff("HEAD~1", target="foo")
# dvc.diff("HEAD~1", target="missing") --> error
pytest.skip("TODO: define output structure")
def test_directories(tmp_dir, scm, dvc):
tmp_dir.dvc_gen({"dir": {"1": "1", "2": "2"}}, commit="add a directory")
tmp_dir.dvc_gen({"dir": {"2": "2"}}, commit="delete a file")
tmp_dir.dvc_gen({"dir": {"2": "two"}}, commit="modify a file")
tmp_dir.dvc_gen({"dir": {"2": "two", "3": "3"}}, commit="add a file")
# dvc.diff(":/directory", ":/init") --> (add: dir/1, dir/2)
# dvc.diff(":/delete", ":/directory") --> (deleted: dir/1)
# dvc.diff(":/modify", ":/directory") --> (modified: dir/2)
# dvc.diff(":/modify", ":/delete") --> (add: dir/3)
# dvc.diff(":/add a file", ":/modify")
pytest.skip("TODO: define output structure")
def test_cli(tmp_dir, scm, dvc):
tmp_dir.dvc_gen("file", "text")
# main(["diff"])
pytest.skip("TODO: define output structure")
def test_json(tmp_dir, scm, dvc):
# result = {
# "added": {...},
# "renamed": {...},
# "modified": {...},
# "deleted": {...},
# }
# main(["diff", "--json"])
pytest.skip("TODO: define output structure")