diff options
-rw-r--r-- | debian/changelog | 10 | ||||
-rwxr-xr-x | debian/rules | 16 |
2 files changed, 24 insertions, 2 deletions
diff --git a/debian/changelog b/debian/changelog index 2d25dc0..263b05e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +puppetlabs-ring-middleware-clojure (1.0.0-2) UNRELEASED; urgency=medium + + * Fix FTBFS by running tests in a specific order. Instead of blindly + (reverse-)sorting the results of the find command and trusting it to + be right, encode a suitable sequence of tests (Closes: #917600). Also + make sure to error out when tests are added or removed, to make sure + this sequence get refreshed when needed. + + -- Cyril Brulebois <kibi@debian.org> Sat, 29 Dec 2018 01:32:58 +0000 + puppetlabs-ring-middleware-clojure (1.0.0-1) unstable; urgency=medium * Initial release (Closes: #855738) diff --git a/debian/rules b/debian/rules index f69ebfd..43cfbfb 100755 --- a/debian/rules +++ b/debian/rules @@ -23,9 +23,21 @@ override_jh_clean: rm -f $(CURDIR)/$(PRODUCED_JAR) rm -rf $(CURDIR)/doc/html +# Tests can't run in a random order (#917600): +override_dh_auto_test: ORDERED_TESTS=puppetlabs/ring_middleware/utils_test.clj puppetlabs/ring_middleware/testutils/common.clj puppetlabs/ring_middleware/core_test.clj +override_dh_auto_test: EXPECTED=$(shell echo "$(ORDERED_TESTS)" | sed 's/ /\n/g' | sort | xargs) +override_dh_auto_test: FOUND=$(shell cd test && find -name '*.clj' | sed 's,^[.]/,,' | sort | xargs) override_dh_auto_test: - (cd test && find . -name '*.clj' | \ - xargs --verbose clojure -cp $(CURDIR)/$(PRODUCED_JAR):$(CLASSPATH):$(TEST_CLASSPATH)) + # Make sure to detect when tests appear or disappear: + @if [ "$(FOUND)" != "$(EXPECTED)" ]; then \ + echo "E: sanity check failed, available tests don't match known tests:"; \ + echo " - found: $(FOUND)"; \ + echo " - expected: $(EXPECTED)"; \ + echo "=> Please update ORDERED_TESTS in debian/rules accordingly"; \ + exit 1; \ + fi + # Run tests: + (cd test && clojure -cp $(CURDIR)/$(PRODUCED_JAR):$(CLASSPATH):$(TEST_CLASSPATH) $(ORDERED_TESTS)) %.html:%.md cat debian/header.html > $@ |