Ejemplo n.º 1
0
 public function testHex2bin()
 {
     $this->assertEquals('10100001', databox_status::hex2bin('0x0A1'));
     $this->assertEquals('10100001', databox_status::hex2bin('0A1'));
     try {
         databox_status::hex2bin('G1');
         $this->fail('Should raise an exception');
     } catch (Exception $e) {
         $this->assertEquals('Non-hexadecimal value', $e->getMessage());
     }
 }
Ejemplo n.º 2
0
 public function __construct(Application $app, $status)
 {
     /**
      * We store a binary string
      */
     if (is_int($status)) {
         $status = decbin($status);
     } elseif (preg_match('/^[01]+$/', $status)) {
         $status = (string) $status;
     } elseif (ctype_digit($status)) {
         $status = decbin((int) $status);
     } elseif (strpos($status, '0x') === 0 && ctype_xdigit(substr($status, 2))) {
         $status = \databox_status::hex2bin($status);
     } elseif (strpos($status, '0b') === 0 && preg_match('/^[01]+$/', substr($status, 2))) {
         $status = substr($status, 2);
     } elseif (ctype_xdigit($status)) {
         $status = \databox_status::hex2bin($status);
     } else {
         throw new \InvalidArgumentException('Invalid status argument');
     }
     $this->status = $status;
 }
Ejemplo n.º 3
0
 public function testHex2bin()
 {
     $this->assertEquals('10100001', databox_status::hex2bin(self::$DI['app'], '0x0A1'));
     $this->assertEquals('10100001', databox_status::hex2bin(self::$DI['app'], '0A1'));
     try {
         databox_status::hex2bin(self::$DI['app'], 'G1');
         $this->fail('Should raise an exception');
     } catch (Exception $e) {
     }
 }