@@ -24,39 +24,52 @@ public function testIncludes()
2424 ])
2525 ]);
2626
27- $ this ->assert (['foo ' , 'bar ' ], Includes::get ($ request ));
27+ $ expected = [
28+ // [ expected, through ]
29+ ['foo ' , 'bar ' ], // root
30+ ['bar ' , 'foo ' , 'foo-bar ' ], // foo
31+ ['baz ' ], // foo.bar
32+ ['foo ' ], // foo.foo
33+ [], // foo.foo.foo
34+ [], // foo.tar
35+ ['tar ' ], // bar
36+ ['foo ' , 'bar ' ], // root
37+ 'final '
38+ ];
2839
29- Includes::through ('foo ' , function () use ($ request ) {
30- $ this ->assert (['bar ' , 'foo ' , 'foo-bar ' ], Includes::get ($ request ));
40+ $ this ->assert (array_shift ($ expected ), Includes::get ($ request ), 'root ' );
3141
32- Includes::through ('bar ' , function () use ($ request ) {
33- $ this ->assert (['baz ' ], Includes::get ($ request ));
42+ Includes::through ('foo ' , function () use (&$ expected , $ request ) {
43+ $ this ->assert (array_shift ($ expected ), Includes::get ($ request ), 'root.foo ' );
44+
45+ Includes::through ('bar ' , function () use (&$ expected , $ request ) {
46+ $ this ->assert (array_shift ($ expected ), Includes::get ($ request ), 'root.foo.bar ' );
3447 });
3548
36- Includes::through ('foo ' , function () use ($ request ) {
37- $ this ->assert ([ ' foo ' ] , Includes::get ($ request ));
49+ Includes::through ('foo ' , function () use (& $ expected , $ request ) {
50+ $ this ->assert (array_shift ( $ expected ) , Includes::get ($ request ), ' root.foo.foo ' );
3851
39- Includes::through ('foo ' , function () use ($ request ) {
40- $ this ->assert ([] , Includes::get ($ request ));
52+ Includes::through ('foo ' , function () use (& $ expected , $ request ) {
53+ $ this ->assert (array_shift ( $ expected ) , Includes::get ($ request ), ' root.foo.foo.foo ' );
4154 });
4255 });
4356
44- Includes::through ('tar ' , function () use ($ request ) {
45- $ this ->assert ([] , Includes::get ($ request ));
57+ Includes::through ('tar ' , function () use (& $ expected , $ request ) {
58+ $ this ->assert (array_shift ( $ expected ) , Includes::get ($ request ), ' root.foo.tar ' );
4659 });
4760 });
4861
49- Includes::through ('bar ' , function () use ($ request ) {
50- $ this ->assert ([ ' tar ' ] , Includes::get ($ request ));
62+ Includes::through ('bar ' , function () use (& $ expected , $ request ) {
63+ $ this ->assert (array_shift ( $ expected ) , Includes::get ($ request ), ' root.foo.bar ' );
5164 });
5265
53- $ this ->assert ([ ' foo ' , ' bar ' ], Includes::get ($ request ));
54- $ this ->assertEquals (8 , $ this -> count );
66+ $ this ->assert (array_shift ( $ expected ), Includes::get ($ request ), ' root ' );
67+ $ this ->assertEquals (' final ' , array_shift ( $ expected ) );
5568 }
5669
57- public function assert ($ expected , $ actual )
70+ public function assert ($ expected , $ actual, $ message = '' )
5871 {
59- $ this ->assertEquals ($ expected , $ actual );
72+ $ this ->assertEquals ($ expected , $ actual, $ message );
6073 $ this ->count ++;
6174 }
6275}
0 commit comments