@@ -46,7 +46,11 @@ public function testGetResourcesNoCache()
46
46
new ApiResource ('Test\Entity1 ' ),
47
47
new ApiResource ('Test\Entity3 ' )
48
48
];
49
- $ expectedAccessibleResources = ['Test\Entity3 ' ];
49
+ $ expectedAccessibleResources = [
50
+ 'Test\Entity1 ' => false ,
51
+ 'Test\Entity3 ' => true
52
+ ];
53
+ $ expectedExcludedActions = [];
50
54
51
55
$ this ->processor ->expects (self ::once ())
52
56
->method ('process ' )
@@ -67,7 +71,13 @@ function (CollectResourcesContext $context) use ($version, $requestType) {
67
71
->willReturn (null );
68
72
$ this ->resourcesCache ->expects (self ::once ())
69
73
->method ('saveResources ' )
70
- ->with ($ version , self ::identicalTo ($ requestType ), $ expectedResources , $ expectedAccessibleResources );
74
+ ->with (
75
+ $ version ,
76
+ self ::identicalTo ($ requestType ),
77
+ $ expectedResources ,
78
+ $ expectedAccessibleResources ,
79
+ $ expectedExcludedActions
80
+ );
71
81
72
82
self ::assertEquals (
73
83
$ expectedResources ,
@@ -142,7 +152,11 @@ public function testGetAccessibleResourcesWhenCacheDoesNotExist()
142
152
new ApiResource ('Test\Entity1 ' ),
143
153
new ApiResource ('Test\Entity3 ' )
144
154
];
145
- $ expectedAccessibleResources = ['Test\Entity3 ' ];
155
+ $ expectedAccessibleResources = [
156
+ 'Test\Entity1 ' => false ,
157
+ 'Test\Entity3 ' => true
158
+ ];
159
+ $ expectedExcludedActions = [];
146
160
147
161
$ this ->processor ->expects (self ::once ())
148
162
->method ('process ' )
@@ -167,15 +181,17 @@ function (CollectResourcesContext $context) use ($version, $requestType) {
167
181
->willReturn (null );
168
182
$ this ->resourcesCache ->expects (self ::at (2 ))
169
183
->method ('saveResources ' )
170
- ->with ($ version , self ::identicalTo ($ requestType ), $ expectedResources , $ expectedAccessibleResources );
184
+ ->with (
185
+ $ version ,
186
+ self ::identicalTo ($ requestType ),
187
+ $ expectedResources ,
188
+ $ expectedAccessibleResources ,
189
+ $ expectedExcludedActions
190
+ );
171
191
$ this ->resourcesCache ->expects (self ::at (3 ))
172
192
->method ('getAccessibleResources ' )
173
193
->with ($ version , self ::identicalTo ($ requestType ))
174
194
->willReturn ($ cachedData );
175
- $ this ->resourcesCache ->expects (self ::once ())
176
- ->method ('getResourcesWithoutIdentifier ' )
177
- ->with ($ version , self ::identicalTo ($ requestType ))
178
- ->willReturn ([]);
179
195
180
196
self ::assertEquals (
181
197
['Test\Entity3 ' ],
@@ -250,7 +266,11 @@ public function testIsResourceAccessibleWhenCacheDoesNotExist()
250
266
new ApiResource ('Test\Entity1 ' ),
251
267
new ApiResource ('Test\Entity3 ' )
252
268
];
253
- $ expectedAccessibleResources = ['Test\Entity3 ' ];
269
+ $ expectedAccessibleResources = [
270
+ 'Test\Entity1 ' => false ,
271
+ 'Test\Entity3 ' => true
272
+ ];
273
+ $ expectedExcludedActions = [];
254
274
255
275
$ this ->processor ->expects (self ::once ())
256
276
->method ('process ' )
@@ -275,15 +295,17 @@ function (CollectResourcesContext $context) use ($version, $requestType) {
275
295
->willReturn (null );
276
296
$ this ->resourcesCache ->expects (self ::at (2 ))
277
297
->method ('saveResources ' )
278
- ->with ($ version , self ::identicalTo ($ requestType ), $ expectedResources , $ expectedAccessibleResources );
298
+ ->with (
299
+ $ version ,
300
+ self ::identicalTo ($ requestType ),
301
+ $ expectedResources ,
302
+ $ expectedAccessibleResources ,
303
+ $ expectedExcludedActions
304
+ );
279
305
$ this ->resourcesCache ->expects (self ::at (3 ))
280
306
->method ('getAccessibleResources ' )
281
307
->with ($ version , self ::identicalTo ($ requestType ))
282
308
->willReturn ($ cachedData );
283
- $ this ->resourcesCache ->expects (self ::once ())
284
- ->method ('getResourcesWithoutIdentifier ' )
285
- ->with ($ version , self ::identicalTo ($ requestType ))
286
- ->willReturn ([]);
287
309
288
310
self ::assertFalse (
289
311
$ this ->resourcesProvider ->isResourceAccessible ('Test\Entity1 ' , $ version , $ requestType )
@@ -358,7 +380,11 @@ public function testIsResourceKnownWhenCacheDoesNotExist()
358
380
new ApiResource ('Test\Entity1 ' ),
359
381
new ApiResource ('Test\Entity3 ' )
360
382
];
361
- $ expectedAccessibleResources = ['Test\Entity3 ' ];
383
+ $ expectedAccessibleResources = [
384
+ 'Test\Entity1 ' => false ,
385
+ 'Test\Entity3 ' => true
386
+ ];
387
+ $ expectedExcludedActions = [];
362
388
363
389
$ this ->processor ->expects (self ::once ())
364
390
->method ('process ' )
@@ -383,7 +409,13 @@ function (CollectResourcesContext $context) use ($version, $requestType) {
383
409
->willReturn (null );
384
410
$ this ->resourcesCache ->expects (self ::at (2 ))
385
411
->method ('saveResources ' )
386
- ->with ($ version , self ::identicalTo ($ requestType ), $ expectedResources , $ expectedAccessibleResources );
412
+ ->with (
413
+ $ version ,
414
+ self ::identicalTo ($ requestType ),
415
+ $ expectedResources ,
416
+ $ expectedAccessibleResources ,
417
+ $ expectedExcludedActions
418
+ );
387
419
$ this ->resourcesCache ->expects (self ::at (3 ))
388
420
->method ('getAccessibleResources ' )
389
421
->with ($ version , self ::identicalTo ($ requestType ))
@@ -446,7 +478,13 @@ public function testGetResourceExcludeActionsWhenCacheDoesNotExist()
446
478
$ resource3 = new ApiResource ('Test\Entity3 ' );
447
479
$ resource3 ->addExcludedAction ('delete ' );
448
480
$ expectedResources = [$ resource1 , $ resource3 ];
449
- $ expectedAccessibleResources = ['Test\Entity3 ' ];
481
+ $ expectedAccessibleResources = [
482
+ 'Test\Entity1 ' => false ,
483
+ 'Test\Entity3 ' => true
484
+ ];
485
+ $ expectedExcludedActions = [
486
+ 'Test\Entity3 ' => ['delete ' ]
487
+ ];
450
488
451
489
$ this ->processor ->expects (self ::once ())
452
490
->method ('process ' )
@@ -474,7 +512,13 @@ function (CollectResourcesContext $context) use ($version, $requestType) {
474
512
->willReturn (null );
475
513
$ this ->resourcesCache ->expects (self ::at (2 ))
476
514
->method ('saveResources ' )
477
- ->with ($ version , self ::identicalTo ($ requestType ), $ expectedResources , $ expectedAccessibleResources );
515
+ ->with (
516
+ $ version ,
517
+ self ::identicalTo ($ requestType ),
518
+ $ expectedResources ,
519
+ $ expectedAccessibleResources ,
520
+ $ expectedExcludedActions
521
+ );
478
522
$ this ->resourcesCache ->expects (self ::at (3 ))
479
523
->method ('getExcludedActions ' )
480
524
->with ($ version , self ::identicalTo ($ requestType ))
@@ -621,6 +665,10 @@ public function testClearCache()
621
665
$ version = '1.2.3 ' ;
622
666
$ requestType = new RequestType ([RequestType::REST , RequestType::JSON_API ]);
623
667
668
+ $ this ->resourcesCache ->expects (self ::exactly (2 ))
669
+ ->method ('getResources ' )
670
+ ->with ($ version , self ::identicalTo ($ requestType ))
671
+ ->willReturn ([new ApiResource ('Test\Entity1 ' )]);
624
672
$ this ->resourcesCache ->expects (self ::exactly (2 ))
625
673
->method ('getAccessibleResources ' )
626
674
->with ($ version , self ::identicalTo ($ requestType ))
@@ -637,6 +685,10 @@ public function testClearCache()
637
685
->method ('clear ' );
638
686
639
687
// warmup the local cache
688
+ self ::assertEquals (
689
+ [new ApiResource ('Test\Entity1 ' )],
690
+ $ this ->resourcesProvider ->getResources ($ version , $ requestType )
691
+ );
640
692
self ::assertTrue (
641
693
$ this ->resourcesProvider ->isResourceAccessible ('Test\Entity1 ' , $ version , $ requestType )
642
694
);
@@ -652,6 +704,10 @@ public function testClearCache()
652
704
$ this ->resourcesProvider ->clearCache ();
653
705
654
706
// check that clearCache method clears the local cache
707
+ self ::assertEquals (
708
+ [new ApiResource ('Test\Entity1 ' )],
709
+ $ this ->resourcesProvider ->getResources ($ version , $ requestType )
710
+ );
655
711
self ::assertTrue (
656
712
$ this ->resourcesProvider ->isResourceAccessible ('Test\Entity1 ' , $ version , $ requestType )
657
713
);
0 commit comments