name)); $this->user = $GLOBALS['current_user']; $this->user->setPreference('datef', 'm/d/Y'); $this->user->setPreference('timef', 'h:ia'); $this->user->setPreference('timezone', 'UTC'); } public function tearDown() { $_POST = array(); $this->bean->db->query("DELETE FROM meetings WHERE id = '". $this->bean->id ."'"); $this->bean->db->query("DELETE FROM {$this->bean->rel_users_table} WHERE meeting_id = '". $this->bean->id ."'"); parent::tearDown(); SugarTestHelper::tearDown(); } public function getPostData() { return array( 'module' => 'Calendar', 'name' => 'Bug57299_'.time(), 'current_module' => $this->name, 'record' => '', 'user_invitees' => '1', 'contact_invitees' => '', 'lead_invitees' => '', 'send_invites' => '', 'edit_all_recurrences' => true, 'repeat_parent_id' => '', 'repeat_type' => '', 'repeat_interval' => '', 'repeat_count' => '', 'repeat_until' => '', 'repeat_dow' => '', 'appttype' => $this->name, 'type' => 'Sugar', 'date_start' => '11/25/2012 12:00pm', 'parent_type' => 'Accounts', 'parent_name' => '', 'parent_id' => '', 'date_end' => '11/25/2012 12:15pm', 'location' => '', 'duration' => 900, 'duration_hours' => 0, 'duration_minutes' => 15, 'reminder_checked' => 1, 'reminder_time' => 1800, 'email_reminder_checked' => 0, 'email_reminder_time' => 60, 'assigned_user_name' => 'Administrator', 'assigned_user_id' => 1, 'update_fields_team_name_collection' => '', 'team_name_new_on_update' => false, 'team_name_allow_update' => '', 'team_name_allow_new' => true, 'team_name' => 'team_name', 'team_name_field' => 'team_name_table', 'arrow_team_name' => 'hide', 'team_name_collection_0' => 'Global', 'id_team_name_collection_0' => 1, 'primary_team_name_collection' => 0, 'description' => '', ); } /** * providerData * * @return Array values for testing */ public function providerData() { return array( array('Held', true), array('Held', false), ); } /** * @group 57299 * Test that new Meeting created from module Calendar save in database correctly * * @dataProvider providerData * @return void */ public function testDisplaysMeetingWithStatusHeldInCalendar($status, $return_module) { $_POST = $this->getPostData(); $_POST['status'] = $status; $_POST['return_module'] = ($return_module) ? 'Calendar' : ''; $_REQUEST = $_POST; $this->formBase = new MeetingFormBase(); $this->bean = $this->formBase->handleSave('', false, false); $sql = "SELECT * FROM {$this->bean->rel_users_table} WHERE meeting_id = '". $this->bean->id . "'"; $result = $this->bean->db->query($sql); $rows = $this->bean->db->fetchByAssoc($result); //assert that if we return name of Calendar module //create relation between created Meeting and current User if($return_module) { $this->assertNotNull($rows); } else { $this->assertFalse($rows); } } }