diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_repository.py | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/test_repository.py b/tests/test_repository.py new file mode 100644 index 0000000..60c4cc4 --- /dev/null +++ b/tests/test_repository.py @@ -0,0 +1,38 @@ +from dotfiles.dotfile import Dotfile +from dotfiles.repository import Repository + + +def test_list(tmpdir): + + repo = tmpdir.ensure("Dotfiles", dir=1) + name = tmpdir.join(".vimrc") + target = repo.ensure("vimrc") + + dotfile = Dotfile(name, target) + repository = Repository(repo, tmpdir) + + # manual discovery + repository.dotfiles = [dotfile, dotfile, dotfile] + + expected_list = ("\n" + ".vimrc -> Dotfiles/vimrc (unknown)\n" + ".vimrc -> Dotfiles/vimrc (unknown)\n" + ".vimrc -> Dotfiles/vimrc (unknown)") + + assert expected_list == str(repository) + + +def test_discovery(tmpdir): + + repo = tmpdir.ensure("Dotfiles", dir=1) + + tmpdir.join('.bashrc').mksymlinkto(repo.ensure('bashrc')) + tmpdir.join('.vimrc').mksymlinkto(repo.ensure('vimrc')) + + repository = Repository(repo, tmpdir) + + expected_list = ("\n" + ".bashrc -> Dotfiles/bashrc (unknown)\n" + ".vimrc -> Dotfiles/vimrc (unknown)") + + assert expected_list == str(repository) |