1
1
<?php
2
2
3
3
/**
4
- * Test: Nette\PhpGenerator\::dump()
4
+ * Test: Nette\PhpGenerator\Dumper ::dump()
5
5
*/
6
6
7
7
declare (strict_types=1 );
@@ -15,41 +15,42 @@ require __DIR__ . '/../bootstrap.php';
15
15
16
16
ini_set ('serialize_precision ' , '14 ' );
17
17
18
- Assert::same ('0 ' , Dumper::dump (0 ));
19
- Assert::same ('1 ' , Dumper::dump (1 ));
20
- Assert::same ('0.0 ' , Dumper::dump (0.0 ));
21
- Assert::same ('1.0 ' , Dumper::dump (1.0 ));
22
- Assert::same ('0.1 ' , Dumper::dump (0.1 ));
23
- Assert::same ('INF ' , Dumper::dump (INF ));
24
- Assert::same ('-INF ' , Dumper::dump (-INF ));
25
- Assert::same ('NAN ' , Dumper::dump (NAN ));
26
- Assert::same ('null ' , Dumper::dump (null ));
27
- Assert::same ('true ' , Dumper::dump (true ));
28
- Assert::same ('false ' , Dumper::dump (false ));
29
-
30
- Assert::same ("'' " , Dumper::dump ('' ));
31
- Assert::same ("'Hello' " , Dumper::dump ('Hello ' ));
32
- Assert::same ('"\t\n\t" ' , Dumper::dump ("\t\n\t" ));
33
- Assert::same ("'I \u{F1}t \u{EB}rn \u{E2}ti \u{F4}n \u{E0}liz \u{E6}ti \u{F8}n' " , Dumper::dump ("I \u{F1}t \u{EB}rn \u{E2}ti \u{F4}n \u{E0}liz \u{E6}ti \u{F8}n " )); // Iñtërnâtiônàlizætiøn
34
- Assert::same ('"\rHello \$" ' , Dumper::dump ("\rHello $ " ));
35
- Assert::same ("'He \\llo' " , Dumper::dump ('He\llo ' ));
36
- Assert::same ('\'He\ll \\\\\o \\\'wor \\\\\\\'ld \\\\\'' , Dumper::dump ('He\ll \\\o \'wor \\\'ld \\' ));
37
- Assert::same ('[] ' , Dumper::dump ([]));
38
-
39
- Assert::same ('[$s] ' , Dumper::dump ([new PhpLiteral ('$s ' )]));
40
-
41
- Assert::same ('[1, 2, 3] ' , Dumper::dump ([1 , 2 , 3 ]));
42
- Assert::same ("['a', 7 => 'b', 'c', '9a' => 'd', 'e'] " , Dumper::dump (['a ' , 7 => 'b ' , 'c ' , '9a ' => 'd ' , 9 => 'e ' ]));
18
+ $ dumper = new Dumper ;
19
+ Assert::same ('0 ' , $ dumper ->dump (0 ));
20
+ Assert::same ('1 ' , $ dumper ->dump (1 ));
21
+ Assert::same ('0.0 ' , $ dumper ->dump (0.0 ));
22
+ Assert::same ('1.0 ' , $ dumper ->dump (1.0 ));
23
+ Assert::same ('0.1 ' , $ dumper ->dump (0.1 ));
24
+ Assert::same ('INF ' , $ dumper ->dump (INF ));
25
+ Assert::same ('-INF ' , $ dumper ->dump (-INF ));
26
+ Assert::same ('NAN ' , $ dumper ->dump (NAN ));
27
+ Assert::same ('null ' , $ dumper ->dump (null ));
28
+ Assert::same ('true ' , $ dumper ->dump (true ));
29
+ Assert::same ('false ' , $ dumper ->dump (false ));
30
+
31
+ Assert::same ("'' " , $ dumper ->dump ('' ));
32
+ Assert::same ("'Hello' " , $ dumper ->dump ('Hello ' ));
33
+ Assert::same ('"\t\n\t" ' , $ dumper ->dump ("\t\n\t" ));
34
+ Assert::same ("'I \u{F1}t \u{EB}rn \u{E2}ti \u{F4}n \u{E0}liz \u{E6}ti \u{F8}n' " , $ dumper ->dump ("I \u{F1}t \u{EB}rn \u{E2}ti \u{F4}n \u{E0}liz \u{E6}ti \u{F8}n " )); // Iñtërnâtiônàlizætiøn
35
+ Assert::same ('"\rHello \$" ' , $ dumper ->dump ("\rHello $ " ));
36
+ Assert::same ("'He \\llo' " , $ dumper ->dump ('He\llo ' ));
37
+ Assert::same ('\'He\ll \\\\\o \\\'wor \\\\\\\'ld \\\\\'' , $ dumper ->dump ('He\ll \\\o \'wor \\\'ld \\' ));
38
+ Assert::same ('[] ' , $ dumper ->dump ([]));
39
+
40
+ Assert::same ('[$s] ' , $ dumper ->dump ([new PhpLiteral ('$s ' )]));
41
+
42
+ Assert::same ('[1, 2, 3] ' , $ dumper ->dump ([1 , 2 , 3 ]));
43
+ Assert::same ("['a', 7 => 'b', 'c', '9a' => 'd', 'e'] " , $ dumper ->dump (['a ' , 7 => 'b ' , 'c ' , '9a ' => 'd ' , 9 => 'e ' ]));
43
44
same ("[
44
45
[
45
46
'a',
46
47
'loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong',
47
48
],
48
- ] " , Dumper:: dump ([['a ' , 'loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong ' ]]));
49
- Assert::same ("['a' => 1, [ \"\\r \" => \"\\r \", 2], 3] " , Dumper:: dump (['a ' => 1 , ["\r" => "\r" , 2 ], 3 ]));
49
+ ] " , $ dumper -> dump ([['a ' , 'loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong ' ]]));
50
+ Assert::same ("['a' => 1, [ \"\\r \" => \"\\r \", 2], 3] " , $ dumper -> dump (['a ' => 1 , ["\r" => "\r" , 2 ], 3 ]));
50
51
51
- Assert::same ("(object) [ \n\t'a' => 1, \n\t'b' => 2, \n] " , Dumper:: dump ((object ) ['a ' => 1 , 'b ' => 2 ]));
52
- Assert::same ("(object) [ \n\t'a' => (object) [ \n\t\t'b' => 2, \n\t], \n] " , Dumper:: dump ((object ) ['a ' => (object ) ['b ' => 2 ]]));
52
+ Assert::same ("(object) [ \n\t'a' => 1, \n\t'b' => 2, \n] " , $ dumper -> dump ((object ) ['a ' => 1 , 'b ' => 2 ]));
53
+ Assert::same ("(object) [ \n\t'a' => (object) [ \n\t\t'b' => 2, \n\t], \n] " , $ dumper -> dump ((object ) ['a ' => (object ) ['b ' => 2 ]]));
53
54
54
55
55
56
class Test
@@ -61,8 +62,8 @@ class Test
61
62
private $ c = 3 ;
62
63
}
63
64
64
- Assert::same ("Nette \\PhpGenerator \\Dumper::createObject('Test', [ \n\t'a' => 1, \n\t\"\\x00* \\x00b \" => 2, \n\t\"\\x00Test \\x00c \" => 3, \n]) " , Dumper:: dump (new Test ));
65
- Assert::equal (new Test , eval ('return ' . Dumper:: dump (new Test ) . '; ' ));
65
+ Assert::same ("Nette \\PhpGenerator \\Dumper::createObject('Test', [ \n\t'a' => 1, \n\t\"\\x00* \\x00b \" => 2, \n\t\"\\x00Test \\x00c \" => 3, \n]) " , $ dumper -> dump (new Test ));
66
+ Assert::equal (new Test , eval ('return ' . $ dumper -> dump (new Test ) . '; ' ));
66
67
67
68
68
69
class Test2 extends Test
@@ -83,8 +84,8 @@ class Test2 extends Test
83
84
}
84
85
}
85
86
86
- Assert::same ("Nette \\PhpGenerator \\Dumper::createObject('Test2', [ \n\t\"\\x00Test2 \\x00c \" => 4, \n\t'a' => 1, \n\t\"\\x00* \\x00b \" => 2, \n]) " , Dumper:: dump (new Test2 ));
87
- Assert::equal (new Test2 , eval ('return ' . Dumper:: dump (new Test2 ) . '; ' ));
87
+ Assert::same ("Nette \\PhpGenerator \\Dumper::createObject('Test2', [ \n\t\"\\x00Test2 \\x00c \" => 4, \n\t'a' => 1, \n\t\"\\x00* \\x00b \" => 2, \n]) " , $ dumper -> dump (new Test2 ));
88
+ Assert::equal (new Test2 , eval ('return ' . $ dumper -> dump (new Test2 ) . '; ' ));
88
89
89
90
90
91
class Test3 implements Serializable
@@ -103,11 +104,12 @@ class Test3 implements Serializable
103
104
}
104
105
}
105
106
106
- Assert::same ('unserialize( \'C:5:"Test3":0:{} \') ' , Dumper:: dump (new Test3 ));
107
- Assert::equal (new Test3 , eval ('return ' . Dumper:: dump (new Test3 ) . '; ' ));
107
+ Assert::same ('unserialize( \'C:5:"Test3":0:{} \') ' , $ dumper -> dump (new Test3 ));
108
+ Assert::equal (new Test3 , eval ('return ' . $ dumper -> dump (new Test3 ) . '; ' ));
108
109
109
110
Assert::exception (function () {
110
- Dumper::dump (function () {});
111
+ $ dumper = new Dumper ;
112
+ $ dumper ->dump (function () {});
111
113
}, Nette \InvalidArgumentException::class, 'Cannot dump closure. ' );
112
114
113
115
@@ -118,36 +120,39 @@ class TestDateTime extends DateTime
118
120
119
121
Assert::same (
120
122
"new DateTime('2016-06-22 20:52:43.123400', new DateTimeZone('Europe/Prague')) " ,
121
- Dumper:: dump (new DateTime ('2016-06-22 20:52:43.1234 ' , new DateTimeZone ('Europe/Prague ' )))
123
+ $ dumper -> dump (new DateTime ('2016-06-22 20:52:43.1234 ' , new DateTimeZone ('Europe/Prague ' )))
122
124
);
123
125
Assert::same (
124
126
"new DateTimeImmutable('2016-06-22 20:52:43.123400', new DateTimeZone('Europe/Prague')) " ,
125
- Dumper:: dump (new DateTimeImmutable ('2016-06-22 20:52:43.1234 ' , new DateTimeZone ('Europe/Prague ' )))
127
+ $ dumper -> dump (new DateTimeImmutable ('2016-06-22 20:52:43.1234 ' , new DateTimeZone ('Europe/Prague ' )))
126
128
);
127
129
same (
128
130
"Nette \\PhpGenerator \\Dumper::createObject('TestDateTime', [
129
131
'date' => '2016-06-22 20:52:43.123400',
130
132
'timezone_type' => 3,
131
133
'timezone' => 'Europe/Prague',
132
134
]) " ,
133
- Dumper:: dump (new TestDateTime ('2016-06-22 20:52:43.1234 ' , new DateTimeZone ('Europe/Prague ' )))
135
+ $ dumper -> dump (new TestDateTime ('2016-06-22 20:52:43.1234 ' , new DateTimeZone ('Europe/Prague ' )))
134
136
);
135
137
136
138
Assert::exception (function () {
137
- Dumper::dump (new class {
139
+ $ dumper = new Dumper ;
140
+ $ dumper ->dump (new class {
138
141
});
139
142
}, Nette \InvalidArgumentException::class, 'Cannot dump anonymous class. ' );
140
143
141
144
142
145
Assert::exception (function () {
143
146
$ rec = [];
144
147
$ rec [] = &$ rec ;
145
- Dumper::dump ($ rec );
148
+ $ dumper = new Dumper ;
149
+ $ dumper ->dump ($ rec );
146
150
}, Nette \InvalidArgumentException::class, 'Nesting level too deep or recursive dependency. ' );
147
151
148
152
149
153
Assert::exception (function () {
150
154
$ rec = new stdClass ;
151
155
$ rec ->x = &$ rec ;
152
- Dumper::dump ($ rec );
156
+ $ dumper = new Dumper ;
157
+ $ dumper ->dump ($ rec );
153
158
}, Nette \InvalidArgumentException::class, 'Nesting level too deep or recursive dependency. ' );
0 commit comments