diff options
author | Joey Hess <joey@kitenet.net> | 2014-01-24 12:21:30 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2014-01-24 12:21:30 -0400 |
commit | 852f1f6cea85a7c781c8286f459023bdacebe021 (patch) | |
tree | dbeb0ad578c887343843fd9aa5853226863edf85 | |
parent | f2cdb5242d9a7f72f96656608cf3ee664748c68b (diff) |
tasty-rerun! make rerest runs much much faster than running whole test suite
-rw-r--r-- | Makefile | 5 | ||||
-rw-r--r-- | Test.hs | 5 | ||||
-rw-r--r-- | debian/changelog | 1 | ||||
-rw-r--r-- | debian/control | 1 | ||||
-rw-r--r-- | git-annex.cabal | 2 |
5 files changed, 10 insertions, 4 deletions
@@ -54,6 +54,9 @@ install: build install-docs Build/InstallDesktopFile test: git-annex ./git-annex test +retest: git-annex + ./git-annex test --rerun-update --rerun-filter failures + # hothasktags chokes on some template haskell etc, so ignore errors tags: find . | grep -v /.git/ | grep -v /tmp/ | grep -v /dist/ | grep -v /doc/ | egrep '\.hs$$' | xargs hothasktags > tags 2>/dev/null @@ -80,7 +83,7 @@ clean: doc/.ikiwiki html dist tags Build/SysConfig.hs build-stamp \ Setup Build/InstallDesktopFile Build/EvilSplicer \ Build/Standalone Build/OSXMkLibs Build/LinuxMkLibs Build/DistributionUpdate \ - git-union-merge + git-union-merge .tasty-rerun-log find . -name \*.o -exec rm {} \; find . -name \*.hi -exec rm {} \; @@ -13,6 +13,7 @@ import Test.Tasty import Test.Tasty.Runners import Test.Tasty.HUnit import Test.Tasty.QuickCheck +import Test.Tasty.Ingredients.Rerun import Data.Monoid import Options.Applicative hiding (command) @@ -106,7 +107,7 @@ main ps = do ingredients :: [Ingredient] ingredients = - [ consoleTestReporter + [ rerunningTests [consoleTestReporter] , listingTests ] @@ -1269,7 +1270,7 @@ withTestEnv forcedirect = withResource prepare release where prepare = do env <- prepareTestEnv forcedirect - case tryIngredients ingredients mempty (initTests env) of + case tryIngredients [consoleTestReporter] mempty (initTests env) of Nothing -> error "No tests found!?" Just act -> unlessM act $ error "init tests failed! cannot continue" diff --git a/debian/changelog b/debian/changelog index 420ae603b..02624414f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -29,6 +29,7 @@ git-annex (5.20140118) UNRELEASED; urgency=medium contents when a lot of them seem to be piling up in the repository. * repair: Check git version at run time. * assistant: Run the periodic git gc in batch mode. + * test suite: Use tasty-rerun, and expose tasty command-line options. -- Joey Hess <joeyh@debian.org> Sat, 18 Jan 2014 11:54:17 -0400 diff --git a/debian/control b/debian/control index 060fde22f..966d1e0ba 100644 --- a/debian/control +++ b/debian/control @@ -54,6 +54,7 @@ Build-Depends: libghc-tasty-dev (>= 0.7) [!mipsel !sparc], libghc-tasty-hunit-dev [!mipsel !sparc], libghc-tasty-quickcheck-dev [!mipsel !sparc], + libghc-tasty-rerun-dev [!mipsel !sparc], libghc-optparse-applicative-dev, lsof [!kfreebsd-i386 !kfreebsd-amd64], ikiwiki, diff --git a/git-annex.cabal b/git-annex.cabal index 2e95e0df6..151ac692e 100644 --- a/git-annex.cabal +++ b/git-annex.cabal @@ -114,7 +114,7 @@ Executable git-annex CPP-Options: -DWITH_CLIBS if flag(TestSuite) - Build-Depends: tasty (>= 0.7), tasty-hunit, tasty-quickcheck, + Build-Depends: tasty (>= 0.7), tasty-hunit, tasty-quickcheck, tasty-rerun, optparse-applicative CPP-Options: -DWITH_TESTSUITE |