1
0
mirror of https://github.com/sstephenson/bats.git synced 2024-12-25 14:09:43 +01:00
Commit Graph

58 Commits

Author SHA1 Message Date
Sylvain
1735a4fcd2 saving $IFS in run() not altered for code using it
IFS was modified by run() becoming '\n' and so relying to its bash default
was failing tests.

Also some wrong tests corrected because was relying on this behavior to pass.

Fix #89
2015-01-29 20:51:49 +01:00
Sam Stephenson
7b032e4b23 Bats 0.4.0 2014-08-13 09:59:22 -05:00
Henrique Moody
3be82466a7 Add skipped count tests in the summary
This also update the behaviour of the summary, now it only display the
number of failures, and skipped tests also, if the numbers are greater
than zero.
2014-08-13 14:32:35 +01:00
Sam Stephenson
2c6fed1838 Print the outermost, not innermost, failed command
The outermost command—i.e. the line that failed inside the test case function itself—is more likely to be meaningful at a glance than the innermost command, which might be e.g. the implementation of a helper assertion.
2014-08-12 17:28:03 -05:00
Sam Stephenson
a715fff30a Print filenames relative to the working directory 2014-08-12 16:56:52 -05:00
Sam Stephenson
716d2d62ed Print the failing status code, if it's significant 2014-08-12 16:45:51 -05:00
Sam Stephenson
81be444b3b bats_frame_filename normalizes test filenames 2014-08-12 15:14:16 -05:00
Sam Stephenson
ec6fbc10f1 Split print_failed_command from print_stack_trace 2014-08-12 15:04:18 -05:00
Sam Stephenson
c010220e7a Merge remote-tracking branch 'ahippo/print-failed-command' into print-failed-command
Conflicts:
	libexec/bats-exec-test
2014-08-12 12:19:00 -05:00
Sam Stephenson
f193ddbe4e Refactor the stack trace-capturing debug trap 2014-08-12 10:31:22 -05:00
Andrey Mazo
03c6ab4c0f Fix backtrace sed script for non-GNU seds
Tested on GNU `sed --posix`.

From `info sed`:
`\+'
     As `*', but matches one or more.  It is a GNU extension.

