/** * Validate the count value * * @param mixed $count * @return boolean */ private function validateCount($count) { $integerValidator = new IntegerValidator(); $integerValidator->setMessage("Count '%value%' ist keine Zahl", IntegerValidator::INVALID); if (!$integerValidator->isValid($count)) { $messages = array_values($integerValidator->getMessages()); $this->addError(new Error('count', $count, $messages)); return false; } // !! Achtung: Fehler im Zend Framework Version 1.11.0 !! // Der zu pruefende Wert muss groesser als der Parameter 'min' sein. // D.h. da der count Parameter mindestens den Wert 1 haben muss, // wird als 'min' 0 uebergeben $greaterThanValidator = new GreaterThanValidator(array('min' => 0)); $greaterThanValidator->setMessage("Count '%value%' ist nicht groesser als '%min%'", GreaterThanValidator::NOT_GREATER); if (!$greaterThanValidator->isValid($count)) { $messages = array_values($greaterThanValidator->getMessages()); $this->addError(new Error('count', $count, $messages)); return false; } $config = Registry::getConfig(); $configuredUuidLimit = intval($config->uuid->limit); $lessThanValidator = new LessThanValidator(array('max' => $configuredUuidLimit)); $lessThanValidator->setMessage("Count '%value%' ist groesser als das konfigurierte uuid limit '%max%'", LessThanValidator::NOT_LESS); if (!$lessThanValidator->isValid($count)) { $messages = array_values($lessThanValidator->getMessages()); $this->addError(new Error('count', $count, $messages)); return false; } return true; }
/** * @param string $value * @return boolean */ public function isValid($value) { $this->_setValue($value); if (empty($value)) { $this->_error(self::IS_EMPTY); return false; } if (!is_string($value)) { $this->_error(self::NOT_A_STRING); return false; } $parts = explode('.', $value); if (count($parts) != 3) { $this->_error(self::INVALID); return false; } $buildIdValidator = new BuildIdValidator(); if (!$buildIdValidator->isValid($parts[0])) { $this->_error(self::INVALID); return false; } $integerValidator = new IntegerValidator(); if (!$integerValidator->isValid($parts[1])) { $this->_error(self::INVALID); return false; } $uniqueIdValidator = new UniqueIdValidator('', ''); if (!$uniqueIdValidator->isValid($parts[2])) { $this->_error(self::INVALID); return false; } return true; }
/** * @param string $limit * @return boolean */ private function validateLimit($limit) { $integerValidator = new IntegerValidator(); $integerValidator->setMessage("Limit '%value%' ist keine Zahl", IntegerValidator::INVALID); if (!$integerValidator->isValid($limit)) { $messages = array_values($integerValidator->getMessages()); $this->addError(new Error('limit', $limit, $messages)); return false; } $greaterThanValidator = new GreaterThanValidator(array('min' => 0)); $greaterThanValidator->setMessage("Limit '%value%' ist nicht groesser als '%min%'", GreaterThanValidator::NOT_GREATER); if (!$greaterThanValidator->isValid($limit)) { $messages = array_values($greaterThanValidator->getMessages()); $this->addError(new Error('limit', $limit, $messages)); return false; } return true; }
/** * @test * @group small * @group dev * @group library * @dataProvider integerValuesProvider */ public function isValidShouldReturnTrueForIntegerValues($value) { $integerValidator = new IntegerValidator(); $this->assertTrue($integerValidator->isValid($value)); }
/** * @param string $value * @param string $field * @param array $limit * @return boolean */ private function validateInteger($value, $field, $limit = array()) { $integerValidator = new IntegerValidator(); $integerValidator->setMessage("'%value%' ist keine Zahl", IntegerValidator::INVALID); if (!$integerValidator->isValid($value)) { $messages = array_values($integerValidator->getMessages()); $this->addError(new Error($field, $value, $messages)); return false; } if (isset($limit['min'])) { $greaterThanValidator = new GreaterThanValidator($limit); $greaterThanValidator->setMessage("'%value%' ist nicht größer oder gleich '%min%'", GreaterThanValidator::NOT_GREATER); if (!$greaterThanValidator->isValid($value)) { $messages = array_values($greaterThanValidator->getMessages()); $this->addError(new Error($field, $value, $messages)); return false; } } if (isset($limit['max'])) { $lessThanValidator = new LessThanValidator($limit); $lessThanValidator->setMessage("'%value%' ist nicht kleiner oder gleich '%max%'", LessThanValidator::NOT_LESS); if (!$lessThanValidator->isValid($value)) { $messages = array_values($lessThanValidator->getMessages()); $this->addError(new Error($field, $value, $messages)); return false; } } return true; }
/** * @param array $filterKeyValue * @return boolean */ private function validateNumericFilterValue($filterKeyValue) { $filterKeys = array_keys($filterKeyValue); $filterKey = $filterKeys[0]; $filterValues = array_values($filterKeyValue); $filterValue = $filterValues[0]; $integerValidator = new IntegerValidator(); $integerValidator->setMessage("{$filterKey} '%value%' ist keine Zahl", IntegerValidator::INVALID); if (!$integerValidator->isValid($filterValue)) { $messages = array_values($integerValidator->getMessages()); $this->addError(new Error($filterKey, $filterValue, $messages)); return false; } return true; }