Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?php
2
/**
3
 * Unit Tests for serializing arrays
4
 *
5
 * @package    XML_Serializer
6
 * @subpackage tests
7
 * @author     Stephan Schmidt <schst@php-tools.net>
8
 * @author     Chuck Burgess <ashnazg@php.net>
9
 */
10
 
11
/**
12
 * PHPUnit main() hack
13
 *
14
 * "Call class::main() if this source file is executed directly."
15
 */
16
if (!defined('PHPUnit_MAIN_METHOD')) {
17
    define('PHPUnit_MAIN_METHOD', 'XML_Serializer_Scalars_TestCase::main');
18
}
19
require_once 'PHPUnit/Framework/TestCase.php';
20
require_once 'PHPUnit/Framework/TestSuite.php';
21
require_once 'PHPUnit/TextUI/TestRunner.php';
22
 
23
require_once 'XML/Serializer.php';
24
 
25
/**
26
 * Unit Tests for serializing arrays
27
 *
28
 * @package    XML_Serializer
29
 * @subpackage tests
30
 * @author     Stephan Schmidt <schst@php-tools.net>
31
 * @author     Chuck Burgess <ashnazg@php.net>
32
 */
33
class XML_Serializer_Scalars_TestCase extends PHPUnit_Framework_TestCase {
34
 
35
    public static function main() {
36
        $suite  = new PHPUnit_Framework_TestSuite('XML_Serializer_Scalars_TestCase');
37
        $result = PHPUnit_TextUI_TestRunner::run($suite);
38
    }
39
 
40
    protected function setUp() {}
41
 
42
    protected function tearDown() {}
43
 
44
   /**
45
    * Test serializing a string
46
    */
47
    public function testString()
48
    {
49
        $s = new XML_Serializer();
50
        $s->serialize('a string');
51
        $this->assertEquals('<string>a string</string>', $s->getSerializedData());
52
        $s->serialize('');
53
        $this->assertEquals('<string />', $s->getSerializedData());
54
    }
55
 
56
   /**
57
    * Test serializing a integer
58
    */
59
    public function testInteger()
60
    {
61
        $s = new XML_Serializer();
62
        $s->serialize(456223);
63
        $this->assertEquals('<integer>456223</integer>', $s->getSerializedData());
64
        $s->serialize(-34);
65
        $this->assertEquals('<integer>-34</integer>', $s->getSerializedData());
66
        $s->serialize(0);
67
        $this->assertEquals('<integer>0</integer>', $s->getSerializedData());
68
    }
69
 
70
   /**
71
    * Test serializing a float
72
    */
73
    public function testDouble()
74
    {
75
        $s = new XML_Serializer();
76
        $s->serialize(455.65);
77
        $this->assertEquals('<double>455.65</double>', $s->getSerializedData());
78
        $s->serialize(-1.65451);
79
        $this->assertEquals('<double>-1.65451</double>', $s->getSerializedData());
80
    }
81
 
82
   /**
83
    * Test serializing a boolean
84
    */
85
    public function testBoolean()
86
    {
87
        $s = new XML_Serializer();
88
        $s->serialize(true);
89
        $this->assertEquals('<boolean>1</boolean>', $s->getSerializedData());
90
        $s->serialize(false);
91
        $this->assertEquals('<boolean />', $s->getSerializedData());
92
    }
93
 
94
   /**
95
    * Test serializing a null value
96
    */
97
    public function testNull()
98
    {
99
        $s = new XML_Serializer();
100
        $s->serialize(null);
101
        $this->assertEquals('<NULL />', $s->getSerializedData());
102
    }
103
 
104
   /**
105
    * Test serializing a resource
106
    */
107
    public function testResource()
108
    {
109
        $s = new XML_Serializer();
110
        $s->serialize(fopen(__FILE__, 'r'));
111
        $this->assertRegExp('/<resource>Resource id #[0-9]+<\/resource>/', $s->getSerializedData());
112
    }
113
 
114
}
115
 
116
/**
117
 * PHPUnit main() hack
118
 * "Call class::main() if this source file is executed directly."
119
 */
120
if (PHPUnit_MAIN_METHOD == 'XML_Serializer_Scalars_TestCase::main') {
121
    XML_Serializer_Scalars_TestCase::main();
122
}
123
?>