diff options
author | Guido Günther <agx@sigxcpu.org> | 2016-11-04 15:37:07 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2016-11-04 15:47:54 +0100 |
commit | ced46db062f8e38c0eed7d1feb6e6e8b0d6435f9 (patch) | |
tree | 6fda6af97a5ebe6dbfd79c8d04964611b49b0104 /tests/doctests/test_PristineTar.py | |
parent | 42657fcf8adb17d63ae904b5cd8abd44388b881e (diff) |
tests: Move doctests to subdir
Diffstat (limited to 'tests/doctests/test_PristineTar.py')
-rw-r--r-- | tests/doctests/test_PristineTar.py | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/tests/doctests/test_PristineTar.py b/tests/doctests/test_PristineTar.py new file mode 100644 index 00000000..ab94ca1c --- /dev/null +++ b/tests/doctests/test_PristineTar.py @@ -0,0 +1,158 @@ +# vim: set fileencoding=utf-8 : +""" +Test pristine-tar related methods in + + - L{gbp.deb.DebianPristineTar} + +and + + - L{gbp.deb.git.DebianGitRepository} + +This testcase creates this reposity: + + - A repository at I{dirs['repo']} called I{repo} + +""" + +import os +from .. import context + + +test_data = os.path.join(context.projectdir, "tests/test_PristineTar_data") +dirs = {} + + +def setup_module(): + dirs['repo'] = context.new_tmpdir(__name__).join('repo') + + +def teardown_module(): + del dirs['repo'] + context.teardown() + + +def test_create(): + """ + Create a repository + + Methods tested: + - L{gbp.deb.git.DebianGitRepository.create} + + >>> import os, gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository.create(dirs['repo']) + """ + + +def test_empty_repo(): + """ + Empty repos have no branch pristine-tar branch + + Methods tested: + - L{gbp.deb.git.DebianGitRepository.has_pristine_tar_branch} + - L{gbp.deb.pristinetar.DebianPristineTar.has_commit} + + >>> import gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository(dirs['repo']) + >>> repo.has_pristine_tar_branch() + False + >>> repo.pristine_tar.has_commit('upstream', '1.0', 'gzip') + False + """ + + +def test_commit_dir(): + """ + Empty repos have no branch pristine-tar branch + + Methods tested: + - L{gbp.git.repository.GitRepository.commit_dir} + - L{gbp.git.repository.GitRepository.create_branch} + + >>> import gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository(dirs['repo']) + >>> commit = repo.commit_dir(test_data, msg="initial commit", branch=None) + >>> repo.create_branch('upstream') + """ + + +def test_create_tarball(): + """ + Create a tarball from a git tree + + Methods tested: + - L{gbp.deb.git.DebianGitRepository.archive} + + >>> import gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository(dirs['repo']) + >>> repo.archive('tar', 'upstream/', '../upstream_1.0.orig.tar', 'upstream') + >>> gbp.command_wrappers.Command('gzip', [ '-n', '%s/../upstream_1.0.orig.tar' % dirs['repo']])() + """ + + +def test_pristine_tar_commit(): + """ + Commit the delta to the pristine-tar branch + + Methods tested: + - L{gbp.deb.pristinetar.DebianPristineTar.commit} + + >>> import gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository(dirs['repo']) + >>> repo.pristine_tar.commit('../upstream_1.0.orig.tar.gz', 'upstream') + """ + + +def test_pristine_has_commit(): + """ + Find delta on the pristine tar branch + + Methods tested: + - L{gbp.deb.pristinetar.DebianPristineTar.has_commit} + - L{gbp.pkg.pristinetar.PristineTar.get_commit} + + >>> import gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository(dirs['repo']) + >>> repo.pristine_tar.has_commit('upstream', '1.0', 'bzip2') + False + >>> repo.pristine_tar.has_commit('upstream', '1.0', 'gzip') + True + >>> repo.pristine_tar.has_commit('upstream', '1.0') + True + >>> branch = repo.rev_parse('pristine-tar') + >>> commit = repo.pristine_tar.get_commit('upstream_1.0.orig.tar.gz') + >>> branch == commit + True + """ + + +def test_pristine_tar_checkout(): + """ + Checkout a tarball using pristine-tar + + Methods tested: + - L{gbp.deb.pristinetar.DebianPristineTar.checkout} + + >>> import gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository(dirs['repo']) + >>> repo.pristine_tar.checkout('upstream', '1.0', 'gzip', '..') + """ + + +def test_pristine_tar_checkout_nonexistent(): + """ + Checkout a tarball that does not exist using pristine-tar + + Methods tested: + - L{gbp.deb.pristinetar.DebianPristineTar.checkout} + + >>> import gbp.deb.git + >>> repo = gbp.deb.git.DebianGitRepository(dirs['repo']) + >>> repo.pristine_tar.checkout('upstream', '1.1', 'gzip', '..') + Traceback (most recent call last): + ... + CommandExecFailed: Pristine-tar couldn't checkout "upstream_1.1.orig.tar.gz": fatal: Path 'upstream_1.1.orig.tar.gz.delta' does not exist in 'refs/heads/pristine-tar' + pristine-tar: git show refs/heads/pristine-tar:upstream_1.1.orig.tar.gz.delta failed + """ + + +# vim:et:ts=4:sw=4:et:sts=4:ai:set list listchars=tab\:»·,trail\:·: |