private function getValidator() { $this->setValidatorId(); switch ($this->validatorId) { case "DATETIME": return BfValidatorFactory::getDateTimeValidator($this->logger); break; case "DECIMAL_3": return BfValidatorFactory::getDecimalValidator($this->logger, 3); break; case "DECIMAL_6": return BfValidatorFactory::getDecimalValidator($this->logger, 6); break; case "ID": return BfValidatorFactory::getIdValidator($this->logger); break; case "INDICATOR": return BfValidatorFactory::getIndicatorValidator($this->logger); break; case "INTEGER": return BfValidatorFactory::getIntegerValidator($this->logger); break; case "LONG_TEXT": return BfValidatorFactory::getLongTextValidator($this->logger); break; case "VARCHAR_60": return BfValidatorFactory::getVarcharValidator($this->logger, 60); break; case "VARCHAR_100": return BfValidatorFactory::getVarcharValidator($this->logger, 100); break; case "VARCHAR_255": return BfValidatorFactory::getVarcharValidator($this->logger, 255); break; } $this->logger->error(sprintf("no validator found for <%s> in SimpleXmlElement <%s> with validatorString <%s>", implode("/", $this->elementHierarchy), $this->rootNode, $this->validatorString)); return false; }
/** * @dataProvider varcharValidator */ public function testVarcharValidator($result, $size, $input) { $validator = BfValidatorFactory::getVarcharValidator($this->logger, $size); $validator->set($input); $this->assertEquals($result, $validator->isValid()); }