public function testMixedInstanceIdCreation() { Singleton::deleteInstance(self::SERVICE_CLASS, self::INSTANCE_ID); $paramOne = 'one'; $paramTwo = 'two'; /* @var $service DummyService */ $service = ServiceManager::getServiceObject(self::SERVICE_CLASS, self::CONTEXT, self::LANGUAGE, [$paramOne, $paramTwo], APFService::SERVICE_TYPE_SINGLETON, self::INSTANCE_ID); $this->assertEquals(self::CONTEXT, $service->getContext()); $this->assertEquals(self::LANGUAGE, $service->getLanguage()); $this->assertEquals(APFService::SERVICE_TYPE_SINGLETON, $service->getServiceType()); $this->assertEquals($paramOne, $service->getParamOne()); $this->assertEquals($paramTwo, $service->getParamTwo()); $service = ServiceManager::getServiceObject(self::SERVICE_CLASS, self::CONTEXT, self::LANGUAGE); $this->assertNotEquals($paramOne, $service->getParamOne()); $this->assertNotEquals($paramTwo, $service->getParamTwo()); /* @var $service DummyService */ $service = ServiceManager::getServiceObject(self::SERVICE_CLASS, self::CONTEXT, self::LANGUAGE, [], APFService::SERVICE_TYPE_SINGLETON, self::INSTANCE_ID); $this->assertEquals($paramOne, $service->getParamOne()); $this->assertEquals($paramTwo, $service->getParamTwo()); }
public static function deleteInstance($class, $instanceId = null) { parent::deleteInstance($class, $instanceId); // remove from APC store to not restore instance after in subsequent request by accident apc_delete(self::getCacheKey($class, $instanceId)); }
public function testInstanceWithIdDeletion() { /* @var $model TagModel */ Singleton::getInstance(self::MODEL_CLASS, [self::TEST_TAG], self::INSTANCE_ID); $model = Singleton::getInstance(self::MODEL_CLASS, [], self::INSTANCE_ID); $this->assertNotNull($model->getTag()); Singleton::deleteInstance(self::MODEL_CLASS, self::INSTANCE_ID); $model = Singleton::getInstance(self::MODEL_CLASS, [], self::INSTANCE_ID); $this->assertNull($model->getTag()); }