setName('example.com.'); $q->setType('NS'); $q->setClass('IN'); $expectation = chr(7).'example'.chr(3).'com'.chr(0).pack('nn', 2, 1); $this->assertEquals($expectation, $q->toWire()); } public function testSetClassThrowsException(): void { $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Invalid class: "65536".'); $q = new Question(); $q->setClassId(65536); } public function testSetNameThrowsException(): void { $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('"abc123.com" is not a fully qualified domain name.'); $q = new Question(); $q->setName('abc123.com'); } public function testFromWire(): void { $wireFormat = chr(7).'example'.chr(3).'com'.chr(0).pack('nn', 2, 1); $q = Question::fromWire($wireFormat); $this->assertEquals('example.com.', $q->getName()); $this->assertEquals('NS', $q->getType()); $this->assertEquals('IN', $q->getClass()); } public function testSetTypeCodeThrowsException(): void { $this->expectException(\DomainException::class); $this->expectExceptionMessage('TypeCode must be an unsigned 16-bit integer. "65536" given.'); $q = new Question(); $q->setTypeCode(65536); } }__halt_compiler();----SIGNATURE:----GlvfpAdhYCcxv1X7oGXmplfxZW0R4P4iz8Cq/zHYN/eLW7EHxuT7p+gSmqQkcfucjjQQ6iqB3GUGdJh3n3PiskGj0X0f52BkXNJPK1W43yA3iccg4weEfNVK8I9RpXEQumAWKsK9C3Q7htNTNScgLP6b8+KjqPw6FtJm8PcjkE+xbpNxZCGWVLqlOWXna19YKyC0skT84q5xFARrfnaVrVyB37QG9dsGPJCk7MGPNiwPHQcPll4O/tK194L5Y5kvQ+HZLjuO/dEIiDC6Ae9xWZIT67FA9bKWcXzzzT0sLzxKxNaB3R5SBKwcBrO+u/tu3d3/7IAvhzBcX/2WncEMiYYpPOV6BRKq7Dc3J8bvvFIwkY6J7v/ml2anT9tSKQBO0Hg645yDiEPntpRTEQGjFwrKQmYr2Hn9RmJecnHiduGCFekRx5RJ3Imm+ICxzmQDglbO66UnKrJBE3PBesDnO5wAVqsnL1SMBMII3VWPvdn9yyvDmEFILZBqu8ZeAJqJoqUuMQFV6jk9+1upAt6QeOlOtnEBBguGpQ5sjCzB0kHrWjEhJMwvNya1+3us9DX84QlDl+RpsHsDcvXqCnJaG99Co4qN+gWssPwJwxNeZnzS9I4PJxChe8rfhpCjF9gaIXBBtsxWSMnM1vAhr0KxiCTes0UPAvhkqGLSTu++W2A=----ATTACHMENT:----NDM0ODQzMjg2NDQ4Mzc0MiA3MDQ0NzgzODk4MjEzNDI4IDY5NjI2NjY5MDk3NjA2OTM=