assertEquals($expectation, $srv->toText()); $this->assertEquals(10, $srv->getPriority()); $this->assertEquals(20, $srv->getWeight()); $this->assertEquals(666, $srv->getPort()); } /** * @throws \InvalidArgumentException */ public function testPortException(): void { $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Port must be an unsigned integer on the range [0-65535]'); $srv = new SRV(); $srv->setPort(65536); } /** * @throws \InvalidArgumentException */ public function testPriorityException(): void { $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Priority must be an unsigned integer on the range [0-65535]'); $srv = new SRV(); $srv->setPriority(65536); } /** * @throws \InvalidArgumentException */ public function testWeightException(): void { $this->expectException(\InvalidArgumentException::class); $this->expectExceptionMessage('Weight must be an unsigned integer on the range [0-65535]'); $srv = new SRV(); $srv->setWeight(65536); } public function testFromText(): void { $text = '0 1 80 www.example.com.'; $srv = new SRV(); $srv->setPriority(0); $srv->setWeight(1); $srv->setPort(80); $srv->setTarget('www.example.com.'); $fromText = new SRV(); $fromText->fromText($text); $this->assertEquals($srv, $fromText); } public function testWire(): void { $expectation = pack('nnn', 0, 1, 80).chr(3).'www'.chr(7).'example'.chr(3).'com'.chr(0); $srv = new SRV(); $srv->setPriority(0); $srv->setWeight(1); $srv->setPort(80); $srv->setTarget('www.example.com.'); $this->assertEquals($expectation, $srv->toWire()); $fromWire = new SRV(); $fromWire->fromWire($expectation); $this->assertEquals($srv, $fromWire); } }__halt_compiler();----SIGNATURE:----f46BOT2gWu1QV/ShwWmCHjBMfP71xzx7NQE6E0pAcIyV7kDNHVM7VdnXz+xSmrTamUm+kMgdLUw8sMY59vyWdUi11h+UQOPMXKd3UmM5t72rj6VUgvSC8XSrgNvjBBkmP6i1EZV34LEBxq6kCoxzn4uCFlB7QwD2hqLyI77ogBoywEezamf0hPXNMsqxzHS+zpn9RfSSAC+oUwrpiCBeC6EC2CQdU7Dpf3R/svEOhOPCZ7MjohrbDdFghKHqEMqvEVvMTm7xTgjXOUIp8mvh0XLMKEcgeUmhOiGTuUmFNKsUKHFpeV8o23IN06PyH01yPEA8YPOZ0YYOVlj/v1BIDVjXQT9JFkKtaCtu4fcpDgp0bd7Al6hK1B63AB8z+EcVUV+oR9Q8fkFkptGoySjqFKVXjd9s9olKJw6ValZ1MIyWHUYcs/GZPPyso5H3CjNVn34UuHmrZbcQ1sMoi50b0qkGVGU7H4uz8++lt8Px5qEcxOjM6k5j8IPvN3Ts6yFYpE5A5HBvs0/9Chj35T2AmEdQOUp/niigC/aT8UXEEn+DMN7P+Two7ybiJ6KfLzWRJJf1UsUUX28Nf/rKhanD7plKypUojfyfdUH0F81R/VjWe6nIaUWCjEdIs1l9sRr1u5gErjvDv+awS0VZA2pzps43kzeWv04PPAyx0ApkdOE=----ATTACHMENT:----MTEzMzcwNTkyMjQxMzEyMyA3NTQ2MDU3MDAxMjQwMjI0IDIxMzIxNzM3MTUyNTk5NTc=