Пример #1
0
 public function testInvalidChecksumAdapter()
 {
     require_once dirname(__FILE__) . "/_files/MyBarcode1.php";
     $barcode = new Barcode\Barcode('MyBarcode1');
     $this->assertFalse($barcode->isValid('0000000'));
     $this->assertTrue(array_key_exists('barcodeFailed', $barcode->getMessages()));
     $this->assertFalse($barcode->getAdapter()->checksum('0000000'));
 }
Пример #2
0
 /**
  * Standard validation for most of barcode objects
  * @param string $value
  * @param array  $options
  */
 protected function _validateText($value, $options = array())
 {
     $validatorName = isset($options['validator']) ? $options['validator'] : $this->getType();
     $validator = new BarcodeValidator\Barcode(array('adapter' => $validatorName, 'checksum' => false));
     $checksumCharacter = '';
     $withChecksum = false;
     if ($this->_mandatoryChecksum) {
         $checksumCharacter = $this->_substituteChecksumCharacter;
         $withChecksum = true;
     }
     $value = $this->_addLeadingZeros($value, $withChecksum) . $checksumCharacter;
     if (!$validator->isValid($value)) {
         $message = implode("\n", $validator->getMessages());
         throw new Exception($message);
     }
 }
Пример #3
0
 /**
  * Particular validation for Upce barcode objects
  * (to suppress checksum character substitution)
  * @param string $value
  * @param array  $options
  */
 protected function _validateText($value, $options = array())
 {
     $validator = new BarcodeValidator\Barcode(array('adapter' => 'upce', 'checksum' => false));
     $value = $this->_addLeadingZeros($value, true);
     if (!$validator->isValid($value)) {
         $message = implode("\n", $validator->getMessages());
         throw new Exception($message);
     }
 }