From dca3726bf17c3b80a9b56567dc30661d0a9fa25f Mon Sep 17 00:00:00 2001 From: stleary Date: Sat, 21 Mar 2015 13:13:44 -0500 Subject: [PATCH] Update README.md --- README.md | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e750b72..bfe1619 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,32 @@ # JSON-Java-unit-test Unit tests to validate the JSON-Java GitHub project code (https://github.com/douglascrockford/JSON-java).
+ Test harness: http://junit.org
Coverage: http://www.eclemma.org/
-Run individual tests using eclemma or the entire test suite using TestRunner
+ +Eclipse is the recommended development environment. +Run individual tests or *JunitTestSuite* using ~~EclEmma Coverage~~, or execute the *TestRunner* application directly.
+ +Test filenames should consist of the name of the module being tested, with the suffix "Test". +For example, *Cookie.java* is tested by *CookieTest.java*. +When adding a new unit test, don't forget to update *JunitTestSuite.java*. + +The fundamental issues with JSON-Java testing are: +* *JSONObjects* are unordered, making simple string comparison ineffective. +* Comparisons via equals() is not currently supported. Neither JSONArray nor JSONObject overrride hashCode() or equals(), so comparison defaults to the Object equals(), which is not useful. +* Access to the JSONArray and JSONObject internal containers for comparison is not currently available. +* JSONObject sometimes wraps entries in quotes, other times does not, complicating comparisons. + +When you start working on a test, add the empty file to the repository, so that others will know that test is taken. + +A unit test is considered complete when the coverage is >= 90% as measured by EclEmma. + +| Test file name | Coverage | Comments | +| ------------- | ------------- | +| CookieTest.java | 97.5% | Completed | +| PropertyTest.java | 94.8% | Completed | +| CDLTest.java | 94.8% | Relies too much on string tests, needs to be reworked | + Completed tests:
CDLTest.java
CookieTest.java