Как имитировать зависимость при написании интеграционного тестирования BDD в Testbox?
У меня есть конечная точка API ColdBox, для которой я пишу несколько интеграционных тестов BDD. Однако конечная точка взаимодействует со сторонним API (3rdPartyApi
), которые я бы хотел избежать во время тестов.
Структура зависимости выглядит примерно так:
/handlers/myHandler.cfc
-- Depends on: /models/awesomeService.cfc
-- Depends on: /models/3rdPartyApi.cfc
Мой интеграционный тест выглядит примерно так:
it( "Can do something awesome", function(){
var event = get(
route = "/api/v1/myHandler/doAwesome"
);
var response = event.getPrivateValue( "response" );
expect( response.getError() ).toBeFalse();
expect( response.getStatusCode() ).toBe( 200 );
expect( response.getData() ).toHaveKey( "iAmAwesome" );
} );
Думаю, мне нужен доступ
myHandler
прежде чем я убегу
var event = get(...
так что я могу получить
awesomeService
и заменить
3rdPartyApi
с имитацией объекта. Однако я не знаю, как это сделать.