function AcquiaLiftTest::testGetAgents in Acquia Lift Connector 7
File
- tests/AcquiaLiftAPI.test, line 1594
- Unit tests for Acquia Lift module.
Class
- AcquiaLiftTest
- @file
Unit tests for Acquia Lift module.
Code
function testGetAgents() {
$lift_api = AcquiaLiftAPI::getInstance(array(
'api_key' => 'asdf',
'admin_key' => 'fasfasfs',
'owner_code' => 'Some_valid-owner123-code',
));
$agents = array();
$agent_codes = array(
'first-agent',
'second-agent',
);
foreach ($agent_codes as $code) {
$agent = new stdClass();
$agent->code = $code;
$agent->decisions = array();
$agent->goals = array();
$agents[] = $agent;
}
$lift_api
->setHttpClient(new DummyAcquiaLiftHttpClient(FALSE, array(
'agents' => $agents,
)));
$lift_api
->setLogger(new AcquiaLiftTestLogger());
$agents = $lift_api
->getExistingAgents();
$this
->assertEqual($agent_codes, array_keys($agents));
$lift_api
->setHttpClient(new DummyAcquiaLiftHttpClient(FALSE));
$agents = $lift_api
->getExistingAgents();
$this
->assertTrue(empty($agents));
$lift_api
->setHttpClient(new DummyAcquiaLiftHttpClient(TRUE));
try {
$agents = $lift_api
->getExistingAgents();
$this
->fail('Should never reach here');
} catch (Exception $e) {
$this
->assertTrue($e instanceof AcquiaLiftException);
$this
->assertEqual('Error retrieving agent list from Acquia Lift', $e
->getMessage());
}
}