diff --git a/tests/Middlewares/PruneCacheMiddlewareTest.php b/tests/Middlewares/PruneCacheMiddlewareTest.php new file mode 100644 index 0000000..a2c89c7 --- /dev/null +++ b/tests/Middlewares/PruneCacheMiddlewareTest.php @@ -0,0 +1,44 @@ +container->set('cache_lottery', 100); + } + + /** @dataProvider pruneableCacheAdapters */ + public function test_it_prunes_the_cache_whe_using_a_pruneable_adapter_and_winning_the_lottery(string $cacheAdapter): void + { + /** @var CacheInterface&MockObject */ + $cache = $this->createMock($cacheAdapter); + $cache->expects($this->once())->method('prune'); + + (new PruneCacheMiddleware($this->config, $cache))( + $this->createMock(ServerRequestInterface::class), + $this->createMock(RequestHandlerInterface::class) + ); + } + + public function pruneableCacheAdapters(): array + { + return [ + [FilesystemAdapter::class], + [PhpFilesAdapter::class], + ]; + } +}