- Fix automatic
SHARNESS_TEST_SRCDIRfor zsh
-
Moved functions into lib-sharness/functions.sh
-
Add simple example
-
Add support for zsh
-
Clarify the purpose of
aggregate-results.sh -
Add
SHARNESS_TEST_OUTDIR -
Add
SHARNESS_TEST_NB -
Add
-xoption for tracing commands -
Add vim syntax file
-
Minor bugfixes
-
Christian Couder has decided to transfer the ownership of the project to Felipe Contreras, so now it's on: https://github.com/felipec/sharness/ and https://felipec.github.io/sharness/. Thanks for keeping the project afloat these years and your many contributions.
- Add
test_expect_unstable - Add
--teeoption - Add
--verbose_logoption - Add missing
test_path_is_file()test_path_is_dir()test_dir_is_empty() - Tons of lint fixes
- Bugfixes
These notes describe changes since the previous v0.3.0 version from April 3 2013.
The new v1.0.0 version contains both many upstream fixes and improvements from Git and a lot of specific user contributed features.
We think that Sharness is used and supported by enough projects and developers, and stable enough, now to be ready for a v1.0.0 version.
Externally visible features:
- Add a 'cleanup' api to register cleanup actions, thanks to Dennis Kaarsemaker.
- Add simple test_seq(), thanks to Christian Couder.
- Add test_pause() from Git, thanks to Christian Couder.
- Add test_must_be_empty(), thanks to Konstantin Koroviev.
- Add SHARNESS_TEST_SRCDIR to run tests from a different directory, thanks to Mark A. Grondona.
- Implement --long-tests to run EXPENSIVE tests, thanks to Matthieu Moy.
- Support extensions in a sharness.d directory, thanks to Mark A. Grondona.
- Interactive tests, thanks to Dennis Kaarsemaker.
Internal improvements and bug fixes:
- Add a linter that detects broken && chains, thanks to Dennis Kaarsemaker.
- Export SHELL_PATH, thanks to Christian Couder.
- Fix color support when tput needs ~/.terminfo, thanks to Richard Hansen.
- Fix pathname of test-results/*.counts file, thanks to Richard Hansen.
- Sort test scripts before running them, thanks to Richard Hansen.
- Use SHARNESS_TRASH_DIRECTORY to enter the trash directory and drop the test_dir internal variable, thanks to Alexander Sulfrian.
- A lot of new TTY and sub sharness related tests, thanks to Mark A. Grondona.
- Build on Travis-CI using a container based build infrastructure, thanks to Mark A. Grondona.
Documentation improvements:
- Mention the Sharness Cookbook in the README, thanks to Mathias Lafeldt.
- Add alternatives to Sharness like Cram, rnt and ts to the README, thanks to Roman Neuhauser and Simon Chiang.
- Consistent Markdown headings, thanks to Mathias Lafeldt.
- Replace Contact with Author section, thanks to Mathias Lafeldt.
- New CONTRIBUTING.md document, thanks to Christian Couder.
- Mention Sharnessify a new installation tool, thanks to Christian Couder.
- Usage clarifications, thanks to Matthieu Moy.
- Improved flag descriptions in the README, thanks to Matthieu Moy.
Maintainer and project changes:
-
Mathias Lafeldt, who created Sharness by extracting it from the Git codebase in April 2011, decided to step down and pass on the maintainership to Christian Couder. Thanks a lot, Mathias, for creating Sharness and maintaining it during all these years!
-
Following the above point, Mathias transferred the Sharness GitHub repository to Christian, so the project can now be found on: https://github.com/chriscool/sharness and its web page is now: http://chriscool.github.io/sharness/
This release is all about bringing upstream fixes and improvements from Git to Sharness (GH-7).
List of merged upstream changes:
- Make test number come first in
not ok $count - $message. - Paint known breakages in yellow.
- Paint unexpectedly fixed known breakages in bold red.
- Paint skipped tests in blue.
- Change info messages from yellow/brown to cyan.
- Fix
say_color()to not interpret\a\b\cin the message. - Add check for invalid use of
skip_allfacility. - Rename
$satisfiedto$satisfied_prereq. - Allow negation of prerequisites with "!".
- Retain cache file
test/.proveacross prove runs. - Replace
basic.twithsharness.twhich is an adapted version oft0000-basic.shfrom upstream. - Update
README.gitwith upstream changes.
Other changes:
- Add git-integration to the list of projects using Sharness. Also pay tribute to Git's test suite.
- Let Travis only test the master branch (and pull requests).
- Allow to install Sharness via
make installand to uninstall it viamake uninstall. See brand-new installation instructions in README. (GH-5) - Allow users to override the test extension via
SHARNESS_TEST_EXTENSIONif they wish to. (GH-6) - Don't set a variable and export it at the same time. (GH-6)
- Remove
TEST_INSTALLED-- useSHARNESS_BUILD_DIRECTORYinstead. - Add vi modeline to
sharness.sh. - Add
AGGREGATE_SCRIPTvariable totest/Makefile. - Remove superfluous
SHARNESS_TEST_DIRECTORYassignments fromtest/basic.t. - Add timedb to the list of projects using Sharness.
- Add Sharness alternatives to README.
- Rename HISTORY.md to CHANGELOG.md.
- Add
simple.tto tests and README. - Provide
SHARNESS_TEST_FILEwhich is the path to the test script currently being executed. - Add dabba to the list of projects using Sharness.
- Make
.tthe new test file extension, which is the default extension used byprove(1). (You can still use thet????-*scheme, but you need to rename the.shending of all tests.) - Rename, export, and document public variables
SHARNESS_TEST_DIRECTORY,SHARNESS_BUILD_DIRECTORY, andSHARNESS_TRASH_DIRECTORY. - TomDoc
SHARNESS_TEST_EXTENSION.
- Document all public API functions using TomDoc and let tomdoc.sh generate
documentation in markdown format from it, see
API.md. - Rename
test_skiptotest_skip_as it is internal. - Clean up
test/Makefile. - Sync Git README with upstream.
- Fix: Redirect stdin of tests (by @peff).
- Unify coding style across all shell scripts.
- Remove superfluous functions
sane_unsetandtest_declared_prereq. - Get rid of variables
DIFFandTEST_CMP_USE_COPIED_CONTEXT. - Remove dysfunctional smoke testing targets from
test/Makefile. - Add Travis CI config.
- Add top-level Makefile to say
make test. - Add GPL header to all files from Git.
- Rename
test-lib.shtosharness.sh. - Strip more Git-specific functionality.
- Add variable
SHARNESS_VERSION. - Move self-tests to
testfolder; keep essential files in root. - Update README.
- Add this history file.
- Merge changes to test harness library from Git v1.7.8-rc0
- First version based on test harness library from Git v1.7.5
- Remove Git-specific functions, variables, prerequisites, make targets, etc.
- Remove
GIT_prefix from global variables.