Testing Methods

BaseSpec

It is important to get familiar with TestBox before adventuring into ColdBox testing. Therefore, we suggest you reference the TestBox Docs (https://testbox.ortusbooks.com/primers/testbox-bdd-primer) or the TestBox API Docs (http://apidocs.ortussolutions.com/testbox/current). Below you can see a few of the common methods available to you.

We highly encourage you to use expectations instead of assertions in order to use more human and fluent syntax: https://testbox.ortusbooks.com/in-depth/expectations

// quick assertion methods
assert( expression, [message] )
expect( actual ).toBe( value )
fail(message)

// Life Cycle Methods
beforeEach( body )
afterEach( body )
aroundEach( body, spec )

// Spec Grouping Methods
describe( title, body, labels, asyncAll, skip )
feature( title, body, labels, asyncAll, skip )
story( title, body, labels, asyncAll, skip )
scenario( title, body, labels, asyncAll, skip )
given( title, body, labels, asyncAll, skip )
when( title, body, labels, asyncAll, skip )

// Spec or Tests
it( title, body, labels, skip )
then( title, body, labels, skip )

// utility methods
console( var, top )
debug( var, deepCopy, label, top )
clearDebugBuffer()
getDebugBuffer()
print( message )
printLn( message )

// mocking methods
makePublic( target, method, newName )
querySim( queryData )
getmockBox( generationPath )
createEmptyMock( className, object, callLogging )
createMock( className, object, clearMethods, callLogging )
prepareMock( object, callLogging )
createStub( callLogging, extends, implements )
getProperty( target, name, scope, defaultValue )

BaseTestCase

As we have seen that our BaseTestCase inherits from the BaseSpec you get all the goodness of TestBox. However, the BaseTestCase also has a wealth of methods to assist in your testing adventures:

https://apidocs.ortussolutions.com/coldbox/current/?coldbox/system/testing/BaseTestCase.html

Here are some useful methods:

ColdBox TestBox Matchers

ColdBox also automatically adds several custom matchers to TestBox, so it can help you get nice expectations:

toHaveStatus()

Checks if the ColdBox response object has a matched status code.

toHaveInvalidData()

Expectation for testing against cbValidation invalid data fields returned in a Restful response by looking into the response object.

toRedirectTo()

The expectation for testing if an event returns a relocation.

Was this helpful?