Exemplo n.º 1
0
 /**
  * Test to ensure that whenever the inboud folder is deleted, it will be created for a user
  * and the parent_id for the other folders will be updated accordingly.
  *
  */
 public function testCreationOnDeletedInboundFolder()
 {
     $this->createNewSugarFolder();
     // Call preflightUser() to re-create all folders
     $emailUI = new EmailUI();
     $emailUI->preflightUser($GLOBALS['current_user']);
     $error_message = "Unable to get user folders";
     $rootNode = new ExtNode('', '');
     // Delete one folder type
     $GLOBALS['db']->query("DELETE FROM folders WHERE folder_type = 'inbound' AND created_by='{$GLOBALS['current_user']->id}'");
     // Retrieve folders
     $ret = $this->folder->getUserFolders($rootNode, "", $GLOBALS['current_user'], true);
     $this->assertEquals(0, count($ret), $error_message);
     // Call preflightUser() to re-create missing folder
     $emailUI->preflightUser($GLOBALS['current_user']);
     // Retrieve folders
     $ret = $this->folder->getUserFolders($rootNode, "", $GLOBALS['current_user'], true);
     $this->assertEquals(1, count($ret));
     // Should contain all folders after preflightUser
     $folderTypes = array();
     foreach ($ret[0]['children'] as $p) {
         $folderTypes[] = $p['folder_type'];
     }
     $this->assertContains("draft", $folderTypes);
 }
Exemplo n.º 2
0
 /**
  * Test retreiving a list of emails for a particular folder.
  *
  */
 function testGetListItemsForEmailXML()
 {
     //Create the my Emails Folder
     $GLOBALS['mod_strings'] = return_module_language($GLOBALS['current_language'], "Emails");
     require_once 'modules/Emails/EmailUI.php';
     $emailUI = new EmailUI();
     $emailUI->preflightUser($GLOBALS['current_user']);
     $error_message = "Unable to get list items for email.";
     $rootNode = new ExtNode('', '');
     $folderOpenState = "";
     $ret = $this->folder->getUserFolders($rootNode, $folderOpenState, $GLOBALS['current_user'], true);
     $this->assertEquals(1, count($ret), $error_message);
     $folderID = $ret[0]['id'];
     //Create the Email Object
     $emailParams = array('status' => 'unread', 'assigned_user_id' => $GLOBALS['current_user']->id);
     $email = $this->_createEmailObject($emailParams);
     $this->emails[] = $email->id;
     //Add Email Object to My Email Folder
     $my_email = new SugarFolder();
     $my_email->retrieve($folderID);
     $my_email->addBean($email, $GLOBALS['current_user']);
     //Make sure the email was added to the folder.
     $emailExists = $my_email->checkEmailExistForFolder($email->id);
     $this->assertTrue($emailExists, $error_message);
     //Get the list of emails.
     $emailList = $my_email->getListItemsForEmailXML($folderID);
     $this->assertEquals($email->id, $emailList['out'][0]['uid'], $error_message);
 }