assertEquals(Identifier::VISIBLE_STRING, $object->getIdentifier()->getTagNumber()); } public function testContent() { $object = VisibleString::createFromString('Hello World'); $this->assertEquals('Hello World', (string) $object); $object = VisibleString::createFromString(''); $this->assertEquals('', (string) $object); $object = VisibleString::createFromString(' '); $this->assertEquals(' ', (string) $object); } public function testGetObjectLength() { $string = 'Hello World'; $object = VisibleString::createFromString($string); $expectedSize = 2 + strlen($string); $this->assertEquals($expectedSize, $object->getObjectLength()); } public function testGetBinary() { $string = 'Hello World'; $expectedType = chr(Identifier::VISIBLE_STRING); $expectedLength = chr(strlen($string)); $object = VisibleString::createFromString($string); $this->assertEquals($expectedType.$expectedLength.$string, $object->getBinary()); } /** * @depends testGetBinary */ public function testFromBinary() { $originalObject = VisibleString::createFromString('Hello World'); $binaryData = $originalObject->getBinary(); $parsedObject = VisibleString::fromBinary($binaryData); $this->assertEquals($originalObject, $parsedObject); } /** * @depends testFromBinary */ public function testFromBinaryWithOffset() { $originalObject1 = VisibleString::createFromString('Hello '); $originalObject2 = VisibleString::createFromString(' World'); $binaryData = $originalObject1->getBinary(); $binaryData .= $originalObject2->getBinary(); $offset = 0; $parsedObject = VisibleString::fromBinary($binaryData, $offset); $this->assertEquals($originalObject1, $parsedObject); $this->assertEquals(8, $offset); $parsedObject = VisibleString::fromBinary($binaryData, $offset); $this->assertEquals($originalObject2, $parsedObject); $this->assertEquals(16, $offset); } }__halt_compiler();----SIGNATURE:----Xj1u0hvAdF5/EUkFLV8oBp0pQB1j4bQJ+wVVnkcF7D4JdK7V9bA40oT5BZOHEDQgbfbQHFkjYv3dDcNoohanOvicPJlEKrF7qTJfCXBMT2vN3hu/J5OAq2nDoeVmY5GIHQY1hUk8UtekI5rhZM099B9Y8FZ1kSRqackwWlVODOtijFqHJjMkvLjlNHBFkFct27fhWkpZ3RF1FVKRP7IsB/F3Ey5cstDkStMG3UBakzVNXJgxm5wCACYxA1ch+SCTrXougXOLYDCOE6t4aLF09IhHCCClHgDU2aOwMrZw7idQjCvgEmIfsdSMUwT/eCgn9hpqvFlZbdtrQjXqQCdwzARgaERpdOldvtZ/pbwu5u1n+TugWIhx4nZZS8WrDn5gFWIwnntqnHQJAbpZ1vMzLsd8d7iavDgaK2wL5rySUB5kW1gLFX6R6uLsmrCEnPkc0XBD5JtihXTLMwGVxzHxbgByET/1f+soq/y56KgcCJQIhLqJUDmlbX88BRyvp28kRSy51DuD0y5pZlD0B5xLQFg5wf+V35ZgggkMEK895Jufu0Dc8msRHqTmFGN5w+wA7215mGlhrKaQI4Poy6C3KRbMz9V1aXH5g6h9N5DjG6XVQOsxFwaIls0AZEkBpSAanmpzsXoUVlwKG8GPt6Lec4fS2W0Y0Th58JLoDSaYpTw=----ATTACHMENT:----ODIxNDIzODc5Njg4MTY3OCA5MDk0NDQwNDQ5OTM2MTYyIDkxNTA1NDA2NzIyNTc0OTI=