function AcquiaLiftWebTestWorkflow::testCampaignSettings in Acquia Lift Connector 7.2
Same name and namespace in other branches
- 7 tests/acquia_lift.test \AcquiaLiftWebTestWorkflow::testCampaignSettings()
Tests campaign javascript settings.
File
- tests/
acquia_lift.test, line 1592 - Integration tests for Acquia Lift module.
Class
Code
function testCampaignSettings() {
module_enable(array(
'personalize_test_extra_agent',
));
$this
->resetAll();
$this
->resetAll();
// Create two agents of different types.
$first_agent_name = $this
->randomName();
$first_agent_machine_name = personalize_generate_machine_name($first_agent_name, 'personalize_agent_machine_name_exists');
$this
->createTargetingAgent($first_agent_name);
$expected = array(
$first_agent_machine_name => array(
'name' => $first_agent_machine_name,
'label' => $first_agent_name,
'type' => 'acquia_lift_target',
'links' => array(
'view' => url('admin/structure/personalize/manage/' . $first_agent_machine_name),
'edit' => url('admin/structure/personalize/manage/' . $first_agent_machine_name),
'report' => '',
'goals' => url('admin/structure/personalize/manage/' . $first_agent_machine_name . '/goals'),
'targeting' => url('admin/structure/personalize/manage/' . $first_agent_machine_name . '/targeting'),
'scheduling' => url('admin/structure/personalize/manage/' . $first_agent_machine_name . '/scheduling'),
'review' => url('admin/structure/personalize/manage/' . $first_agent_machine_name . '/review'),
),
'optionSetTypes' => array(),
'goals' => NULL,
'editable' => TRUE,
'status' => PERSONALIZE_STATUS_NOT_STARTED,
),
);
$admin_user = $this
->drupalCreateUser(array(
'access administration pages',
'manage personalized content',
));
$this
->drupalLogin($admin_user);
$this
->drupalGet('');
$settings = $this
->drupalGetSettings();
$this
->assertEqual($settings['acquia_lift']['campaigns'][$first_agent_machine_name], $expected[$first_agent_machine_name]);
// Add a goal to the agent.
AcquiaLiftAPI::setTestInstance();
personalize_goal_save($first_agent_machine_name, 'user_login', 3);
$this
->drupalGet('/');
$settings = $this
->drupalGetSettings();
$expected[$first_agent_machine_name]['goals'] = array(
'user_login' => 'logs in',
);
$this
->assertEqual($settings['acquia_lift']['campaigns'][$first_agent_machine_name], $expected[$first_agent_machine_name]);
}