File: tasty-rerun.cabal

package info (click to toggle)
haskell-tasty-rerun 1.1.12-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 68 kB
  • sloc: haskell: 163; makefile: 2
file content (87 lines) | stat: -rw-r--r-- 3,084 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
name:                tasty-rerun
version:             1.1.12
homepage:            http://github.com/ocharles/tasty-rerun
license:             BSD3
license-file:        LICENSE
author:              Oliver Charles
maintainer:          ollie@ocharles.org.uk
copyright:           Oliver Charles (c) 2014
category:            Testing
build-type:          Simple
cabal-version:       >=1.10
extra-source-files:
  Changelog.md

synopsis:
  Run tests by filtering the test tree depending on the result of previous test
  runs

description:
  This ingredient adds the ability to run tests by first filtering the test tree
  based on the result of a previous test run. For example, you can use this to
  run only those tests that failed in the last run, or to run only tests that
  have been added since tests were last ran.
  .
  This ingredient is specifically an ingredient *transformer* - given a list of
  'Tasty.Ingredient's, 'rerunningTests' adds the ability for all of these
  ingredients to run against a filtered test tree. This transformer can be
  applied as follows:
  .
  > import Test.Tasty
  > import Test.Tasty.Runners
  >
  > main :: IO ()
  > main =
  >   defaultMainWithIngredients
  >     [ rerunningTests [ listingTests, consoleTestReporter ] ]
  >     tests
  >
  > tests :: TestTree
  > tests = undefined
  .
  This ingredient adds three command line parameters:
  .
  [@--rerun-update@] If specified the results of this test run will be saved to
  the log file at @--rerun-log-file@. If the ingredient does not execute tests
  (for example, @--list-tests@ is used) then the log file will not be
  updated. This option is not enabled by default.  This option does not require
  a value.
  .
  [@--rerun-log-file@] The path to the log file to read previous test
  information from, and where to write new information to (if @--rerun-update@
  is specified). This option defaults to @.tasty-rerun-log@.
  .
  [@--rerun-filter@] Which filters to apply to the 'Tasty.TestTree' based on
  previous test runs. The value of this option is a comma separated list of the
  following options:
  .
     * @failures@: Only run tests that failed on the previous run.
  .
     * @exceptions@: Only run tests that threw an exception on the previous run.
  .
     * @new@: Only run tests that are new since the previous test run.
  .
     * @successful@: Only run tests that were successful in the previous run.
  .
  Multiple options can be combined and will be taken under disjunction - so
  @--rerun-filter=failures,exceptions@ will run only tests that failed *or*
  threw an exception on the last run.
  .
  Defaults to all filters, which means all tests will be ran.

library
  exposed-modules:     Test.Tasty.Ingredients.Rerun
  build-depends:
    base >=4.6 && <4.12,
    containers >= 0.5.0.0,
    mtl >= 2.1.2,
    optparse-applicative >= 0.6,
    reducers >= 3.10.1,
    split >= 0.1 && < 0.3,
    stm >= 2.4.2,
    tagged >= 0.7 && <0.9,
    tasty >=0.10 && <1.2,
    transformers >= 0.3.0.0
  hs-source-dirs:      src
  default-language:    Haskell2010
  ghc-options: -Wall