Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Excerpt

The unit test function, responsible for performing one or more Test Assertions...

 

Syntax

Warning
iconfalse

The scope of unit test functions is manipulated before a test runs, so you cannot reference variables defined in the function's scope chain (closures will not work either).

If you want to reference variables external to the Unit Test function, pass them in via a settings object defined in the associated Test() invocation.

Code Block
themeRDark
languagejavascript
linenumberstrue
function(settings) {
	// code and assertions
}

Parameters

ParameterTypeNotesAPI Version
settingsVariantThe settings data passed in to Test(), if applicable.1.0

Return value

The return value is not processed.

Notes

Within the unit test, the following additional variables and properties are also available:

Property / VariableTypeTest.APPEND( ) modeAny other modeAPI Version
_globalObject

A reference to the global object (not scope).

This variable is defined by Test API and is thus safer to use within tests than the equivalent global defined by Util API.

1.0
modulePathStringThe modulePath that the test is running in – see Test.module() for more information.1.1
moduleSettings

Object

Undefined

The moduleSettings for the modulePath, if specified.

If the module doesn't have settings, the variable will have a value of undefined.

1.1
this.settingsVariant

The settings associated with the Test.ASYNCH( ) that initiated the current asynchronous test session.

The settings associated with your unit test (also available via the settings parameter on the unit test function)1.0
testSettingsVariantThe settings associated with your unit test.1.0
testNameStringThe name of your unit test.1.0
testModeObject

An object describing the test mode, with the following properties:

  • testMode.name = "ASYNCH"
  • testMode.appendTo = name of the Test.ASYNCH() test that this test appends
  • testMode.after = "WAIT"

An object describing the test mode, with the following mandatory properties:

  • testMode.name = either "ANY", "EXPECT" or "ASYNCH" depending on the test mode
  • testMode.after = either "DONE" or "WAIT" depending on the test mode

There may be several other properties depending on the test mode – For more information see Test API - Dev Notes.

1.0

Example

Code Block
themeRDark
languagejavascript
linenumberstrue
var mySettings = {bar: "fish"};
Test("Foo", Test.ANY( ), function(settings) {
	comment( "My first unit test!" );
	equal( "fish", settings.bar, "settings.bar == 'fish'?" );
}, mySettings);
Div
classbox
Availability
Status
colourGreen
titleStable

Requires:

Div
classbox
Contents

Jump to:

Table of Contents
maxLevel5

Div
classbox

Test API

Topics:

Child pages (Children Display)
alltrue
depthall
pageTest API
excerpttrue