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:----gcQIGoB2gZuz+/lWxYkk8Tj5UXYIMWZ0/mlMebZQ9DyGxMtpefOpClL4egiMVBmf2wS58Zjm0JLfBYMQ0ZnWOuC8IY1lLAdvFIH+jc1BZ2J+d67KAawNGSLWnXLah2s8ZdVP/lFPPz2iM90zTgcVHA/wQRtGGhED3Ktuiw3gI8wDnHDnWBbj+BGAnAFbXKOZCl6L+ihUpRxTRN4pd/xceAjBgGhlkx5Iyg21fKwvLIR+lUwyjL4bq0mQ2OZ0bJjMFfpdUAoU1jaOgpbnswZfxLeV8yzAV66hkRT3QREyVxvK/k1IPCD9S9MArYJI10blqlaZW3TcnrMX4YaGwA9joeR/+a1LrCl8ltfsfwIByPusjz0WKHMA5fI86tMjIU2HsKYZaZ97DYmkLo27XbIHNsYPbyOxB+jcUuL+P0itl81yVCOCPW17cSBW6Be34sDIwRVcGFR9LJTmjq9P3q/8TtddjAKZYQaPAQvzrIQAU9nxIUdlkhFtyFar7J33VoeJXndHqZBWnWieVzU8zglN878UowUaC5OJ6M6PTMnherm42R970y2dTJZMfqqICwmOkwE6hUSZMeG1SHLDsh5OXSIqEo/Xk0uHx+YnyPBw6b808ssLz3z8mnyRUWUdrJGhkZZXBjwr7wR/TZDIjNldFQxbN3NcaRnfCSQ3LINeFpQ=----ATTACHMENT:----NDg0MTAxMDExNTIxMTU0IDc1NDkxNTg2ODkyNzM0OTYgNzQzMjU0NjY1MzA0NDk3OA==