@@ -12,14 +12,6 @@ use Nette\PhpGenerator\Helpers,
12
12
require __DIR__ . '/../bootstrap.php ' ;
13
13
14
14
15
- class Test
16
- {
17
- public $ a = 1 ;
18
- protected $ b = 2 ;
19
- private $ c = 3 ;
20
- }
21
-
22
-
23
15
Assert::same ( '1 ' , Helpers::dump (1 ) );
24
16
Assert::same ( '1.0 ' , Helpers::dump (1.0 ) );
25
17
Assert::same ( 'NULL ' , Helpers::dump (NULL ) );
@@ -41,5 +33,51 @@ Assert::same( "array('a' => 1, array(\"\\r\" => \"\\r\", 2), 3)", Helpers::dump(
41
33
42
34
Assert::same ( "(object) array( \n\t'a' => 1, \n\t'b' => 2, \n) " , Helpers::dump ((object ) array ('a ' => 1 , 'b ' => 2 )) );
43
35
Assert::same ( "(object) array( \n\t'a' => (object) array( \n\t\t'b' => 2, \n\t), \n) " , Helpers::dump ((object ) array ('a ' => (object ) array ('b ' => 2 ))) );
36
+
37
+
38
+ class Test
39
+ {
40
+ public $ a = 1 ;
41
+ protected $ b = 2 ;
42
+ private $ c = 3 ;
43
+ }
44
+
44
45
Assert::same ( "Nette \\PhpGenerator \\Helpers::createObject('Test', array( \n\t'a' => 1, \n\t\"\\x00* \\x00b \" => 2, \n\t\"\\x00Test \\x00c \" => 3, \n)) " , Helpers::dump (new Test ) );
45
46
Assert::equal ( new Test , eval ('return ' . Helpers::dump (new Test ) . '; ' ) );
47
+
48
+
49
+ class Test2 extends Test
50
+ {
51
+ private $ c = 4 ;
52
+ public $ d = 5 ;
53
+
54
+ function __sleep ()
55
+ {
56
+ return array ('c ' , 'b ' , 'a ' );
57
+ }
58
+
59
+ function __wakeup ()
60
+ {
61
+ }
62
+ }
63
+
64
+ Assert::same ( "Nette \\PhpGenerator \\Helpers::createObject('Test2', array( \n\t\"\\x00Test2 \\x00c \" => 4, \n\t'a' => 1, \n\t\"\\x00* \\x00b \" => 2, \n)) " , Helpers::dump (new Test2 ) );
65
+ Assert::equal ( new Test2 , eval ('return ' . Helpers::dump (new Test2 ) . '; ' ) );
66
+
67
+
68
+ class Test3 implements Serializable
69
+ {
70
+ private $ a ;
71
+
72
+ function serialize ()
73
+ {
74
+ return '' ;
75
+ }
76
+
77
+ function unserialize ($ s )
78
+ {
79
+ }
80
+ }
81
+
82
+ Assert::same ( 'unserialize( \'C:5:"Test3":0:{} \') ' , Helpers::dump (new Test3 ) );
83
+ Assert::equal ( new Test3 , eval ('return ' . Helpers::dump (new Test3 ) . '; ' ) );
0 commit comments