Base library usable any time.
These are versions of this script where the code was updated. Show all versions.
Have the group stack always contain at least one element.
This simplifies some other code.
Issue #331.
␄
Implement support for a configuration change listener.
The API change became larger than anticipated due to the need to disable messagings generated during loading configs as well as testing. Complicated by the desire to not directly expose the Dispatcher, additional wrappers were needed.
Dispatcher
Closes #331.
Bump version number.
Add an enabled feature to Dispatcher.
enabled
Closes #336.
Migrate first custom exception to Error with cause.
Error
cause
Issue #254.
Update to latest xunit and migrate to TestCase.register().
xunit
TestCase.register()
Closes #333.
Port Google's Canonical Error Codes.
Update docstrings.
Improve testing with additional exceptions types.
Fix typo in docstring.
Move Dispatcher initialization for consistency.
eslint: Fully disallow name as a local variable.
name
Closes #238.
Grammar fix.
Update a few doc strings.
eslint: Use the ONE_ITEM constant where appropriate.
ONE_ITEM
eslint: Allow the use of unary operators in for-loops.
Had been hidden by the use of += 1.
+= 1
Shorten a type name since it is already in a namespace.
Stop shadowing the global name.
Unsure if the property in Version should be changed.
Version
Issue #238.
eslint: Introduce a LAST_ITEM constant.
LAST_ITEM
After this, there would only be a single instance of -1 in the code base.
-1
Run through ispell.
ispell
Implement base Exception class that will use the name of the class.
Exception
When exception types inherit from Error, the name property sticks with the string "Error", making logs less useful.
Issue #259.
Stop using event as a local name as it shadows a global.
Migrate Service to lib/base.
Service
Issue #167.
Normalize vertical white space around logging {intro,outro}s.
Closes #243.
JSDoc: Correct @typedef
Call a real console method to generate a stack trace.
Closes #226.
Minor tweak to wording in error message.
Migrate asserts to using supported new constructs.
Issue #183.
Support chaining with Dispatcher.{on,off,fire}().
Dispatcher.{on,off,fire}()
Closes #207.
Add descriptive text to some assertions.
Issue #215.
Add descriptive text to the assertEqual() in a loop.
Update exports and documentation to match current file order.
Promote ONE_ITEM to a global constant.
Issue #216.
Make use of new TestCase features in testing.
TestCase
Wrap call to console.error() with a MessageQueue.
MessageQueue
Just to make it easier to test.
Issue #210.
Replace a loop around a push() with the spread syntax.
Move MessageQueue and friends higher in the file.
Move Dispatcher higher in the file and write tests.
Update comment now that we have a plan.
Implement a simple message queuing system, MessageQueue.
Issue #205.
Expose a common issue collection for libraries and apps.
eslint: Deal with some upcoming tweaks to newline-per-chained-call.
newline-per-chained-call
Issue #203.
Retire NH.xunit.testing.log and replace with local Logger.
NH.xunit.testing.log
Logger
Issue #179.
style-nudge: Right place nested classes in Logger.
Issue #197.
Use the new TestResult.summary() feature.
TestResult.summary()
Issue #200.
Retire now unused doFunctionTests().
Rewrite testLogger() as a TestCase.
Rewrite Logger.#testGroupMode() as a TestCase.
Logger.#testGroupMode()
Only reset Logger instances that have configs when restored.
Closes #199.
Add some vertical whitespace.
Rewrite testSafeId() as a TestCase.
Rewrite testDefaultMap() as a TestCase.
Rewrite testNumberOp() as a TestCase.
Explicitly log fields in a failure.
We are starting to add some formatting to failure messages, and this will make them apparent in the logs.
Rewrite testEnsure() as a TestCase.
Turns out there was a mistake, and being a Map resulting in one test being overwritten by another one registered.
Map
Also normalized casing of text in the exceptions and other minor cleanups.
Bump minVersion of lib/xunit.
Necessary to ensure TestCase.assertEqual().
TestCase.assertEqual()
Issue #180.
Bump version numbers.
Reset the existing loggers after configs are changed.
We were setting the global config section, but each Logger instance actually contained its own copy. This made changing configs at runtime impossible.
Amusingly enough, this was planned for, by tracking the loggers, but we forgot to actually make use of it.
Issue #145.
style-nudge: Right place #private fields in Logger.
Issue #173.
Improved error message on library version failure.
Improved error message on using wrong Dispatcher eventType.
style-nudge: Right place getters in Logger.#GroupMode.
Logger.#GroupMode
style-nudge: Right place a getter in Logger.
style-nudge: Right place a property in Logger.#Config.
Logger.#Config
Implement simpleParseWords().
This will replace SPA._parseHeader().
SPA._parseHeader()
Stop exporting the legacy testing object.
testing
Give each test failure its own log entry.
Issue #172.
Bump min version for lib/xunit; have test runners give a result code.
Move internal functions outside of runTests().
Have ensure() return a restricted namespace.
This should reduce use of undeclared dependencies.
Issue #175.
The variable result should be singular.
Depend on lib/xunit version 0.
Have lib/base use testing from lib/xunit.
lib/base
lib/xunit
Currently rexports it until the next release.
Issues #167, #172.
Oops, dropped a period after the last comment change.
Start refactoring testing into its own library.
Add fields and methods to TestResult.
TestResult
Also moved it to just above TestRunner.
TestRunner
Bring lib/base.{js,md} into sync.
Track skipping or errors during TestCase.setUpClass.
TestCase.setUpClass
Document how to effectively use Logger.
Forgot to export the new ensure function.
ensure
Show all script versions