summaryrefslogtreecommitdiff
path: root/tests/lib
Commit message (Collapse)AuthorAge
* Test suite: Pass --force-distribution to dchIan Jackson2016-11-07
| | | | | | If it's wrong, we know what we're doing. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Introduce $t_archive_methodIan Jackson2016-11-06
| | | | | | | | | * Indirect t-archive-none and t-archive-query via this variable * Rename t-archive-updated; it is for callers that have updated aq/package.$suite.$p. There is one out-of-lib caller. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Change t-has-parent to t-has-parent-or-isIan Jackson2016-10-30
| | | | | | | | | This is only used by the inarchivecopy test. And that ought not to fail if there is no into-suite pseudomerge: that is, when the suite branch contains the intended commit, rather than something merging the intended commit into the suite branch. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-splitbrain-pushed-good--unpack: Handle new .origsIan Jackson2016-10-30
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Test --dgit-view-save everywhereIan Jackson2016-10-30
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Make t-ref-same* errors better by tracking and printing namesIan Jackson2016-10-30
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Make t-refs-same* not wrongly ignore some nonexistent refsIan Jackson2016-10-30
| | | | | | | | | | Previously, t_ref_val="" was meant to mean "no refs specified yet" but could also arise from "ref was specified but did not exist". Distinguish these two cases, by using t_ref_val="" to mean only the latter. "No refs specified yet" is represented as t_ref_val unset. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Provide t-has-parentIan Jackson2016-10-30
| | | | | | No callers yet. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Document args to t-has-ancestorIan Jackson2016-10-30
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-archive-process-incoming: Process everythingIan Jackson2016-10-30
| | | | | | | | | | | The previous rune wouldn't process any new .origs. And in fact there is no good reason to restrict this. certainly not right now, because right now we are going to want to process whatever is in incoming so that the orig-include-exclude test can easily see what dgit push uploaded. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* default config: Switch to new archive/ tag formatIan Jackson2016-10-22
| | | | | | | Even in non-split-brain mode. Also change the test suite to expect this. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Introduce setup/gnupgIan Jackson2016-10-22
| | | | | | | To work around #841143 and improve performance by amortising gnupg migration cost. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Propagate tmpbase into nested (setup) runsIan Jackson2016-10-22
| | | | | | | This stops t-setup-import wrongly deciding we are in ADT non-shared mode. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: setup import: Cope with nested and multiple importsIan Jackson2016-10-22
| | | | | | | | | | Name the IMPORT file after the setup name. This is important when running under autopkgtest, where all the setups share the tmp directory with each other and with the main test. The setups need distinct IMPORTS. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-gbp-example-prep-no-ff: break out from t-gbp-example-prepIan Jackson2016-10-18
| | | | | | No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Filter out .../git-core from PATH so that we catch git-fooIan Jackson2016-10-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* git- prefixes: Test suite: Fix t-gbp-example-prepIan Jackson2016-10-16
| | | | | | Broken ever since it was introduced. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Do not fail when git requires --allow-unrelated-histories.Ian Jackson2016-10-16
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Fix entirely-broken tstunt PERLLIB arrangementsIan Jackson2016-10-15
| | | | | | | | | | | | Specifically: * Properly dereference the variable when looking for the stunt dir to be there already * Do not add "." to the path if the path starts out empty. * Crash _with the right message_ in dpkg-parsechangelog if PERLLIB is unset. (PERLLIB mustn't be unset because we're trying to strip our own value from it.) Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Make t-archive-none idempotentIan Jackson2016-10-08
| | | | | | | No overall functional change just yet, but it means we can wipe our test archives. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Make t-newtag specify maint tooIan Jackson2016-09-26
| | | | | | | | Since actually several tests which use t-newtag are quilty split brain ones which technically require it, although nothing checks this right now. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Test --quilt=unapplied and --quilt=dpmIan Jackson2016-09-26
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-gbp-pushed-good: Refactor (nfc)Ian Jackson2016-09-26
| | | | | | | Provide various t-splitbrain-*. These will be needed for tests of --quilt=unapplied and --quilt=dpm. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Add t-tstunt-parsechangelog to a couple of testsIan Jackson2016-09-25
| | | | | | inarchivecopy and the quilt-gbp tests just use the `example' package. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Split brain: Test suite: quilt-gbp: Check that DEP-14 tag was pushedIan Jackson2016-09-25
| | | | | | Test that we pushed the maintainer view as well as the dgit view. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: quilt-gbp: Provide and use t-gbp-pushed-goodIan Jackson2016-09-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Break out t-incoming-dsc (nfc)Ian Jackson2016-09-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Break out t-pushed-good-core (nfc)Ian Jackson2016-09-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-output: support expecting empty filesIan Jackson2016-09-11
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Provide t-sametree-parentIan Jackson2016-09-06
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-commit: honour $majorv for major versionIan Jackson2016-09-05
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Honour t_dgit_xoptsIan Jackson2016-09-05
| | | | | | No callers. This may come in useful, though, at some point. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-setup-*: Fix lock pathIan Jackson2016-09-05
| | | | | | Needs to be not in a directory which may not exist yet. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Provide t-setup-* machineryIan Jackson2016-09-05
| | | | | | | | | | | | | | | | | | | | | Setups are, essentially, prefixes to test cases. We arrange to be able to reuse their state (as explicitly recorded in t-setup-done), so that manual runs of the test suite can be faster. We save the tmp base directory (the directory shared by tests), if there is one. That will be used for cacheing of setups. And we save the environment in form we can use xargs and env to restore. We use a conventional with-lock-ex and stamp file pattern for the cache. The IMPORT file (containing shell variables) doubles as the stamp. The setup execution rune is exciting. This mostly results from the fact that we want xargs to pass all the env vars to env, and that xargs cannot be persuaded to append fixed arguments to the arguments read from its input file. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-commit: Permit specification of the suite in $3Ian Jackson2016-09-05
| | | | | | | | | This also means that we need to default $2 with ${2:-} since callers want need to pass an empty value for the version, to get the default. No functional change since none of the call sites use this yet. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-pushed-good: Support other suitesIan Jackson2016-09-05
| | | | | | | | Honour $2 being the suite codename, defaulting to sid. No functional change, since no-one passes this argument right now. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-archive-none: Support multiple suitesIan Jackson2016-09-05
| | | | | | | | | | t-archive-none now honours `suitespecs', which defaults to just `sid:unstable'. No overall functional change since no-one sets suitespecs to a non-default value. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Split tags: Push the maintainer view tag, where supportedIan Jackson2016-09-05
| | | | | | | | | | | | | | | | | We introduce a new `maint' possibility in to the dgit-tag-format access cfg list, presence of which indicates that the receiver is content to receive DEP-14-style maintainer-view (ie, non-dgit0 tags. For now, we default this to true. However, repos handled by dgit-repos-server cannot currently cope with this, because: * dgit-repos-server currently tries to be compatible with old dgits which send DEP-14-named dgit tags; * dgit-repos-server doesn't currently permit the creation of `extraneous' (ie, non-dgit) tags and branches. So for Debian, we do not set this flag. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Canonicalise json output when generating aqIan Jackson2016-08-14
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Test pushing with forcing old and new tag formatIan Jackson2016-07-31
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Tag change: Test suite: Introduce $tagpfxIan Jackson2016-07-31
| | | | | | | | | | | | | | Currently this is `test-dummy' (the distro the tests work with). Have checked that after this commit find tests -type f | xargs perl -i~ -pe 's/\$tagpfx/test-dummy/g' puts everything back. (This does not prove I have changed the right set of occurrences, but it does suggest that each actual change is good.) No functional change. Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Print better info on t-ref-same failureIan Jackson2016-07-31
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: Print better info on failuresIan Jackson2016-07-31
| | | | Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
* Test suite: t-gbp-example-prep: Arrange to be FF from the archiveIan Jackson2016-07-16
| | | | Otherwise pushes will necessarily (spuriously) fail.
* Test suite: unapplied-pq2qc: leave us on the qc/ branchIan Jackson2016-07-16
| | | | | The patch queue branch is not really very useful. Certainly, the build tests will require the patch queue branch.
* Test suite: Provide t-gbp-example-prep [FOLD INTO QUILT-GBP TEST?]Ian Jackson2016-07-16
| | | | | This function is useful for setting up a test case --quilt=gbp working tree and corresponding archive contents, ready for substantive tests.
* Test suite: unapplied-pq2qc: move into lib as a t- subroutineIan Jackson2016-07-16
|
* Test suite: lib t-untar of an edited tartree: do not hardlinkIan Jackson2016-07-03
| | | | | | Some of the tools we use, it turns out, do not update properly: they overwrite in place. This can cause inadvertant changes to a tartree opened for editing.
* Set GIT_COMMITTER_DATE and GIT_AUTHOR_DATEIan Jackson2016-07-01
| | | | | | | | | | | | | | This avoids most date dependencies: unless other measures are taken, the commits and tags are identical iff they are constructed identically. This makes the test suite more deterministic. In drs-push-rejects test, increment them explicitly, so as to make all of mktag's tags distinct objects. Otherwise it can generate identical tags (now, always; previously, only sometimes on fast computers), causing spurious variations in behaviour (eg, things not being rejected because they do not represent any change).
* Test suite: Honour DGIT_TEST_DEBUG=''.Ian Jackson2015-07-26
|