/*
JsUnit - a JUnit port for JavaScript
Copyright (C) 1999,2000,2001,2002,2003,2006,2007 Joerg Schaible
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
/*!
\page release Release Notes
\section currentrelease Version 1.3
2007-10-19: XML generation, Maven 2 and Ant support
\subsection new New Features
Note: Staring with this version the license of the software has been changed
to the Apache Software \ref license 2.0
- New EmbeddedTextTestRunner for better integration into
other applications
- New XMLResultPrinter for JUnitReport support
- TextTestRunner supports new argument --xml
- New TestCollector interface and implementations
- TextTestRunner supports new argument --run OPTION
- Added method assertMatches
- JsUnit Java library with embedded Rhino
- \ref ant Task for JsUnit
- \ref maven2 Plugin for JsUnit
\subsection change Design Changes
- Method gluing: The Function object has now a glue method, that will add
any function argument to the prototype
- Explicit regular expression support now by assertMatches instead of
undocumented functionality in assertEquals
\subsection bug Bug Fixes
- Fix AllTests.html in samples
- Fix tests for BroadVision and iPlanet
- Interfaces missing in docs for 1.2
- ResultPrinter failed to print an available CallStack
- ExceptionTestCase does no longer catch AssertionFailedError
- JsUtil.prototype.isRhino is now also true for embedded Rhino
- BaseTestRunner.getTest returns now a proper TestSuite
- Fix argument handling for TextTestRunner.start
\section todo ToDo List
Topic |
Comment |
Site |
JsUnit exists now of different modules build with Maven 2. Therefore
better site documentation can be generated easier. Migrate old content
to apt format. |
\section history History of JsUnit
\subsection v1_2 Version 1.2
2006-06-06: More compliance to JUnit
A lot of internal work has be done. The changes of JUnit 3.8.1
have been integrated and JsUnit is running quite smoothly for JScript,
SpiderMonkey, Rhino and KJSCmd. Also the new documentation script works
fine.
\subsection new New Features
- Test is an interface now (conforming with JUnit), TestCase and
TestSuite implement this interface
- Assert supports member functions assertSame, assertTrue and
assertFalse
- TestSuite supports member function addTestSuite
- TestResult supports member function removeListener and
runProtected
- Support of class ResultPrinter
- BaseTestRunner supports preferences
- Interface Protectable supported
- Support conforming Error object hierarchy
- Alternative interface design contract by Function.fulfills
- New script for document generation recognizes functions and classes
directly
- Support of the JUnit extension classes
- Changes of JUnit 3.8.1 and new classes migrated to JsUnit
- Special support in Assert.assertEquals comparing Strings or match a
RegExp against a string
- New utility class JsUtil and enhanced CallStack API
- New utility class hierarchy PrinterWriter
- Special HTML support with HTMLWriterFilter
- Deprecated CtxRunner and NSServerRunner in favor of a more generic
solution using a TextTestRunner and the new CtxWriter/NSServerWriter
\subsection change Design Changes
- JsUnit uses standard object model
- TestSuite supports again strings as name
- CallStack.js has been renamed to JsUtil.js
- Support of Array.push and Array.pop at all systems
- TestSuites for complete test files provided
- TestSuite needs now a TextCase object as argument
- TestRunner renamed to BaseTestRunner according to JUnit
- Call base class always with explicit name
- Name of fixtures are prepended with the name of the TestCase
- Native report format equals now JUnit. Old format supported by
class ClassicReportPrinter
- Use TextTestRunner.prototype.main to call
- Use own Error class hierarchy since ECMA standard does not guarantee
consistent behavior deriving from system classes
\subsection bug Bug Fixes
- Added BerliOS reference to project documentation
- Added test code for constructors
- HTML output of exceptions
- Expression 'this.constructor' does not refer direct base class
\subsection v1_1 Version 1.1
2001-09-07: Minor update
New Features
- Added unit tests for JsUnit library
- Automated test suite generation
- Browser TestSuite for JsUnit checks now JavaScript compatibility
- Support of Rhino and SpiderMonkey shells from Mozilla.org
- Support of KJSCmd, the shell wrapper for the KJSEmbed of KDE
- Support of current Konqueror and Opera version
Design Changes
- TestSuite has no methods setUp and tearDown anymore
- BrowserTestRunner renamed to HTMLTestRunner
Bug Fixes
- Added copyright notice to all files
- Added BerliOS reference to project documentation
- Corrected script tags in HTML files
- tearDown method was not called in case of an exception
\subsection v1_0 Version 1.0
2001-08-01: Completing the library after more than a year more or less
ongoing development, the first release of this software is published
Features
- Port of JUnit 3.2 for JavaScript
- Support of various systems, mostly based on standalone script
engines
- JavaDoc like documentation generation
*/