summaryrefslogtreecommitdiffstats
path: root/fluent-bit/tests/lib/shunit2/doc
diff options
context:
space:
mode:
Diffstat (limited to 'fluent-bit/tests/lib/shunit2/doc')
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/CHANGES-2.1.md261
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.0.txt104
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.1.txt88
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.2.txt83
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.3.txt84
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.4.txt100
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.5.txt128
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.6.txt112
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.7.md66
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.8.md56
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/TODO.txt13
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/contributors.md15
-rw-r--r--fluent-bit/tests/lib/shunit2/doc/design_doc.txt34
13 files changed, 1144 insertions, 0 deletions
diff --git a/fluent-bit/tests/lib/shunit2/doc/CHANGES-2.1.md b/fluent-bit/tests/lib/shunit2/doc/CHANGES-2.1.md
new file mode 100644
index 00000000..776ff5a9
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/CHANGES-2.1.md
@@ -0,0 +1,261 @@
+# shUnit2 2.1.x Changes
+
+## Changes with 2.1.8
+
+### New
+
+Issue #29. Add support for user defined prefix for test names. A prefix can be
+added by defining the `SHUNIT_TEST_PREFIX` variable.
+
+### Improvements
+
+Issue #78. Added an example for using suite tests.
+
+Run continuous integration additionally against Ubuntu Trusty.
+
+### Fixed
+
+Issue #94. Removed the `gen_test_report.sh` script as the Travis CI output can
+be used instead. Reports were used before Travis CI was used.
+
+Issue #84. Treat syntax errors in functions as test failures.
+
+Issue #77. Fail tests when the environment functions (e.g. `setup()` or
+`tearDown()`) fail.
+
+
+## Changes with 2.1.7
+
+### Bug fixes
+
+Issue #69. shUnit2 should not exit with 0 when it has (syntax) errors.
+
+### Enhancements
+
+Issue #54. Shell commands prefixed with '\' so that they can be stubbed in
+tests.
+
+Issue #68. Ran all code through [ShellCheck](http://www.shellcheck.net/).
+
+Issue #60. Continuous integration tests now run with
+[Travis CI](https://travis-ci.org/kward/shunit2).
+
+Issue #56. Added color support. Color is enabled automatically when supported,
+but can be disabled by defining the SHUNIT_COLOR environment variable before
+sourcing shunit2. Accepted values are `always`, `auto` (the default), and
+`none`.
+
+Issue #35. Add colored output.
+
+### Other
+
+Moved code to GitHub (https://github.com/kward/shunit2), and restructured to
+be more GitHub like.
+
+Changed to the Apache 2.0 license.
+
+
+## Changes with 2.1.6
+
+Removed all references to the DocBook documentation.
+
+Simplified the 'src' structure.
+
+Fixed error message in fail() that stated wrong number of required arguments.
+
+Updated lib/versions.
+
+Fixed bug in `_shunit_mktempDir()` where a failure occurred when the 'od'
+command was not present in `/usr/bin`.
+
+Renamed `shunit_tmpDir` variable to `SHUNIT_TMPDIR` to closer match the standard
+`TMPDIR` variable.
+
+Added support for calling shunit2 as an executable, in addition to the existing
+method of sourcing it in as a library. This allows users to keep tests working
+despite the location of the shunit2 executable being different for each OS
+distribution.
+
+Issue #14: Improved handling of some strange chars (e.g. single and double
+quotes) in messages.
+
+Issue# 27: Fixed error message for `assertSame()`.
+
+Issue# 25: Added check and error message to user when phantom functions are
+written to a partition mounted with `noexec`.
+
+Issue# 11: Added support for defining functions like `function someFunction()`.
+
+
+## Changes with 2.1.5
+
+Issue# 1: Fixed bug pointed out by R Bernstein in the trap code where certain
+types of exit conditions did not generate the ending report.
+
+Issue# 2: Added `assertNotEquals()` assert.
+
+Issue# 3: Moved check for unset variables out of shUnit2 into the unit tests.
+Testing poorly written software blows up if this check is in, but it is only
+interesting for shUnit2 itself. Added `shunit_test_output.sh` unit test for
+this. Some shells still do not catch such errors properly (e.g. Bourne shell and
+BASH 2.x).
+
+Added new custom assert in test_helpers to check for output to STDOUT, and none
+to STDERR.
+
+Replaced fatal message in the temp directory creation with a `_shunit_fatal()`
+function call.
+
+Fixed test_output unit test so it works now that the 'set -u' stuff was removed
+for Issue# 3.
+
+Flushed out the coding standards in the `README.txt` a bit more, and brought the
+shunit2 code up to par with the documented standards.
+
+Issue# 4: Completely changed the reporting output to be a closer match for
+JUnit and PyUnit. As a result, tests are counted separately from assertions.
+
+Provide public `shunit_tmpDir` variable that can be used by unit test scripts
+that need automated and guaranteed cleanup.
+
+Issue# 7: Fixed duplicated printing of messages passed to asserts.
+
+Per code review, fixed wording of `failSame()` and `failNotSame()` messages.
+
+Replaced `version_info.sh` with versions library and made appropriate changes in
+other scripts to use it.
+
+Added `gen_test_results.sh` to make releases easier.
+
+Fixed bugs in `shlib_relToAbsPath()` in shlib.
+
+Converted DocBook documentation to reStructuredText for easier maintenance. The
+DocBook documentation is now considered obsolete, and will be removed in a
+future release.
+
+Issue# 5: Fixed the documentation around the usage of failures.
+
+Issue# 9: Added unit tests and updated documentation to demonstrate the
+requirement of quoting values twice when macros are used. This is due to how
+shell parses arguments.
+
+When an invalid number of arguments is passed to a function, the invalid number
+is returned to the user so they are more aware of what the cause might be.
+
+
+## Changes with 2.1.4
+
+Removed the `_shunit_functionExists()` function as it was dead code.
+
+Fixed zsh version number check in version_info.
+
+Fixed bug in last resort temporary directory creation.
+
+Fixed off-by-one in exit value for scripts caught by the trap handler.
+
+Added argument count error checking to all functions.
+
+Added mkdir_test.sh example.
+
+Moved src/test into src/shell to better match structure used with shFlags.
+
+Fixed problem where null values were not handled properly under ksh.
+
+Added support for outputting line numbers as part of assert messages.
+
+Started documenting the coding standards, and changed some variable names as a
+result.
+
+Improved zsh version and option checks.
+
+Renamed the `__SHUNIT_VERSION` variable to `SHUNIT_VERSION`.
+
+
+## Changes with 2.1.3
+
+Added some explicit variable defaults, even though the variables are set, as
+they sometimes behave strange when the script is canceled.
+
+Additional workarounds for zsh compatibility.
+
+shUnit2 now exits with a non-zero exit code if any of the tests failed. This was
+done for automated testing frameworks. Tests that were skipped are not
+considered failures, and do not affect the exit code.
+
+Changed detection of STDERR output in unit tests.
+
+
+## Changes with 2.1.2
+
+Unset additional variables that were missed.
+
+Added checks and workarounds to improve zsh compatibility.
+
+Added some argument count checks `assertEquals()`, `assertNull()`, and
+`assertSame()`.
+
+
+## Changes with 2.1.1
+
+Fixed bug where `fail()` was not honoring skipping.
+
+Fixed problem with `docs-docbook-prep` target that prevented it from working.
+(Thanks to Bryan Larsen for pointing this out.)
+
+Changed the test in `assertFalse()` so that any non-zero value registers as
+false. (Credits to Bryan Larsen)
+
+Major fiddling to bring more in line with [JUnit](http://junit.org/). Asserts
+give better output when no message is given, and failures now just fail.
+
+It was pointed out that the simple 'failed' message for a failed assert was not
+only insufficient, it was nonstandard (when compared to JUnit) and didn't
+provide the user with an expected vs actual result. The code was revised
+somewhat to bring closer into alignment with JUnit (v4.3.1 specifically) so
+that it feels more "normal". (Credits to Richard Jensen)
+
+As part of the JUnit realignment, it was noticed that `fail*()` functions in
+JUnit don't actually do any comparisons themselves. They only generate a
+failure message. Updated the code to match.
+
+Added self-testing unit tests. Kinda horkey, but they did find bugs during the
+JUnit realignment.
+
+Fixed the code for returning from asserts as the return was being called before
+the unsetting of variables occurred. (Credits to Mathias Goldau)
+
+The assert(True|False)() functions now accept an integer value for a
+conditional test. A value of '0' is considered 'true', while any non-zero value
+is considered 'false'.
+
+All public functions now fill use default values to work properly with the '-x'
+shell debugging flag.
+
+Fixed the method of percent calculation for the report to get achieve better
+accuracy.
+
+
+## Changes with 2.1.0 (since 2.0.1)
+
+This release is a branch of the 2.0.1 release.
+
+Moving to [reStructured Text](http://docutils.sourceforge.net/rst.html) for
+the documentation.
+
+Fixed problem with `fail()`. The failure message was not properly printed.
+
+Fixed the `Makefile` so that the DocBook XML and XSLT files would be
+downloaded before parsing can continue.
+
+Renamed the internal `__SHUNIT_TRUE` and `__SHUNIT_FALSE` variables to
+`SHUNIT_TRUE` and `SHUNIT_FALSE` so that unit tests can "use" them.
+
+Added support for test "skipping". If skipping is turned on with the
+`startSkip()` function, `assert` and `fail` functions will return immediately,
+and the skip will be recorded.
+
+The report output format was changed to include the percentage for each test
+result, rather than just those successful.
+
+
+[travis_ci]: https://travis-ci.org/kward/shunit2
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.0.txt b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.0.txt
new file mode 100644
index 00000000..c99f7463
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.0.txt
@@ -0,0 +1,104 @@
+Release Notes for shUnit2 2.1.0
+===============================
+
+This release was branched from shUnit2 2.0.1. It mostly adds new functionality,
+but there are couple of bugs fixed from the previous release.
+
+See the ``CHANGES-2.1.rst`` file for a full list of changes.
+
+
+Tested Platforms
+----------------
+
+This list of platforms comes from the latest version of log4sh as shUnit2 is
+used in the testing of log4sh on each of these platforms.
+
+Cygwin
+
+- bash 3.2.9(10)
+- pdksh 5.2.14
+
+Linux
+
+- bash 3.1.17(1), 3.2.10(1)
+- dash 0.5.3
+- ksh 1993-12-28
+- pdksh 5.2.14
+- zsh 4.3.2 (does not work)
+
+Mac OS X 10.4.8 (Darwin 8.8)
+
+- bash 2.05b.0(1)
+- ksh 1993-12-28
+
+Solaris 8 U3 (x86)
+
+- /bin/sh
+- bash 2.03.0(1)
+- ksh M-11/16/88i
+
+Solaris 10 U2 (sparc)
+
+- /bin/sh
+- bash 3.00.16(1)
+- ksh M-11/16/88i
+
+Solaris 10 U2 (x86)
+
+- /bin/sh
+- bash 3.00.16(1)
+- ksh M-11/16/88i
+
+
+New Features
+------------
+
+Test skipping
+
+ Support added for test "skipping". A skip mode can be enabled so that
+ subsequent ``assert`` and ``fail`` functions that are called will be recorded
+ as "skipped" rather than as "passed" or "failed". This functionality can be
+ used such that when a set of tests makes sense on one platform but not on
+ another, they can be effectively disabled without altering the total number
+ of tests.
+
+ One example might be when something is supported under ``bash``, but not
+ under a standard Bourne shell.
+
+ New functions: ``startSkipping()``, ``endSkipping``, ``isSkipping``
+
+
+Changes and Enhancements
+------------------------
+
+Moving to the use of `reStructured Text
+<http://docutils.sourceforge.net/rst.html>`_ for documentation. It is easy to
+read and edit in textual form, but converts nicely to HTML.
+
+The report format has changed. Rather than including a simple "success"
+percentage at the end, a percentage is given for each type of test.
+
+
+Bug Fixes
+---------
+
+The ``fail()`` function did not output the optional failure message.
+
+Fixed the ``Makefile`` so that the DocBook XML and XSLT files would be
+downloaded before documentation parsing will continue.
+
+
+Deprecated Features
+-------------------
+
+None.
+
+
+Known Bugs and Issues
+---------------------
+
+None.
+
+
+.. $Revision$
+.. vim:fileencoding=latin1:spell:syntax=rst:textwidth=80
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.1.txt b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.1.txt
new file mode 100644
index 00000000..4c610051
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.1.txt
@@ -0,0 +1,88 @@
+Release Notes for shUnit2 2.1.1
+===============================
+
+This is mainly a bug fix release, but it also incorporates a realignment with
+the JUnit 4 code. Asserts now provide better failure messages, and the failure
+functions no longer perform tests.
+
+See the ``CHANGES-2.1.txt`` file for a full list of changes.
+
+
+Tested Platforms
+----------------
+
+This list of platforms comes from the latest version of log4sh as shUnit2 is
+used in the testing of log4sh on each of these platforms.
+
+Cygwin
+
+- bash 3.2.15(13)
+- pdksh 5.2.14
+
+Linux
+
+- bash 3.1.17(1), 3.2.10(1)
+- dash 0.5.3
+- ksh 1993-12-28
+- pdksh 5.2.14
+- zsh 4.3.2 (does not work)
+
+Mac OS X 10.4.9 (Darwin 8.9.1)
+
+- bash 2.05b.0(1)
+- ksh 1993-12-28
+
+Solaris 8 U3 (x86)
+
+- /bin/sh
+- bash 2.03.0(1)
+- ksh M-11/16/88i
+
+Solaris 10 U2 (sparc, x86)
+
+- /bin/sh
+- bash 3.00.16(1)
+- ksh M-11/16/88i
+
+
+New Features
+------------
+
+None.
+
+
+Changes and Enhancements
+------------------------
+
+The internal test in ``assertFalse()`` now accepts any non-zero value as false.
+
+The ``assertTrue()`` and ``assertFalse()`` functions now accept an integer value
+for a conditional test. A value of '0' is considered 'true', while any non-zero
+value is considered 'false'.
+
+Self-testing unit tests were added.
+
+
+Bug Fixes
+---------
+
+The ``fail()`` assert now honors skipping.
+
+The ``docs-docbook-prep`` target now works properly.
+
+All asserts now properly unset their variables.
+
+
+Deprecated Features
+-------------------
+
+None.
+
+
+Known Bugs and Issues
+---------------------
+
+Functions do not properly test for an invalid number of arguments.
+
+
+.. vim:fileencoding=latin1:ft=rst:spell:textwidth=80
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.2.txt b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.2.txt
new file mode 100644
index 00000000..54929842
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.2.txt
@@ -0,0 +1,83 @@
+Release Notes for shUnit2 2.1.2
+===============================
+
+This release adds initial support for the zsh shell. Due to some differences
+with this shell as compared with others, some special checks have been added,
+and there are some extra requirements necessary when this shell is to be used.
+
+To use zsh with shUnit2, the following two requirements must be met:
+* The ``shwordsplit`` option must be set.
+* The ``function_argzero`` option must be unset.
+
+Please read the Shell Errata section of the documentation for guidance on how
+to meet these requirements.
+
+
+See the ``CHANGES-2.1.txt`` file for a full list of changes.
+
+
+Tested Platforms
+----------------
+
+This list of platforms comes from the latest version of log4sh as shUnit2 is
+used in the testing of log4sh on each of these platforms.
+
+Linux
+
+- bash 3.1.17(1), 3.2.25(1)
+- dash 0.5.4
+- ksh 1993-12-28
+- pdksh 5.2.14
+- zsh 4.2.5, 4.3.4
+
+Mac OS X 10.4.11 (Darwin 8.11.1)
+
+- bash 2.05b.0(1)
+- ksh 1993-12-28
+- zsh 4.2.3
+
+Solaris 10 U3 (x86)
+
+- /bin/sh
+- bash 3.00.16(1)
+- ksh M-11/16/88i
+- zsh 4.2.1
+
+
+New Features
+------------
+
+Support for the zsh shell.
+
+
+Changes and Enhancements
+------------------------
+
+Added some argument count checks.
+
+
+Bug Fixes
+---------
+
+None.
+
+
+Deprecated Features
+-------------------
+
+None.
+
+
+Known Bugs and Issues
+---------------------
+
+Functions do not properly test for an invalid number of arguments.
+
+ksh and pdksh do not pass null arguments (i.e. empty strings as '') properly,
+and as such checks do not work properly.
+
+zsh requires the ``shwordsplit`` option to be set, and the ``function_argzero``
+option to be unset for proper operation.
+
+
+.. vim:fileencoding=latin1:ft=rst:spell:textwidth=80
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.3.txt b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.3.txt
new file mode 100644
index 00000000..7d1c9f65
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.3.txt
@@ -0,0 +1,84 @@
+Release Notes for shUnit2 2.1.3
+===============================
+
+This release is minor feature release. It improves support for zsh (although it
+still isn't what it could be) and adds automated testing framework support by
+returning a non-zero exit when tests fail.
+
+To use zsh with shUnit2, the following two requirements must be met:
+* The ``shwordsplit`` option must be set.
+* The ``function_argzero`` option must be unset.
+
+Please read the Shell Errata section of the documentation for guidance on how
+to meet these requirements.
+
+See the ``CHANGES-2.1.txt`` file for a full list of changes.
+
+
+Tested Platforms
+----------------
+
+Cygwin
+
+- bash 3.2.33(18)
+- pdksh 5.2.14
+
+Linux
+
+- bash 3.2.33(1)
+- dash 0.5.4
+- ksh 1993-12-28
+- pdksh 5.2.14
+- zsh 4.3.4
+
+Mac OS X 10.5.2 (Darwin 9.2.2)
+
+- bash 3.2.17(1)
+- ksh 1993-12-28
+- zsh 4.3.4
+
+Solaris 11 x86 (Nevada 77)
+
+- /bin/sh
+- bash 3.2.25(1)
+- ksh M-11/16/88i
+- zsh 4.3.4
+
+
+New Features
+------------
+
+None.
+
+
+Changes and Enhancements
+------------------------
+
+Support for automated testing frameworks.
+
+
+Bug Fixes
+---------
+
+Fixed some issues with zsh support.
+
+
+Deprecated Features
+-------------------
+
+None.
+
+
+Known Bugs and Issues
+---------------------
+
+Functions do not properly test for an invalid number of arguments.
+
+ksh and pdksh do not pass null arguments (i.e. empty strings as '') properly,
+and as such checks do not work properly.
+
+zsh requires the ``shwordsplit`` option to be set, and the ``function_argzero``
+option to be unset for proper operation.
+
+
+.. vim:fileencoding=latin1:ft=rst:spell:textwidth=80
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.4.txt b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.4.txt
new file mode 100644
index 00000000..007b5c3a
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.4.txt
@@ -0,0 +1,100 @@
+Release Notes for shUnit2 2.1.4
+===============================
+
+This release contains lots of bug fixes and changes. Mostly, it fixes zsh
+support in zsh 3.0, and the handling of null values in ksh.
+
+To use zsh with shUnit2, the following requirement must be met:
+
+- The ``shwordsplit`` option must be set.
+
+Please read the Shell Errata section of the documentation for guidance on how
+to meet these requirements.
+
+See the ``CHANGES-2.1.txt`` file for a full list of changes.
+
+
+Tested Platforms
+----------------
+
+Cygwin
+
+- bash 3.2.39(19)
+- pdksh 5.2.14
+- zsh 4.3.4
+
+Linux (Ubuntu Dapper 6.06)
+
+- bash 3.1.17(1)
+- pdksh 5.2.14
+- zsh 4.2.5
+
+Linux (Ubuntu Hardy 8.04)
+
+- bash 3.2.39(1)
+- dash 0.5.4
+- ksh 1993-12-28
+- pdksh 5.2.14
+- zsh 4.3.4
+
+Mac OS X 10.5.4 (Darwin 9.4.0)
+
+- bash 3.2.17(1)
+- ksh 1993-12-28
+- zsh 4.3.4
+
+Solaris 9 U6 x86
+
+- /bin/sh
+- bash 2.05.0(1)
+- ksh M-11/16/88i
+- zsh 3.0.8
+
+Solaris 11 x86 (Nevada 77)
+
+- /bin/sh
+- bash 3.2.25(1)
+- ksh M-11/16/88i
+- zsh 4.3.4
+
+
+New Features
+------------
+
+Support added to output assert source line number as part of assert messages.
+
+
+Changes and Enhancements
+------------------------
+
+Support for automated testing frameworks.
+
+Added argument count error checking to all functions.
+
+
+Bug Fixes
+---------
+
+Fixed some issues with ksh and zsh support.
+
+Fixed off-by-one of exit value in trap handler.
+
+Fixed handling of null values under ksh.
+
+Fixed bug in last resort temporary directory creation.
+
+
+Deprecated Features
+-------------------
+
+None.
+
+
+Known Bugs and Issues
+---------------------
+
+zsh requires the ``shwordsplit`` option to be set.
+
+Line numbers in assert messages do not work properly with Bash 2.x.
+
+.. vim:fileencoding=latin1:ft=rst:spell:tw=80
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.5.txt b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.5.txt
new file mode 100644
index 00000000..d9f26cec
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.5.txt
@@ -0,0 +1,128 @@
+Release Notes for shUnit2 2.1.5
+===============================
+
+This release contains several bug fixes and changes. Additionally, it includes
+a rewrite of the test output to better match JUnit and PyUnit.
+
+This version also includes a slightly expanded set of coding standards by which
+shUnit2 is coded. It should help anyone reading the code to better understand
+it.
+
+
+
+Please read the Shell Errata section of the documentation for guidance on how
+to meet these requirements.
+
+See the ``CHANGES-2.1.txt`` file for a full list of changes.
+
+
+Tested Platforms
+----------------
+
+Cygwin
+
+- bash 3.2.39(20)
+- ksh (sym-link to pdksh)
+- pdksh 5.2.14
+- zsh 4.3.4
+
+Linux (Ubuntu Dapper 6.06)
+
+- bash 3.1.17(1)
+- ksh M-1993-12-28
+- pdksh 5.2.14-99/07/13.2
+- zsh 4.2.5
+
+Linux (Ubuntu Hardy 8.04)
+
+- bash 3.2.39(1)
+- dash 0.5.4
+- ksh M-1993-12-28
+- pdksh 5.2.14-99/07/13.2
+- zsh 4.3.4
+
+Mac OS X 10.5.4 (Darwin 9.4.0)
+
+- bash 3.2.17(1)
+- ksh M-1993-12-28
+- zsh 4.3.4
+
+Solaris 9 U6 x86
+
+- /bin/sh
+- bash 2.05.0(1)
+- ksh M-11/16/88i
+- zsh 3.0.8
+
+Solaris 11 x86 (Nevada 77)
+
+- /bin/sh
+- bash 3.2.25(1)
+- ksh M-11/16/88i
+- zsh 4.3.4
+
+
+New Features
+------------
+
+Support added for output assert source line number as part of assert messages.
+
+Issue #2: Added assertNotEquals() assert.
+
+Provided a public ``shunit_tmpDir`` variable that can be used by unit test
+scripts that need automated and guaranteed cleanup.
+
+
+Changes and Enhancements
+------------------------
+
+Issue #3: Removed the check for unset variables as shUnit2 should not expect
+scripts being tested to be clean.
+
+Issue #4: Rewrote the test summary. It is now greatly simplified and much more
+script friendly.
+
+Issue #5: Fixed the documentation around the usage of failures.
+
+Issue #9: Added unit tests and improved documentation around the use of macros.
+
+Code updated to meet documented coding standards.
+
+Improved code reuse of ``_shunit_exit()`` and ``_shunit_fatal()`` functions.
+
+All output except shUnit2 error messages now goes to STDOUT.
+
+Converted DocBook documentation to reStructuredText for easier maintenance.
+
+
+Bug Fixes
+---------
+
+Issue #1: Fixed bug in rap code where certain types of exit conditions did not
+generate the ending report.
+
+Issue #7: Fixed duplicated printing of messages passed to asserts.
+
+Fixed bugs in ``shlib_relToAbsPath()`` in ``shlib``.
+
+
+Deprecated Features
+-------------------
+
+None.
+
+
+Known Bugs and Issues
+---------------------
+
+Zsh requires the ``shwordsplit`` option to be set. See the documentation for
+examples of how to do this.
+
+Line numbers in assert messages do not work properly with BASH 2.x.
+
+The Bourne shell of Solaris, BASH 2.x, and Zsh 3.0.x do not properly catch the
+SIGTERM signal. As such, shell interpreter failures due to such things as
+unbound variables cannot be caught. (See ``shunit_test_misc.sh``)
+
+
+.. vim:fileencoding=latin1:ft=rst:spell:tw=80
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.6.txt b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.6.txt
new file mode 100644
index 00000000..50087fe4
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.6.txt
@@ -0,0 +1,112 @@
+Release Notes for shUnit2 2.1.6
+===============================
+
+This release contains bug fixes and changes. It is also the first release to
+support running shunit2 as a standalone program.
+
+Please read the Shell Errata section of the documentation for guidance on how
+to meet these requirements.
+
+See the ``CHANGES-2.1.txt`` file for a full list of changes.
+
+New Features
+------------
+
+Support for running shUnit2 as a standalone program. This makes it possible for
+users to execute their unit tests in a manner that is not dependent on the
+location an OS distribution maintainer chose to place shUnit2 in the file
+system.
+
+Added support for functions defined like 'function someFunction()'.
+
+Changes and Enhancements
+------------------------
+
+Renamed the public ``shunit_tmpDir`` variable to ``SHUNIT_TMPDIR`` to be more
+consistent with the ``TMPDIR`` variable.
+
+Bug Fixes
+---------
+
+Fixed issue where shunit2 would fail on some distributions when creating a
+temporary directory because the **od** command was not present.
+
+Deprecated Features
+-------------------
+
+None.
+
+Known Bugs and Issues
+---------------------
+
+Zsh requires the ``shwordsplit`` option to be set. See the documentation for
+examples of how to do this.
+
+Line numbers in assert messages do not work properly with BASH 2.x.
+
+The Bourne shell of Solaris, BASH 2.x, and Zsh 3.0.x do not properly catch the
+SIGTERM signal. As such, shell interpreter failures due to such things as
+unbound variables cannot be caught. (See ``shunit_test_misc.sh``)
+
+Tested Platforms
+----------------
+
+Cygwin 1.7.9 (Windows XP SP2)
+
+- bash 4.1.10(4)
+- dash 0.5.6.1
+- ksh (sym-link to pdksh)
+- pdksh 5.2.14
+- zsh 4.3.11
+
+Linux (Ubuntu Dapper 6.06.2 LTS)
+
+- bash 3.1.17(1)
+- dash 0.5.3
+- ksh (sym-link to pdksh)
+- pdksh 5.2.14-99/07/13.2
+- zsh 4.2.5
+
+Linux (Ubuntu Hardy 8.04.4 LTS)
+
+- bash 3.2.39(1)
+- dash 0.5.4
+- ksh M-1993-12-28
+- pdksh 5.2.14-99/07/13.2
+- zsh 4.3.4
+
+Linux (Ubuntu Lucid 10.04.2 LTS)
+
+- bash 4.1.5(1)
+- dash 0.5.5.1
+- ksh JM-93t+-2009-05-01
+- pdksh 5.2.14-99/07/13.2
+- zsh 4.3.10
+
+Mac OS X 10.6.7
+
+- bash 3.2.48(1)
+- ksh M-1993-12-28
+- zsh 4.3.9
+
+Solaris 8 U7 x86
+
+- /bin/sh
+- bash 2.03.0(1)
+- ksh M-11/16/88i
+- zsh 3.0.6
+
+Solaris 9 U6 x86
+
+- /bin/sh
+- bash 2.05.0(1)
+- ksh M-11/16/88i
+- zsh 3.0.8
+
+OpenSolaris 2009.06(snv_111b) x86
+
+- /bin/sh
+- bash 3.2.25(1)
+- ksh 2008-11-04
+
+.. vim:fileencoding=latin1:ft=rst:spell:tw=80
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.7.md b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.7.md
new file mode 100644
index 00000000..044564d8
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.7.md
@@ -0,0 +1,66 @@
+# shUnit2 2.1.7 Release Notes
+
+https://github.com/kward/shunit2
+
+This release contains bug fixes and enhancements. It is the first release since moving to GitHub. Users can now clone the latest version at any time.
+
+See the `CHANGES-2.1.md` file for a full list of changes.
+
+
+## New Features
+
+Colorized output, based on popular demand. shUnit2 output is now colorized based on the result of the asserts.
+
+
+## Changes and Enhancements
+
+With the move to GitHub, the shUnit2 unit tests are run on every commit using the [Travis CI][TravisCI] continuous integration framework. Additionally, all code is run through [ShellCheck](http:/www.shellcheck.net/) on every commit.
+
+[TravisCI]: https://travis-ci.org/kward/shunit2
+
+Shell commands in shUnit2 are prefixed with '\' so that they can be stubbed in tests.
+
+
+## Bug Fixes
+
+shUnit2 no longer exits with an 'OK' result if there were syntax errors due to incorrect usage of the assert commands.
+
+
+## Deprecated Features
+
+None.
+
+
+## Known Bugs and Issues
+
+Zsh requires the `shwordsplit` option to be set. See the documentation for examples of how to do this.
+
+Line numbers in assert messages do not work properly with BASH 2.x.
+
+The Bourne shell of Solaris, BASH 2.x, and Zsh 3.0.x do not properly catch the
+SIGTERM signal. As such, shell interpreter failures due to such things as
+unbound variables cannot be caught. (See `shunit_test_misc.sh`)
+
+
+## Tested Platforms
+
+Continuous integration testing is provided by
+[Travis CI](https://travis-ci.org/).
+
+https://travis-ci.org/github/kward/shunit2
+
+Tested OSes:
+
+- Linux
+- macOS
+
+Tested shells:
+
+- /bin/sh
+- ash
+- bash
+- dash
+- ksh
+- pdksh
+- zsh
+
diff --git a/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.8.md b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.8.md
new file mode 100644
index 00000000..d09d16ae
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/RELEASE_NOTES-2.1.8.md
@@ -0,0 +1,56 @@
+# shUnit2 2.1.8 Release Notes
+
+https://github.com/kward/shunit2
+
+This release contains bug fixes and enhancements. See the `CHANGES-2.1.md` file
+for a full list of changes.
+
+## New features
+
+Users can now define a custom prefix for test function names. The prefix can be
+configured by defining a `SHUNIT_TEST_PREFIX` variable.
+
+## Bug fixes
+
+Syntax errors in functions are now treated as test failures.
+
+Test now fail when `setup()` or `tearDown()` fail.
+
+## Deprecated features
+
+None.
+
+## Known bugs and issues
+
+Zsh requires the `shwordsplit` option to be set. See the documentation for examples of how to do this.
+
+Line numbers in assert messages do not work properly with BASH 2.x.
+
+The Bourne shell of Solaris, BASH 2.x, and Zsh 3.0.x do not properly catch the
+SIGTERM signal. As such, shell interpreter failures due to such things as
+unbound variables cannot be caught. (See `shunit_test_misc.sh`)
+
+shUnit2 does not work when the `-e` shell option is set (typically done with
+`set -e`).
+
+## Tested platforms
+
+Continuous integration testing is provided by
+[Travis CI](https://travis-ci.org/).
+
+https://travis-ci.org/github/kward/shunit2
+
+Tested OSes:
+
+- Linux
+- macOS
+
+Tested shells:
+
+- /bin/sh
+- ash
+- bash
+- dash
+- ksh
+- pdksh
+- zsh
diff --git a/fluent-bit/tests/lib/shunit2/doc/TODO.txt b/fluent-bit/tests/lib/shunit2/doc/TODO.txt
new file mode 100644
index 00000000..cecc17dd
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/TODO.txt
@@ -0,0 +1,13 @@
+Make it possible to execute a single test by passing the name of the test on
+the command line
+
+Add support for '--randomize-order' so that the test order is randomized to
+check for dependencies (which shouldn't be there) between tests.
+
+--debug option to display point in source code (line number and such) where the
+problem showed up.
+
+assertTrue() just gives 'ASSERT:', nothing else :-(. others too?
+upd: assertNull() will give message passed, but nothing else useful :-(
+
+$Revision$
diff --git a/fluent-bit/tests/lib/shunit2/doc/contributors.md b/fluent-bit/tests/lib/shunit2/doc/contributors.md
new file mode 100644
index 00000000..7adae223
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/contributors.md
@@ -0,0 +1,15 @@
+The original author of shunit2 is Kate Ward. The following people have
+contributed in some way or another to shunit2.
+
+- [Alex Harvey](https://github.com/alexharv074)
+- Bryan Larsen
+- [David Acacio](https://github.com/dacacioa)
+- Kevin Van Horn
+- [Maciej BliziƄski](https://github.com/automatthias)
+- Mario Sparada
+- Mathias Goldau
+- Richard Jensen
+- Rob Holland
+- Rocky Bernstein
+- [rugk](https://github.com/rugk)
+- wood4321 (of code.google.com)
diff --git a/fluent-bit/tests/lib/shunit2/doc/design_doc.txt b/fluent-bit/tests/lib/shunit2/doc/design_doc.txt
new file mode 100644
index 00000000..24d41ff1
--- /dev/null
+++ b/fluent-bit/tests/lib/shunit2/doc/design_doc.txt
@@ -0,0 +1,34 @@
+Design Doc for shUnit
+
+shUnit is based upon JUnit. The initial ideas for the script came from the book
+"Pragmatic Unit Testing - In Java with JUnit" by Andrew Hunt and David Thomas.
+
+The script was written to perform unit testing for log4sh. log4sh had grown
+enough that it was becoming difficult to easily test and and verify that the
+tests passed for the many different operating systems on which it was being
+used.
+
+The functions in shUnit are meant to match those in JUnit as much as possible
+where shell allows. In the initial version, there will be no concept of
+exceptions (as normal POSIX shell has no concept of them) but attempts to trap
+problems will be done.
+
+Programatic Standards:
+
+* SHUNIT_TRUE - public global constant
+* __SHUNIT_SHELL_FLAGS - private global constant
+* __shunit_oldShellFlags - private global variable
+
+* assertEquals - public unit test function
+* shunit_publicFunc - public shUnit function; can be called from parent unit
+ test script
+* _shunit_privateFunc - private shUnit function; should not be called from
+ parent script. meant for internal use by shUnit
+
+* _su_myVar - variable inside a public function. prefixing with '_su_' to
+ reduce the chances that a variable outside of shUnit will be overridden.
+* _su__myVar - variable inside a private function. prefixing with '_su__' to
+ reduce the chances that a variable in a shUnit public function, or a variable
+ outside of shUnit will be overridden.
+
+$Revision$