markTestIncomplete("This test breaks on stack66 - working with dev to fix"); global $focus; // Init session user settings $GLOBALS['current_user'] = SugarTestUserUtilities::createAnonymousUser(); $GLOBALS['current_user']->setPreference('max_tabs', 2); $this->campaign = SugarTestCampaignUtilities::createCampaign(); $this->db = $GLOBALS['db']; $focus = $this->campaign; // Setting for SubPanel $_SERVER['REQUEST_METHOD'] = 'GET'; $_REQUEST['module'] = 'Campaigns'; $_REQUEST['action'] = 'TrackDetailView'; $_REQUEST['record'] = $this->campaign->id; } public function tearDown() { // Delete created campaings SugarTestCampaignUtilities::removeAllCreatedCampaigns(); // Delete users SugarTestUserUtilities::removeAllCreatedAnonymousUsers(); } /** * @group 41523 */ public function testDeletedLeadsOnCapmaingStatusPage() { // Create 2 leads $lead1 = $this->createLeadFromWebForm('User1'); $lead2 = $this->createLeadFromWebForm('User2'); // Delete one lead $lead1->mark_deleted($lead1->id); $this->assertEquals($this->campaign->getDeletedCampaignLogLeadsCount(), 1); // Test SubPanel output $subpanel = new SubPanelTiles($this->campaign, 'Campaigns'); $html = $subpanel->display(); preg_match('|
.*?.*?.*?(.*?)|s', $html, $match); preg_match_all('|assertEquals(count($match[0]), 2); } /** * @param $lastName Last name for new lead * * @return Lead */ private function createLeadFromWebForm($lastName) { $postData = array( 'last_name' => $lastName, 'campaign_id' => $this->campaign->id, ); // Send request for add lead $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $GLOBALS['sugar_config']['site_url'] . '/index.php?entryPoint=WebToLeadCapture'); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($postData)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); $this->assertEquals('Thank You For Your Submission.', $response); curl_close($ch); // Fetch last created lead $createdLead = new Lead(); $query = 'SELECT * FROM leads ORDER BY date_entered DESC LIMIT 1'; $createdLead->fromArray($this->db->fetchOne($query)); return $createdLead; } }