From 3c4a553e4c45f5232f971d664445e07ee94a074a Mon Sep 17 00:00:00 2001 From: Jon Bernard Date: Tue, 29 Dec 2015 14:57:31 -0500 Subject: Add repository class rework This version of the repository class uses py.path.local and I have an idea for packages that should simplify the code substantially and address the remaining issues with prefixes. --- tests/test_repository.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 tests/test_repository.py (limited to 'tests') 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) -- cgit v1.2.3