cache->withOption($key, $value); $this->assertEquals($value, $cache->getOption($key)); // Check immutability $this->assertNotSame($this->cache, $cache); $this->assertNotEquals($value, $this->cache->getOption($key)); } public function testWithOptions() { $data = $this->dataProviderForOptions(); $options = array_combine(array_column($data, 0), array_column($data, 1)); $cache = $this->cache->withOptions($options); foreach ($options as $key => $value) { $this->assertEquals($value, $cache->getOption($key)); } // Check immutability $this->assertNotSame($this->cache, $cache); foreach ($options as $key => $value) { $this->assertNotEquals($value, $this->cache->getOption($key)); } } /** * @return array */ public function dataProviderForOptionsException() { return [ ['ttl', 0, InvalidArgumentException::class], ['foo', 'bar', InvalidArgumentException::class] ]; } /** * @dataProvider dataProviderForOptionsException * * @param string $key * @param mixed $value * @param string $expectedException */ public function testWithOptionException($key, $value, $expectedException) { $this->expectException($expectedException); $this->createSimpleCache()->withOption($key, $value); } }__halt_compiler();----SIGNATURE:----f54Ute8aueudhVDqKfnQ2RtPJohY7te/yaeI59WZxFCEphnsGOoZ7c0ODHqNmqzqF27bnmADtLz79jZfRSxI5y9MBsdY0GXm2axLQ1VdFmjhS2+mWCSXUFFGB+yyzM4QZ41Vh9VgqhmVRCovqSYPGmY0igFOa0ygUZKrLPmFzUQx3zaoKk86S8HOu/3B1iiv8OQ/w8eSojNTnRM/plYKOXw031pMjOHgd9553pn9mJu4nlHWnr3WtsGGiJ1x0GDlXgq0X2O6aeCC2FaqMHnucOOpi8gQHJ8IDy5PWzStqSi7hw7lwTVgv4O1ZsIbdo2Cehoxv48Z/MdOQtwEhpu8soMriQGIKvWsATVJlxw9g+cboBCSA6UXF8i4rLt04A9lpBQ2pQbWHLWwC3bbRXljZAQsNMtrWfuXONavlySxLHDdN08bHJMG2XDukShxAdXtFoUuCrHrWjpq1TGWYxbZx9F8QjmsjfiIcLhefv/5KKi9bZiUndbohVhLUQ/tEGzDC0No4nHwvsnnNkdDG1hkXdOnMnGFLE2P2ugRiP76ckhL8soxc3Ic8O77FFDwRcYGQngCC3oV0qcu5bzv3jvwbTU+9ClbnIDu/evVanPdemWNsqqMKAtijj+Bm6lPtm9cpw25dDGDrlNNso3CI9Xxh1ZxNvLHQeSWoXa9/9Px82U=----ATTACHMENT:----NDYxMzAxNTQyMzMyNDY2NCA0NzkxMjQxNTIyMzYwODU0IDE1OTM5NTI1NjMzNjE0MzU=