load([ ApcuCacheFactory::class => [ 'constructor' => [ 'version' => 'ss40test' ] ], MemcachedCacheFactory::class => MemcachedCacheFactory::class, CacheInterface::class . '.TestApcuCache' => [ 'factory' => ApcuCacheFactory::class, 'constructor' => [ 'namespace' => 'TestApcuCache', 'defaultLifetime' => 2600, ], ], CacheInterface::class . '.TestMemcache' => [ 'factory' => MemcachedCacheFactory::class, 'constructor' => [ 'namespace' => 'TestMemCache', 'defaultLifetime' => 5600, ], ], ApcuCache::class => MockCache::class, MemcachedCache::class => MockCache::class, ]); } public function testApcuCacheFactory() { $cache = Injector::inst()->get(CacheInterface::class . '.TestApcuCache'); $this->assertInstanceOf( MockCache::class, $cache ); $this->assertEquals( [ 'TestApcuCache_' . md5(BASE_PATH), 2600, 'ss40test' ], $cache->getArgs() ); } public function testMemCacheFactory() { $cache = Injector::inst()->get(CacheInterface::class . '.TestMemcache'); $this->assertInstanceOf( MockCache::class, $cache ); $this->assertEquals( [ null, 'TestMemCache_' . md5(BASE_PATH), 5600 ], $cache->getArgs() ); } }