]> CyberLeo.Net >> Repos - Github/sugarcrm.git/blob - tests/tests/SugarTestImportUtilitiesTest.php
Added unit tests.
[Github/sugarcrm.git] / tests / tests / SugarTestImportUtilitiesTest.php
1 <?php
2
3 class SugarTestImportUtilitiesTest extends Sugar_PHPUnit_Framework_TestCase
4 {
5     public function tearDown() 
6     {
7         SugarTestImportUtilities::removeAllCreatedFiles();
8     }
9
10     public function testCanCreateFile() 
11     {
12         $filename = SugarTestImportUtilities::createFile();
13
14         $this->assertTrue(is_file($filename));
15         $fp = fopen($filename,"r");
16         $i = 0;
17         $buffer = '';
18         while (!feof($fp)) {
19             $columns = $buffer;
20             $buffer = fgetcsv($fp, 4096);
21             if ( $buffer !== false )
22                 $i++;
23         }
24         fclose($fp);
25         $this->assertEquals($i,2000);
26         $this->assertEquals(count($columns),3);
27     }
28
29     public function testCanCreateFileAndSpecifyLines() 
30     {
31         $filename = SugarTestImportUtilities::createFile(1);
32
33         $this->assertTrue(is_file($filename));
34         $fp = fopen($filename,"r");
35         $i = 0;
36         $buffer = '';
37         while (!feof($fp)) {
38             $columns = $buffer;
39             $buffer = fgetcsv($fp, 4096);
40             if ( $buffer !== false )
41                 $i++;
42         }
43         fclose($fp);
44         $this->assertEquals($i,1);
45         $this->assertEquals(count($columns),3);
46     }
47     
48     public function testCanCreateFileAndSpecifyLinesAndColumns() 
49     {
50         $filename = SugarTestImportUtilities::createFile(2,5);
51
52         $this->assertTrue(is_file($filename));
53         $fp = fopen($filename,"r");
54         $i = 0;
55         $buffer = '';
56         while (!feof($fp)) {
57             $columns = $buffer;
58             $buffer = fgetcsv($fp, 4096);
59             if ( $buffer !== false )
60                 $i++;
61         }
62         fclose($fp);
63         $this->assertEquals($i,2);
64         $this->assertEquals(count($columns),5);
65     }
66
67     public function testCanRemoveAllCreatedFiles() 
68     {
69         $filesCreated = array();
70         
71         for ($i = 0; $i < 5; $i++) 
72             $filesCreated[] = SugarTestImportUtilities::createFile();
73         $filesCreated[] = $filesCreated[4].'-0';
74         
75         SugarTestImportUtilities::removeAllCreatedFiles();
76         
77         foreach ( $filesCreated as $filename )
78             $this->assertFalse(is_file($filename));
79     }
80 }
81