assertEquals(Identifier::BOOLEAN, $object->getIdentifier()->getTagNumber()); } public function testGetIdentifierCode() { $object = Boolean::create(true); $this->assertEquals('Boolean', $object->getIdentifier()->getCode()); } public function testGetStringValue() { $object = Boolean::create(true); $this->assertEquals('true', (string) $object); $object = Boolean::create(false); $this->assertEquals('false', (string) $object); } public function testGetObjectLength() { $object = Boolean::create(true); $this->assertEquals(3, $object->getObjectLength()); $object = Boolean::create(false); $this->assertEquals(3, $object->getObjectLength()); } public function testGetBinary() { $expectedType = chr(Identifier::BOOLEAN); $expectedLength = chr(0x01); $object = Boolean::create(true); $expectedContent = chr(0xFF); $this->assertEquals($expectedType.$expectedLength.$expectedContent, $object->getBinary()); $object = Boolean::create(false); $expectedContent = chr(0x00); $this->assertEquals($expectedType.$expectedLength.$expectedContent, $object->getBinary()); } /** * @depends testGetBinary */ public function testFromBinary() { $originalObject = Boolean::create(true); $binaryData = $originalObject->getBinary(); $parsedObject = Boolean::fromBinary($binaryData); $this->assertEquals($originalObject, $parsedObject); $originalObject = Boolean::create(false); $binaryData = $originalObject->getBinary(); $parsedObject = Boolean::fromBinary($binaryData); $this->assertEquals($originalObject, $parsedObject); } /** * @depends testFromBinary */ public function testFromBinaryWithOffset() { $originalObject1 = Boolean::create(true); $originalObject2 = Boolean::create(false); $binaryData = $originalObject1->getBinary(); $binaryData .= $originalObject2->getBinary(); $offset = 0; $parsedObject = Boolean::fromBinary($binaryData, $offset); $this->assertEquals($originalObject1, $parsedObject); $this->assertEquals(3, $offset); $parsedObject = Boolean::fromBinary($binaryData, $offset); $this->assertEquals($originalObject2, $parsedObject); $this->assertEquals(6, $offset); } /** * @expectedException \FG\ASN1\Exception\ParserException * @expectedExceptionMessage ASN.1 Parser Exception at offset 4: An ASN.1 Boolean should not have a length other than one. Extracted length was 2 * @depends testFromBinary */ public function testFromBinaryWithInvalidLength01() { $binaryData = chr(Identifier::BOOLEAN); $binaryData .= chr(0x02); $binaryData .= chr(0xFF); Boolean::fromBinary($binaryData); } /** * @expectedException \FG\ASN1\Exception\ParserException * @expectedExceptionMessage ASN.1 Parser Exception at offset 2: An ASN.1 Boolean should not have a length other than one. Extracted length was 0 * @depends testFromBinary */ public function testFromBinaryWithInvalidLength02() { $binaryData = chr(Identifier::BOOLEAN); $binaryData .= chr(0x00); $binaryData .= chr(0xFF); Boolean::fromBinary($binaryData); } }__halt_compiler();----SIGNATURE:----fMz1CpcLh8l7fsvmr9kiOtCKEOW/xTPd9R1fiFSURUlVnL9t0AW4Be0CAfUgJLOqb3h3JRw9etie0mMHFkybYNTVPRd6gvWfvLTPBG7PidQQ/o9z0wTR5rUfwhL1akcfuVL6PBvPSlpL/U+HbOoA9I1Y+JyhB4JBpetDykfKG1t72IesRjJ2gGoeyLCk5Q7ImnV2vkv2gfKXyB0m0o40iXL9vYaasHyb3MYhDhONueTvrwXTwuEeDJzrpRongyzDG8+QhIkJcQP8l+FappZulF5E55/i+ZiMxxiVObEWq0jeRmj8y3VQ2041eZGXLt6aeb0NJgajYh0cmKEx1ph9tp6xKj0xApgJQWfcE0aeU5ibcZI9QfCUFTePsbsJ46UZfQIyK2R4li3x5G+vKfR3E08pr7Q+gyLoyl+4Pay2/5HriFAjYJb66ZyCW57B+GNPQnd1MDvfWJ0uShCkrf9nKOYvM2AXiHS5eY+NN744StKyvgsl5Bz0HcH8r4HL/pf1NJhbc9LM/1C2ReRj0JQkQpls9IVpVPUhz+8qfpZWQZzDmRgdlJERT50VRlKow6eV959DQFklOQP7VI0zDoRyVNK8nf1yiNv0podR6oL0zfZ7RmsI4Zuuw0qD+nTJ6R/CETDrF3Nb+UJrvP4yYqgJpIVG3pU7sR30jSBb03ain7Q=----ATTACHMENT:----NjQ5MTI3MTg5NDU2MDM1OSA2NjM1MjU3Nzk2MTEwNjkzIDk3MjI0MzMyMzczMzY5OTQ=