cross-platform tool for testing command-line programs. The repo has moved: use https://github.com/simonmichael/shelltestrunner . (https://github.com/simonmichael/shelltestrunner)

root / CHANGES

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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
unreleased

  * shelltest --list ... lists the tests found
  * expose common test-framework features as native options
  * new shared-input test format, requiring fewer delimiters
  * show the command when tests fail (John Chee)
  * include tests in cabal sdist archive
  * allow utf8-string-1

1.3.4 (2014/5/28)

  * drop cabal-file-th, support GHC 7.8.2

1.3.3 (2014/5/25)

  * allow process 1.2, regex-tdfa-1.2
  * add a hackage-compatible changelog

1.3.2 (2013/11/13)

  * increase upper bound on Diff package

1.3.1 (2012/12/28)

  * fix cabal file typo breaking the build

1.3 (2012/12/28)

  * support latest Diff, cmdargs, test-framework; tested with GHC 7.6.1 (Magnus Therning)

  * fix unicode handling on GHC >= 7.2

1.2.1 (2012/3/12)

  * use the more up-to-date filemanip package for easier Debian packaging

1.2 (2012/2/26)

  * support latest cmdargs, test-framework, and GHC 7.4
  * more readable non-quoted failure output by default; for quoted output, use -p/--precise
  * the --all, --diff and --precise options now interact well

1.1 (2011/8/25)

  * bump process dependency to allow building with GHC 7.2.1
  * new -a/--all flag shows all failure output without truncating

1.0 (2011/7/23)

  * New home page/docs
  * The >>>= field is now required; you may need to add it to your existing tests
  * Input and expected output can now contain lines beginning with #
  * Multiple tests in a file may now have whitespace between them
  * The -i/--implicit option has been dropped
  * New -d/--diff option shows test failures as a unified diff when possible, including line numbers to help locate the problem
  * New -x/--exclude option skips certain test files (eg platform-specific ones)
  * Passing arguments through to test-framework is now more robust
  * Fixed: parsing could fail when input contained left angle brackets
  * Fixed: some test files generated an extra blank test at the end

0.9 (2010/9/3)

  * show plain non-ansi output by default, add --color option
  * better handling of non-ascii test data. We assume that non-ascii file
    paths, command-line arguments etc. are UTF-8 encoded on unix systems
    (cf http://www.dwheeler.com/essays/fixing-unix-linux-filenames.html),
    and that GHC 6.12 or greater is used. Then:
    - non-ascii test file paths should render correctly, eg in failure messages
    - non-ascii test commands should run correctly
    - non-ascii expected output should match correctly
    - non-ascii regular expressions should match correctly. (Caveat: not
      thoroughly tested, this may break certain regexps, )
  * use regex-tdfa instead of pcre-light for better windows compatibility
    To avoid a memory leak in current regex-tdfa, only regular expressions
    up to 300 characters in size are supported. Also, DOTALL is no longer
    enabled and probably fewer regexp constructs are supported.  There are
    still issues on windows/wine but in theory this will help.
  * tighten up dependencies

0.8 (2010/4/9)

  * rename executable to shelltest. The package might also be renamed at some point.
  * better built-in help
  * shell tests now include a full command line, making them more readable
    and self-contained. The --with option can be used to replace the first
    word with something else, unless the test command line begins with a
    space.
  * we also accept directory arguments, searching for test files below
    them, with two new options:
      --execdir        execute tested command in same directory as test file
      --extension=EXT  file extension of test files (default=.test)

0.7 (2010/3/5)

  * more robust parsing
    - --debug-parse parses test files and stops
    - regexps now support escaped forward slash (\/)
    - bad regexps now fail at startup
    - command-line arguments are required in a test, and may be blank
    - a >>>= is no longer required to separate multiple tests in a file
    - comments can be appended to delimiter lines
    - comments can appear at end of file
    - files need not have a final newline
    - files containing nothing, all comments, or valid tests are allowed; anything else is rejected
    - somewhat better errors
    - allow indented input
  * support negative (-) and negatively-matched (!) numeric exit codes
  * let . in regexps match newline
  * warn but continue when a test file fails to parse
  * output cleanups, trim large output
  * more flexible --implicit flag
  * switch to the more robust and faster pcre-light regexp lib

0.6 (2009/7/15)

  * allow multiple tests per file, handle bad executable better

0.5 (2009/7/14)

  * show failure output in proper order

0.4 (2009/7/14)

  * run commands in a more robust way to avoid hangs
    This fixes hanging when a command generates large output, and hopefully
    all other deadlocks. The output is consumed strictly. Thanks to Ganesh
    Sittampalam for his help with this.
  * --implicit-tests flag providing implicit tests for omitted fields
  * --debug flag
  * regular expression matching
  * disallow interspersed foreign options which confused parseargs
  * change comment character to #

0.3 (2009/7/11)

  * misc. bugfixes/improvements

0.2 (2009/7/10)

  * bugfix, build with -threaded

0.1 (2009/7/10)

  * shelltestrunner, a generic shell command stdout/stderr/exit status tester