(info) This AI is still in early stages of development.

Test.ANY( )

The most basic unit test mode...

 

Syntax

Basic syntax
Test("Basic syntax", Test.ANY( ), function() {
  // assertions, if any, go here
});

Parameters

No parameters.

Return values

ValueTypeNotesAPI Version
<mode>ObjectThe mode object is associated with the unit test defined in the same Test() invocation.1.0

Effect on test

The test is treated as synchronous and its pass/fail state will be determined as soon as the Unit Tests has been processed...

Fail conditions

The unit test will fail if any of the following occur:

Pass conditions

If the test has not failed, it will be deemed to have passed – even if it did not generate any results (eg. no assertions or signals in the test).

Examples

Test.ANY( ) mode is useful when the number of results could vary based on some external factor...

Useful when number of results can be affected by external code...
var thingsToCheck = ["chat", "include", "playerData"];
 
Test("Check things", Test.ANY( ), function(settings) {
	if (settings && settings.length) {
		settings.forEach(function(thing) {
			hasNative( thing, thing+" is native?" );
		});
	}
}, thingsToCheck);

Test.ANY( ) is also useful if you want to use a test as a flag that determines whether other tests run...

A test that enables other tests...
Test("Check is defined", Test.ANY( ), function() {
	hasNative( "Check", "Dependency Checker installed?" );
});
 
Test("Test dependency checker", Test.EXPECT( 1 ), function() {
	REQUIRE( "Check is defined" ); // will abort if the test above failed
 
	Check.provide({file: "testing", ver: 1.0});
 
	ok( Check.has("testing", 1.0), "Dependency successfully provided" );
});
If you know how many results a test should generate, it's recommended to use Test.EXPECT( ) instead.
Availability STABLE

Requires:

Contents

Jump to:

Test API

Topics:

  • Test()Define a unit test and it's configuration...
  • Test ModulesA test module groups one or more unit tests and provides additional lifecycle settings for those tests...
  • Test ModesDefines the mode in which a unit test is run...
    • Test.ANY( )The most basic unit test mode...
    • Test.EXPECT( )Causes the test to fail if it does not generate the specified number of results...
    • Test.ASYNCH( )Causes a test to keep running until it either passes, fails or times-out...
    • Test.APPEND( )Appends results to a specific asynchronous test session...
  • Unit TestsThe unit test function, responsible for performing one or more Test Assertions...
  • Test AssertionsAssertions are used to perform various tests and annotations within a unit test...
    • comment( )Adds a comment to the test results...
    • ok( )A simple state checking assertion...
    • hasNative( )Assert presence of a native property on the global object...
    • hasFunction( )Check if a context has a function property, optionally with specified number of formal parameters...
    • equal( )A basic equality checking assertion...
    • notEqual( )A basic inequality checking assertion...
    • strictEqual( )A strict equality checking assertion...
    • notStrictEqual( )A strict inequality checking assertion...
    • deepEqual( )A deep equality checking assertion...
    • notDeepEqual( )A deep inequality checking assertion...
    • similarTo( )A deep similarity checking assertion...
    • notSimilarTo( )A deep dissimilarity spotting assertion...
  • Test SignalsSignals are used to prematurely terminate Unit Tests...
    • REQUIRE( )Check whether a test or group of tests have passed. If the requirement fails, a RequireSignal will be sent which terminates the current test and marks it as failed.
    • ABORT( )Aborts the current test, marking it as failed in the process...
    • FINISH( )Terminates the test as if it had finished normally...
  • Test EventsEvents defined by Test API...
  • Test ResultsAfter testing is finished, output results...
  • Test API - Dev NotesDeveloper notes for this API...