aboutsummaryrefslogtreecommitdiff
path: root/contrib/shunit2-2.0.3/doc/design_doc.txt
diff options
context:
space:
mode:
authorPjotr Prins2017-08-20 09:22:43 +0000
committerPjotr Prins2017-08-20 09:22:43 +0000
commit2e76646998df0ca1b7d160329c0f3ac8cdda2fe0 (patch)
tree8a1ba0770e2344469c58290d4192db186d9439cb /contrib/shunit2-2.0.3/doc/design_doc.txt
parent7fc4e3c0a0d6e32ca6685647e107473f1d96c3e5 (diff)
downloadpangemma-2e76646998df0ca1b7d160329c0f3ac8cdda2fe0.tar.gz
Move shunit2 into ./contrib and add catch-1.8.7
Diffstat (limited to 'contrib/shunit2-2.0.3/doc/design_doc.txt')
-rw-r--r--contrib/shunit2-2.0.3/doc/design_doc.txt54
1 files changed, 54 insertions, 0 deletions
diff --git a/contrib/shunit2-2.0.3/doc/design_doc.txt b/contrib/shunit2-2.0.3/doc/design_doc.txt
new file mode 100644
index 0000000..2849e55
--- /dev/null
+++ b/contrib/shunit2-2.0.3/doc/design_doc.txt
@@ -0,0 +1,54 @@
+Design Doc for shUnit2
+======================
+
+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.
+
+List of functions
+-----------------
+
+assertTrue([message,] boolean)
+assertFalse([message,] boolean)
+fail([message])
+assertEquals([message,] expected, actual)
+#isEquals(expected, actual)
+#assertArrayEquals([message,] expecteds, actuals)
+#isArray(expected)
+assertNotNull([message,] object)
+assertNull([message,], object)
+assertSame([message,], expected, actual)
+assertNotSame([message,], unexpected, actual)
+failSame(message)
+failNotSame([message,] expected, actual)
+
+.. $Revision$
+.. vim:syntax=rst