I am trying to write a unit test for a handler that implements setNextEvent().
I’ve created a simple example using the test handler from the docs. I am getting the error “Variable CONTROLLER is undefined.” when it gets to setNextEvent() in doSomething(). What am I forgetting to do?
component name=“simpleHandler” extends=“coldbox.system.eventhandler” autowire=“true”{
function index(event,rc,prc){
rc.welcomeMessage = “Welcome to ColdBox!”;
event.setView(“general/index”);
}
function doSomething(event,rc,prc){
setNextEvent(“general.index”);
}
}
/**
@handler common.handlers.simpleHandler
*/
component extends=“common.coldbox.system.testing.BaseHandlerTest”{
public void function setup() {
super.setup();
MockBox = getMockBox();
variables.Event = variables.mockRequestService.getContext();
variables.rc = Event.getCollection();
variables.prc = Event.getCollection(private=true);
}
public void function testThatDoSomethingRedirectsToIndex(){
var testEvent = handler.doSomething(Event, rc, prc);
assertEquals(“general.index”, testEvent.getValue(“setNextEvent”) );
}
}