]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - tests/include/vCard/vCardTest.php
Added unit tests.
[Github/sugarcrm.git] / tests / include / vCard / vCardTest.php
1 <?php
2 require_once 'include/vCard.php';
3
4 class vCardTest extends Sugar_PHPUnit_Framework_TestCase
5 {
6     public function setUp()
7     {
8         $GLOBALS['current_user'] = SugarTestUserUtilities::createAnonymousUser();
9         $beanList = array();
10         $beanFiles = array();
11         require('include/modules.php');
12         $GLOBALS['beanList'] = $beanList;
13         $GLOBALS['beanFiles'] = $beanFiles;
14         $GLOBALS['beanList']['vCardMockModule'] = 'vCardMockModule';
15         $GLOBALS['beanFiles']['vCardMockModule'] = 'tests/include/vCard/vCardTest.php';
16     }
17     
18     public function tearDown()
19     {
20         unset($GLOBALS['current_user']);
21         unset($GLOBALS['beanList']);
22         unset($GLOBALS['beanFiles']);
23     }
24     
25     /**
26      * @group bug10419
27      */
28         public function testImportedVcardWithDifferentCharsetIsTranslatedToTheDefaultCharset()
29     {
30         $filename  = dirname(__FILE__)."/ISO88591SampleFile.vcf";
31         $module = "vCardMockModule";
32         
33         $vcard = new vCard();
34         $record = $vcard->importVCard($filename,$module);
35         
36         $bean = new vCardMockModule;
37         $bean = $bean->retrieve($record);
38         
39         $this->assertEquals('Hans Müster',$bean->first_name.' '.$bean->last_name);
40     }
41     
42     public function testImportedVcardWithSameCharsetIsNotTranslated()
43     {
44         $filename  = dirname(__FILE__)."/UTF8SampleFile.vcf";
45         $module = "vCardMockModule";
46         
47         $vcard = new vCard();
48         $record = $vcard->importVCard($filename,$module);
49         
50         $bean = new vCardMockModule;
51         $bean = $bean->retrieve($record);
52         
53         $this->assertEquals('Hans Müster',$bean->first_name.' '.$bean->last_name);
54     }
55 }
56
57 class vCardMockModule extends Person
58 {
59     private static $_savedObjects = array();
60     
61     public function save()
62     {
63         $this->id = create_guid();
64         
65         self::$_savedObjects[$this->id] = $this;
66         
67         return $this->id;
68     }
69     
70     public function retrieve($id = -1, $encode=true,$deleted=true)
71         {
72         if ( isset(self::$_savedObjects[$id]) ) 
73             return self::$_savedObjects[$id];
74         
75         return null;
76     }
77 }