public function testXdigit()
 {
     $this->assertEquals('1234', $this->object->xdigit('1234'));
     $this->assertEquals('1234', $this->object->xdigit('1 2 3 4'));
     $this->assertEquals('a1b2C3', $this->object->xdigit('a1b2C3'));
     $this->assertEquals('e5e', $this->object->xdigit('t e 5 t e'));
     $this->assertEquals('ee123', $this->object->xdigit('tes$t@e123(*)'));
     $this->assertEquals('', $this->object->xdigit('!@#$%$*()-_+=[]{}?/:;.><|\\qwuygHJKL'));
     $this->assertTrue($this->object->validXdigit('1234'));
     $this->assertTrue($this->object->validXdigit('abcdefABCDEF1234567890'));
     $this->assertTrue($this->object->validXdigit('a1b2C3'));
     $this->assertFalse($this->object->validXdigit('TESTE'));
     $this->assertFalse($this->object->validXdigit('t e S t e'));
     $this->assertFalse($this->object->validXdigit('tes$t@e123(*)'));
     $this->assertFalse($this->object->validXdigit('TESTE.'));
     $this->assertFalse($this->object->validXdigit('!@#$%$*()-_+=[]{}?/:;.><|\\'));
 }
 public function testIsValid()
 {
     Memory::set('debug', true);
     foreach ($this->data as $k => $val) {
         $val2 = $this->object->sanitize($val);
         $this->assertTrue($this->object->isValid($val2), 'Error to validate the sanitized key: ' . $k);
     }
     $this->assertTrue($this->object->isValid(''));
     $this->assertFalse($this->object->isValid(' '));
     //Não é vazio, então não é válido
     $this->assertTrue($this->object->isValid(true));
     $this->assertTrue($this->object->isValid(false));
     $this->assertTrue($this->object->isValid(null));
     $required = array(Flag::REQUIRED => true);
     $this->assertFalse($this->object->isValid('', $required));
     $this->assertFalse($this->object->isValid(' ', $required));
     $this->assertFalse($this->object->isValid(null, $required));
     $this->assertFalse($this->object->isValid(' ', $required));
     $this->assertTrue($this->object->isValid(true, $required));
     //'true'
     $this->assertTrue($this->object->isValid(false, $required));
     //'false'
     $this->assertTrue($this->object->isValid('abc', $required));
     $this->assertTrue($this->object->isValid(0, $required));
     $this->assertTrue($this->object->isValid('0', $required));
     $required[Flag::MINLENGHT] = 2;
     $this->assertFalse($this->object->isValid(' ', $required));
     $this->assertFalse($this->object->isValid('a', $required));
     $this->assertTrue($this->object->isValid('213412', $required));
     $required[Flag::MAXLENGHT] = 5;
     $this->assertFalse($this->object->isValid('213412', $required));
     $this->assertFalse($this->object->isValid('      ', $required));
     $this->assertTrue($this->object->isValid('12', $required));
     $this->assertTrue($this->object->isValid('12345', $required));
     //Minlenght without required
     $this->assertTrue($this->object->isValid('', array(Flag::MINLENGHT => 3)));
 }