public function testCreateWithGetCacheItemThrowsCacheException()
{
$decoratedResourceNameCollectionFactory = $this->prophesize(ResourceNameCollectionFactoryInterface::class);
$decoratedResourceNameCollectionFactory->create()->willReturn(new ResourceNameCollection([Dummy::class]))->shouldBeCalled();
$cacheException = $this->prophesize(CacheException::class);
$cacheException->willExtend(\Exception::class);
$cacheItemPool = $this->prophesize(CacheItemPoolInterface::class);
$cacheItemPool->getItem(CachedResourceNameCollectionFactory::CACHE_KEY)->willThrow($cacheException->reveal())->shouldBeCalled();
$cachedResourceNameCollectionFactory = new CachedResourceNameCollectionFactory($cacheItemPool->reveal(), $decoratedResourceNameCollectionFactory->reveal());
$resultedResourceNameCollection = $cachedResourceNameCollectionFactory->create();
$this->assertInstanceOf(ResourceNameCollection::class, $resultedResourceNameCollection);
$this->assertEquals(new ResourceNameCollection([Dummy::class]), $resultedResourceNameCollection);
}