`\CHAR'
     Matches CHAR, where CHAR is one of `$', `*', `.', `[', `\', or `^'.
     Note that the only C-like backslash sequences that you can
     portably assume to be interpreted are `\n' and `\\'; in particular
     `\t' is not portable, and matches a `t' under most implementations
     of `sed', rather than a tab character.
2014-06-29 00:32:01 +04:00
Andrey Mazo
bbaf0f50df Print failed statement in backtrace
Update tests accordingly.
2014-06-29 00:30:49 +04:00
Sam Stephenson
bd23c3831c Default to TAP output when the CI environment variable is set
#52
2014-06-01 20:29:54 -05:00
Sam Stephenson
c7b0e6eba8 Style 2014-06-01 18:04:29 -05:00
Andrey Mazo
35f963010d Make load handle absolute paths too
Add 2 simple tests on this.
2014-05-21 18:30:51 -04:00
Sam Stephenson
1041e46f39 Support single-line test definitions 2013-11-17 13:04:57 -06:00
Sam Stephenson
08374f7269 Avoid expr for faster preprocessing 2013-11-17 12:34:13 -06:00
Sam Stephenson
ddd03ab852 Remove unused variable 2013-11-04 14:00:58 -06:00
Sam Stephenson
c8d63dd7e0 Correctly log errors in setup and teardown functions
Fixes #30
2013-11-04 12:20:55 -06:00
Sam Stephenson
bfa4ebcd0f Prefer let x+=1 for incrementing counters
The `((x++))` syntax is shorthand for `let x++`. According to `help let`:

    If the last ARG evaluates to 0, let returns 1; 0 is returned
    otherwise.

Thus the exit status of the expression `x=0; let x++` is 1, since the post-increment `++` operator evaluates to the value of the variable before incrementing.

In Bash 4, this non-zero exit status properly triggers `set -e`'s error trap, but in Bash 3 it does not. That's why the tests were passing on OS X (Bash 3) but not Linux (Bash 4).

We can work around the problem by choosing an incrementation expression that never evaluates to 0, such as `+=` or the pre-increment `++` operator. For consistency and clarity, I've changed to `x+=1` everywhere.

Ref. #25, #27
2013-10-28 21:01:51 -05:00
Sam Stephenson
417acfff66 Revert "Revert "Merge pull request #25 from sstephenson/stack-trace""
This reverts commit cb658ba91f.
2013-10-28 20:13:45 -05:00
Sam Stephenson
cb658ba91f Revert "Merge pull request #25 from sstephenson/stack-trace"
This reverts commit 07bdee33a1, reversing
changes made to c36ad10d8c.
2013-10-28 20:10:42 -05:00
Sam Stephenson
de1970fb8f Log the full stack trace when a test fails 2013-10-28 15:10:48 -05:00
Sam Stephenson
2e2477881b Bats 0.3.1 2013-10-28 14:58:32 -05:00
Sam Stephenson
25505bd143 Skip pretty formatting if the first line isn't a TAP plan
Closes #21
2013-10-28 14:47:52 -05:00
Sam Stephenson
d2c5b9ef71 Remove defunct comment-pad trimming 2013-10-28 14:47:52 -05:00
Sam Stephenson
1534201101 Emit ANSI escape sequences directly instead of calling tput 2013-10-28 12:21:16 -05:00
Sam Stephenson
0e5e445728 Bats 0.3.0 2013-10-21 13:14:24 -05:00
Sam Stephenson
8930e4e0d1 Fix for test files without trailing newlines (closes #12) 2013-10-21 12:45:49 -05:00
Sam Stephenson
a3229efbfa Pretty test output for terminals 2013-10-21 12:03:45 -05:00
Sam Stephenson
8873aab79f Extended syntax: "begin" line before each test is run 2013-10-21 11:32:09 -05:00
Sam Stephenson
7849374964 bats_test_info -> bats_test_begin; begin calls setup 2013-10-21 11:21:17 -05:00
Sam Stephenson
a773171777 Don't indent the output of failed tests 2013-10-21 10:58:21 -05:00
Sam Stephenson
c8c56a987c More descriptive message for failing line and file 2013-10-21 10:57:53 -05:00
Sam Stephenson
f4e09aaa2a Merge pull request #19 from duggan/internal-skips
Support for TAP compliant skip directive inside test blocks.
2013-10-18 14:14:35 -07:00
Ross Duggan
f78324dfec Support for TAP compliant skip directive inside test blocks. 2013-10-18 22:05:20 +01:00
Sam Stephenson
672f6e4be2 Invoke bats with multiple files to run an ad-hoc suite 2013-10-18 14:13:00 -05:00
Sam Stephenson
bc72b85871 Print test file path and line number after a failing test 2013-05-23 12:47:17 -05:00
Adam Jacob
af9794634f Using shell redirection rather than cat 2013-05-23 00:52:08 -04:00
Adam Jacob
9c8425d005 Supporting DOS line endings in BATS tests 2013-05-22 21:20:39 -04:00
Sam Stephenson
040deba950 Merge pull request #6 from mislav/echo-e-fix
fix preprocessing tests that have lines beginning with -e
2013-04-12 14:49:12 -07:00
BinaryBabel OSS
d2067db1b4 Remove redundant anchor in preprocess expression
Expr patterns are anchored to the beginning by default. Specifying
the carrot is undefined behavior and generates warnings on some versions, obscuring the
output.
2013-04-12 14:35:15 -07:00
Mislav Marohnić
7cec3d6259 fix preprocessing tests that have lines beginning with -e 2013-04-06 14:01:03 +02:00
Sam Stephenson
5030f53ecc Bats 0.2.0 2012-11-16 18:06:58 -06:00
Sam Stephenson
04be7dc717 Abort when load is invoked with a nonexistent script 2012-11-16 14:35:48 -06:00
Sam Stephenson
19a05cc77d Suite support for aggregating multiple tests under a single run 2012-11-16 14:25:45 -06:00
Sam Stephenson
f8f78b5cd3 bats-exec -> bats-exec-test 2012-04-09 10:59:36 -05:00
Sam Stephenson
6b965e18c4 bats -c filename prints the number of tests in the file 2012-04-08 23:25:38 -05:00
Sam Stephenson
3f82256855 Clean up cached sources on ^C 2012-04-08 23:13:58 -05:00
Sam Stephenson
ad4bc2e196 Cache preprocessed source for child test runs 2012-04-08 22:08:30 -05:00