/** * @param $flag * @return Tx_FeatureFlag_Domain_Model_FeatureFlag * @throws Tx_FeatureFlag_Service_Exception_FeatureNotFound * @return boolean */ protected function getFeatureFlag($flag) { if (false === array_key_exists($flag, $this->cachedFlags)) { $flagModel = $this->featureFlagRepository->findByFlag($flag); if (false === $flagModel instanceof Tx_FeatureFlag_Domain_Model_FeatureFlag) { throw new Tx_FeatureFlag_Service_Exception_FeatureNotFound('Feature Flag not found: "' . $flag . '"', 1383842028); } $this->cachedFlags[$flag] = $flagModel; } return $this->cachedFlags[$flag]; }
/** * @test */ public function shouldGetFeatureFlagByFlagName() { $this->importDataSet(dirname(__FILE__) . '/fixtures/FeatureFlagTest.shouldGetFeatureFlagByFlagName.xml'); $flag = $this->featureFlagRepository->findByFlag('my_test_feature_flag'); $this->assertInstanceOf('Tx_FeatureFlag_Domain_Model_FeatureFlag', $flag); }