-
Notifications
You must be signed in to change notification settings - Fork 65
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- cleaned up the test files to use spaces rather than tabs
- Loading branch information
mike.pultz
committed
Sep 5, 2010
1 parent
9b63bb3
commit c484a7c
Showing
2 changed files
with
113 additions
and
114 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,30 +1,30 @@ | ||
<?php | ||
|
||
if (!defined('PHPUnit_MAIN_METHOD')) { | ||
define('PHPUnit_MAIN_METHOD', 'Net_DNS2_AllTests::main'); | ||
define('PHPUnit_MAIN_METHOD', 'Net_DNS2_AllTests::main'); | ||
} | ||
|
||
require_once 'PHPUnit/TextUI/TestRunner.php'; | ||
require_once 'Net_DNS2_ParserTest.php'; | ||
|
||
class Net_DNS2_AllTests | ||
{ | ||
public static function main() | ||
{ | ||
PHPUnit_TextUI_TestRunner::run(self::suite()); | ||
} | ||
public static function suite() | ||
{ | ||
$suite = new PHPUnit_Framework_TestSuite('PEAR - Net_DNS2'); | ||
public static function main() | ||
{ | ||
PHPUnit_TextUI_TestRunner::run(self::suite()); | ||
} | ||
public static function suite() | ||
{ | ||
$suite = new PHPUnit_Framework_TestSuite('PEAR - Net_DNS2'); | ||
|
||
$suite->addTestSuite('Net_DNS2_ParserTest'); | ||
$suite->addTestSuite('Net_DNS2_ParserTest'); | ||
|
||
return $suite; | ||
} | ||
return $suite; | ||
} | ||
} | ||
|
||
if (PHPUnit_MAIN_METHOD == 'Net_DNS2_AllTests::main') { | ||
Net_DNS2_AllTests::main(); | ||
Net_DNS2_AllTests::main(); | ||
} | ||
|
||
?> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -24,109 +24,108 @@ public function testTSIG() | |
$request->header->arcount = 1; | ||
|
||
$line = $request->additional[0]->name . '. ' . $request->additional[0]->ttl . ' ' . | ||
$request->additional[0]->class . ' ' . $request->additional[0]->type . ' ' . | ||
$request->additional[0]->algorithm . '. ' . $request->additional[0]->time_signed . ' '. | ||
$request->additional[0]->fudge; | ||
|
||
// | ||
// get the binary packet data | ||
// | ||
$data = $request->get(); | ||
|
||
// | ||
// parse the binary | ||
// | ||
$response = new Net_DNS2_Packet_Response($data, strlen($data)); | ||
|
||
// | ||
// the answer data in the response, should match our initial line exactly | ||
// | ||
$this->assertSame($line, substr($response->additional[0]->__toString(), 0, 58)); | ||
$request->additional[0]->class . ' ' . $request->additional[0]->type . ' ' . | ||
$request->additional[0]->algorithm . '. ' . $request->additional[0]->time_signed . ' '. | ||
$request->additional[0]->fudge; | ||
|
||
// | ||
// get the binary packet data | ||
// | ||
$data = $request->get(); | ||
|
||
// | ||
// parse the binary | ||
// | ||
$response = new Net_DNS2_Packet_Response($data, strlen($data)); | ||
|
||
// | ||
// the answer data in the response, should match our initial line exactly | ||
// | ||
$this->assertSame($line, substr($response->additional[0]->__toString(), 0, 58)); | ||
} | ||
public function testParser() | ||
{ | ||
$rrs = array( | ||
|
||
'A' => 'example.com. 300 IN A 172.168.0.50', | ||
'NS' => 'example.com. 300 IN NS ns1.mrdns.com.', | ||
'CNAME' => 'example.com. 300 IN CNAME www.example.com.', | ||
'SOA' => 'example.com. 300 IN SOA ns1.mrdns.com. help.mrhost.ca. 1278700841 900 1800 86400 21400', | ||
'PTR' => '26.in-addr.arpa. 300 IN PTR example.com.', | ||
'HINFO' => 'example.com. 300 IN HINFO PC-Intel-700mhz "Redhat \"Linux\" 7.1"', | ||
'MX' => 'example.com. 300 IN MX 10 mx1.mrhost.ca.', | ||
'TXT' => 'example.com. 300 IN TXT "first record" "another records" "a third"', | ||
'RP' => 'example.com. 300 IN RP louie.trantor.umd.edu. lam1.people.test.com.', | ||
'AFSDB' => 'example.com. 300 IN AFSDB 3 afsdb.example.com.', | ||
'X25' => 'example.com. 300 IN X25 "311 06 17 0 09 56"', | ||
'ISDN' => 'example.com. 300 IN ISDN "150 862 028 003 217" 42', | ||
'RT' => 'example.com. 300 IN RT 2 relay.prime.com.', | ||
'NSAP' => 'example.com. 300 IN NSAP 0x47.0005.80.005a00.0000.0001.e133.aaaaaa000151.00', | ||
'SIG' => 'example.com. 300 IN SIG DNSKEY 7 1 86400 20100827211706 20100822211706 57970 gov. KoWPhMtLHp8sWYZSgsMiYJKB9P71CQmh9CnxJCs5GutKfo7Jpw+nNnDLiNnsd6U1JSkf99rYRWCyOTAPC47xkHr+2Uh7n6HDJznfdCzRa/v9uwEcbXIxCZ7KfzNJewW3EvYAxDIrW6sY/4MAsjS5XM/O9LaWzw6pf7TX5obBbLI+zRECbPNTdY+RF6Fl9K0GVaEZJNYi2PRXnATwvwca2CNRWxeMT/dF5STUram3cWjH0Pkm19Gc1jbdzlZVDbUudDauWoHcc0mfH7PV1sMpe80NqK7yQ24AzAkXSiknO13itHsCe4LECUu0/OtnhHg2swwXaVTf5hqHYpzi3bQenw==', | ||
'KEY' => 'example.com. 300 IN KEY 256 3 7 AwEAAYCXh/ZABi8kiJIDXYmyUlHzC0CHeBzqcpyZAIjC7dK1wkRYVcUvIlpTOpnOVVfcC3Py9Ui/x45qKb0LytvK7WYAe3WyOOwk5klwIqRC/0p4luafbd2yhRMF7quOBVqYrLoHwv8i9LrV+r8dhB7rXv/lkTSI6mEZsg5rDfee8Yy1', | ||
'PX' => 'example.com. 300 IN PX 10 ab.net2.it. o-ab.prmd-net2.admdb.c-it.', | ||
'AAAA' => 'example.com. 300 IN AAAA 1080:0:0:0:8:800:200c:417a', | ||
'LOC' => 'example.com. 300 IN LOC 42 21 54.675 N 71 06 18.343 W 24.12m 30.00m 40.00m 5.00m', | ||
'SRV' => 'example.com. 300 IN SRV 20 0 5269 xmpp-server2.l.google.com.', | ||
'NAPTR' => 'example.com. 300 IN NAPTR 100 10 S SIP+D2U !^.*$!sip:[email protected]! _sip._udp.example.com.', | ||
'KX' => 'example.com. 300 IN KX 10 mx1.mrhost.ca.', | ||
'CERT' => 'example.com. 300 IN CERT 3 0 0 TUlJQ1hnSUJBQUtCZ1FDcXlqbzNFMTU0dFU1Um43ajlKTFZsOGIwcUlCSVpGWENFelZvanVJT1BsMTM0by9zcHkxSE1hQytiUGh3Wk1UYVd4QlJpZHBFbUprNlEwNFJNTXdqdkFyLzFKWjhnWThtTzdCdTh1RUROVkNWeG5rQkUzMHhDSjhHRTNzL3EyN2VWSXBCUGFtU1lkNDVKZjNIeVBRRE4yaU45RjVHdGlIa2E2OXNhcmtKUnJ3SURBUUFCQW9HQkFJaUtDQ1NEM2FFUEFjQUx1MjdWN0JmR1BYN3lDTVg0OSsyVDVwNXNJdkduQjcrQ0NZZ09QaVQybmlpMGJPNVBBOTlnZnhPQXl1WCs5Z3llclVQbUFSc1ViUzcvUndkNGorRUlOVW1DanJSK2R6dGVXT0syeGxHamFOdGNPZU5jMkVtelQyMFRsekxVeUxTWGpzMzVlU2NQK0loeVptM2xJd21vbWtNb2d1QkFrRUE0a1FsOVBxaTJ2MVBDeGJCelU4Nnphblo2b0hsV0IzMUh4MllCNmFLYXhjNkVOZHhVejFzNjU2VncrRDhSVGpoSllyeDdMVkxzZDBRaVZJM0liSjVvUUpCQU1FN3k0aHg0SCtnQU40MEdrYjNjTFZGNHNpSEZrNnA2QVZRdlpzREwvVnh3bVlOdE4rM0txT3NVcG11WXZ3a3h0ajhIQnZtckxUYStXb3NmRDQwS1U4Q1FRQ1dvNmhob1R3cmI5bmdHQmFQQ2VDc2JCaVkrRUlvbUVsSm5mcEpuYWNxQlJ5emVid0pIeXdVOGsvalNUYXJIMk5HQzJ0bG5JMzRyS1VGeDZiTTJIWUJBa0VBbXBYSWZPNkZKL1NMM1RlWGNnQ1A5U1RraVlHd2NkdnhGeGVCcDlvRDZ2cElCN2FkWlgrMko5dzY5R0VUSlI0U3loSGVOdC95ZUhqWm9YdlhKVGc3ZHdKQVpEamxwL25wNEFZV3JYaGFrMVAvNGZlaDVNSU5WVHNXQkhTNlRZNW0xRmZMUEpybklHNW1FSHNidWkvdnhuQ1JmRUR4ZlU1V1E0cS9HUkZuaVl3SHB3PT0=', | ||
'DNAME' => 'example.com. 300 IN DNAME frobozz-division.acme.example.', | ||
'DS' => 'example.com. 300 IN DS 21366 7 2 96eeb2ffd9b00cd4694e78278b5efdab0a80446567b69f634da078f0d90f01ba', | ||
'RRSIG' => 'example.com. 300 IN RRSIG DNSKEY 7 1 86400 20100827211706 20100822211706 57970 gov. KoWPhMtLHp8sWYZSgsMiYJKB9P71CQmh9CnxJCs5GutKfo7Jpw+nNnDLiNnsd6U1JSkf99rYRWCyOTAPC47xkHr+2Uh7n6HDJznfdCzRa/v9uwEcbXIxCZ7KfzNJewW3EvYAxDIrW6sY/4MAsjS5XM/O9LaWzw6pf7TX5obBbLI+zRECbPNTdY+RF6Fl9K0GVaEZJNYi2PRXnATwvwca2CNRWxeMT/dF5STUram3cWjH0Pkm19Gc1jbdzlZVDbUudDauWoHcc0mfH7PV1sMpe80NqK7yQ24AzAkXSiknO13itHsCe4LECUu0/OtnhHg2swwXaVTf5hqHYpzi3bQenw==', | ||
'NSEC' => 'example.com. 300 IN NSEC dog.poo.com. A MX RRSIG NSEC TYPE1234', | ||
'SSHFP' => 'example.com. 300 IN SSHFP 2 1 123456789abcdef67890123456789abcdef67890', | ||
'IPSECKEY' => 'example.com. 300 IN IPSECKEY 10 2 2 2001:db8:0:8002:0:0:2000:1 AQNRU3mG7TVTO2BkR47usntb102uFJtugbo6BSGvgqt4AQ==', | ||
'DNSKEY' => 'example.com. 300 IN DNSKEY 256 3 7 AwEAAYCXh/ZABi8kiJIDXYmyUlHzC0CHeBzqcpyZAIjC7dK1wkRYVcUvIlpTOpnOVVfcC3Py9Ui/x45qKb0LytvK7WYAe3WyOOwk5klwIqRC/0p4luafbd2yhRMF7quOBVqYrLoHwv8i9LrV+r8dhB7rXv/lkTSI6mEZsg5rDfee8Yy1', | ||
'DHCID' => 'example.com. 300 IN DHCID AAIBY2/AuCccgoJbsaxcQc9TUapptP69lOjxfNuVAA2kjEA=', | ||
'NSEC3' => 'example.com. 300 IN NSEC3 1 1 12 AABBCCDD b4um86eghhds6nea196smvmlo4ors995 NS DS RRSIG', | ||
'NSEC3PARAM' => 'example.com. 300 IN NSEC3PARAM 1 0 1 D399EAAB', | ||
'SPF' => 'example.com. 300 IN SPF "v=spf1 ip4:192.168.0.1/24 mx ?all"', | ||
'TKEY' => 'example.com. 300 IN TKEY gss.microsoft.com. 3 123456.', | ||
'DLV' => 'example.com. 300 IN DLV 21366 7 2 96eeb2ffd9b00cd4694e78278b5efdab0a80446567b69f634da078f0d90f01ba', | ||
); | ||
|
||
foreach($rrs as $rr => $line) { | ||
|
||
$class_name = 'Net_DNS2_RR_' . $rr; | ||
|
||
// | ||
// create a new packet | ||
// | ||
$request = new Net_DNS2_Packet_Request('example.com', $rr, 'IN'); | ||
|
||
// | ||
// parse the line | ||
// | ||
$a = Net_DNS2_RR::fromString($line); | ||
|
||
// | ||
// check that the object is right | ||
// | ||
$this->assertTrue($a instanceof $class_name); | ||
|
||
// | ||
// set it on the packet | ||
// | ||
$request->answer[] = $a; | ||
$request->header->ancount = 1; | ||
|
||
// | ||
// get the binary packet data | ||
// | ||
$data = $request->get(); | ||
|
||
// | ||
// parse the binary | ||
// | ||
$response = new Net_DNS2_Packet_Response($data, strlen($data)); | ||
|
||
// | ||
// the answer data in the response, should match our initial line exactly | ||
// | ||
$this->assertSame($line, $response->answer[0]->__toString()); | ||
} | ||
} | ||
public function testParser() | ||
{ | ||
$rrs = array( | ||
|
||
'A' => 'example.com. 300 IN A 172.168.0.50', | ||
'NS' => 'example.com. 300 IN NS ns1.mrdns.com.', | ||
'CNAME' => 'example.com. 300 IN CNAME www.example.com.', | ||
'SOA' => 'example.com. 300 IN SOA ns1.mrdns.com. help.mrhost.ca. 1278700841 900 1800 86400 21400', | ||
'PTR' => '26.in-addr.arpa. 300 IN PTR example.com.', | ||
'HINFO' => 'example.com. 300 IN HINFO PC-Intel-700mhz "Redhat \"Linux\" 7.1"', | ||
'MX' => 'example.com. 300 IN MX 10 mx1.mrhost.ca.', | ||
'TXT' => 'example.com. 300 IN TXT "first record" "another records" "a third"', | ||
'RP' => 'example.com. 300 IN RP louie.trantor.umd.edu. lam1.people.test.com.', | ||
'AFSDB' => 'example.com. 300 IN AFSDB 3 afsdb.example.com.', | ||
'X25' => 'example.com. 300 IN X25 "311 06 17 0 09 56"', | ||
'ISDN' => 'example.com. 300 IN ISDN "150 862 028 003 217" 42', | ||
'RT' => 'example.com. 300 IN RT 2 relay.prime.com.', | ||
'NSAP' => 'example.com. 300 IN NSAP 0x47.0005.80.005a00.0000.0001.e133.aaaaaa000151.00', | ||
'SIG' => 'example.com. 300 IN SIG DNSKEY 7 1 86400 20100827211706 20100822211706 57970 gov. KoWPhMtLHp8sWYZSgsMiYJKB9P71CQmh9CnxJCs5GutKfo7Jpw+nNnDLiNnsd6U1JSkf99rYRWCyOTAPC47xkHr+2Uh7n6HDJznfdCzRa/v9uwEcbXIxCZ7KfzNJewW3EvYAxDIrW6sY/4MAsjS5XM/O9LaWzw6pf7TX5obBbLI+zRECbPNTdY+RF6Fl9K0GVaEZJNYi2PRXnATwvwca2CNRWxeMT/dF5STUram3cWjH0Pkm19Gc1jbdzlZVDbUudDauWoHcc0mfH7PV1sMpe80NqK7yQ24AzAkXSiknO13itHsCe4LECUu0/OtnhHg2swwXaVTf5hqHYpzi3bQenw==', | ||
'KEY' => 'example.com. 300 IN KEY 256 3 7 AwEAAYCXh/ZABi8kiJIDXYmyUlHzC0CHeBzqcpyZAIjC7dK1wkRYVcUvIlpTOpnOVVfcC3Py9Ui/x45qKb0LytvK7WYAe3WyOOwk5klwIqRC/0p4luafbd2yhRMF7quOBVqYrLoHwv8i9LrV+r8dhB7rXv/lkTSI6mEZsg5rDfee8Yy1', | ||
'PX' => 'example.com. 300 IN PX 10 ab.net2.it. o-ab.prmd-net2.admdb.c-it.', | ||
'AAAA' => 'example.com. 300 IN AAAA 1080:0:0:0:8:800:200c:417a', | ||
'LOC' => 'example.com. 300 IN LOC 42 21 54.675 N 71 06 18.343 W 24.12m 30.00m 40.00m 5.00m', | ||
'SRV' => 'example.com. 300 IN SRV 20 0 5269 xmpp-server2.l.google.com.', | ||
'NAPTR' => 'example.com. 300 IN NAPTR 100 10 S SIP+D2U !^.*$!sip:[email protected]! _sip._udp.example.com.', | ||
'KX' => 'example.com. 300 IN KX 10 mx1.mrhost.ca.', | ||
'CERT' => 'example.com. 300 IN CERT 3 0 0 TUlJQ1hnSUJBQUtCZ1FDcXlqbzNFMTU0dFU1Um43ajlKTFZsOGIwcUlCSVpGWENFelZvanVJT1BsMTM0by9zcHkxSE1hQytiUGh3Wk1UYVd4QlJpZHBFbUprNlEwNFJNTXdqdkFyLzFKWjhnWThtTzdCdTh1RUROVkNWeG5rQkUzMHhDSjhHRTNzL3EyN2VWSXBCUGFtU1lkNDVKZjNIeVBRRE4yaU45RjVHdGlIa2E2OXNhcmtKUnJ3SURBUUFCQW9HQkFJaUtDQ1NEM2FFUEFjQUx1MjdWN0JmR1BYN3lDTVg0OSsyVDVwNXNJdkduQjcrQ0NZZ09QaVQybmlpMGJPNVBBOTlnZnhPQXl1WCs5Z3llclVQbUFSc1ViUzcvUndkNGorRUlOVW1DanJSK2R6dGVXT0syeGxHamFOdGNPZU5jMkVtelQyMFRsekxVeUxTWGpzMzVlU2NQK0loeVptM2xJd21vbWtNb2d1QkFrRUE0a1FsOVBxaTJ2MVBDeGJCelU4Nnphblo2b0hsV0IzMUh4MllCNmFLYXhjNkVOZHhVejFzNjU2VncrRDhSVGpoSllyeDdMVkxzZDBRaVZJM0liSjVvUUpCQU1FN3k0aHg0SCtnQU40MEdrYjNjTFZGNHNpSEZrNnA2QVZRdlpzREwvVnh3bVlOdE4rM0txT3NVcG11WXZ3a3h0ajhIQnZtckxUYStXb3NmRDQwS1U4Q1FRQ1dvNmhob1R3cmI5bmdHQmFQQ2VDc2JCaVkrRUlvbUVsSm5mcEpuYWNxQlJ5emVid0pIeXdVOGsvalNUYXJIMk5HQzJ0bG5JMzRyS1VGeDZiTTJIWUJBa0VBbXBYSWZPNkZKL1NMM1RlWGNnQ1A5U1RraVlHd2NkdnhGeGVCcDlvRDZ2cElCN2FkWlgrMko5dzY5R0VUSlI0U3loSGVOdC95ZUhqWm9YdlhKVGc3ZHdKQVpEamxwL25wNEFZV3JYaGFrMVAvNGZlaDVNSU5WVHNXQkhTNlRZNW0xRmZMUEpybklHNW1FSHNidWkvdnhuQ1JmRUR4ZlU1V1E0cS9HUkZuaVl3SHB3PT0=', | ||
'DNAME' => 'example.com. 300 IN DNAME frobozz-division.acme.example.', | ||
'DS' => 'example.com. 300 IN DS 21366 7 2 96eeb2ffd9b00cd4694e78278b5efdab0a80446567b69f634da078f0d90f01ba', | ||
'RRSIG' => 'example.com. 300 IN RRSIG DNSKEY 7 1 86400 20100827211706 20100822211706 57970 gov. KoWPhMtLHp8sWYZSgsMiYJKB9P71CQmh9CnxJCs5GutKfo7Jpw+nNnDLiNnsd6U1JSkf99rYRWCyOTAPC47xkHr+2Uh7n6HDJznfdCzRa/v9uwEcbXIxCZ7KfzNJewW3EvYAxDIrW6sY/4MAsjS5XM/O9LaWzw6pf7TX5obBbLI+zRECbPNTdY+RF6Fl9K0GVaEZJNYi2PRXnATwvwca2CNRWxeMT/dF5STUram3cWjH0Pkm19Gc1jbdzlZVDbUudDauWoHcc0mfH7PV1sMpe80NqK7yQ24AzAkXSiknO13itHsCe4LECUu0/OtnhHg2swwXaVTf5hqHYpzi3bQenw==', | ||
'NSEC' => 'example.com. 300 IN NSEC dog.poo.com. A MX RRSIG NSEC TYPE1234', | ||
'SSHFP' => 'example.com. 300 IN SSHFP 2 1 123456789abcdef67890123456789abcdef67890', | ||
'IPSECKEY' => 'example.com. 300 IN IPSECKEY 10 2 2 2001:db8:0:8002:0:0:2000:1 AQNRU3mG7TVTO2BkR47usntb102uFJtugbo6BSGvgqt4AQ==', | ||
'DNSKEY' => 'example.com. 300 IN DNSKEY 256 3 7 AwEAAYCXh/ZABi8kiJIDXYmyUlHzC0CHeBzqcpyZAIjC7dK1wkRYVcUvIlpTOpnOVVfcC3Py9Ui/x45qKb0LytvK7WYAe3WyOOwk5klwIqRC/0p4luafbd2yhRMF7quOBVqYrLoHwv8i9LrV+r8dhB7rXv/lkTSI6mEZsg5rDfee8Yy1', | ||
'DHCID' => 'example.com. 300 IN DHCID AAIBY2/AuCccgoJbsaxcQc9TUapptP69lOjxfNuVAA2kjEA=', | ||
'NSEC3' => 'example.com. 300 IN NSEC3 1 1 12 AABBCCDD b4um86eghhds6nea196smvmlo4ors995 NS DS RRSIG', | ||
'NSEC3PARAM'=> 'example.com. 300 IN NSEC3PARAM 1 0 1 D399EAAB', | ||
'SPF' => 'example.com. 300 IN SPF "v=spf1 ip4:192.168.0.1/24 mx ?all"', | ||
'TKEY' => 'example.com. 300 IN TKEY gss.microsoft.com. 3 123456.', | ||
'DLV' => 'example.com. 300 IN DLV 21366 7 2 96eeb2ffd9b00cd4694e78278b5efdab0a80446567b69f634da078f0d90f01ba', | ||
); | ||
|
||
foreach($rrs as $rr => $line) { | ||
|
||
$class_name = 'Net_DNS2_RR_' . $rr; | ||
|
||
// | ||
// create a new packet | ||
// | ||
$request = new Net_DNS2_Packet_Request('example.com', $rr, 'IN'); | ||
|
||
// | ||
// parse the line | ||
// | ||
$a = Net_DNS2_RR::fromString($line); | ||
|
||
// | ||
// check that the object is right | ||
// | ||
$this->assertTrue($a instanceof $class_name); | ||
|
||
// | ||
// set it on the packet | ||
// | ||
$request->answer[] = $a; | ||
$request->header->ancount = 1; | ||
|
||
// | ||
// get the binary packet data | ||
// | ||
$data = $request->get(); | ||
|
||
// | ||
// parse the binary | ||
// | ||
$response = new Net_DNS2_Packet_Response($data, strlen($data)); | ||
|
||
// | ||
// the answer data in the response, should match our initial line exactly | ||
// | ||
$this->assertSame($line, $response->answer[0]->__toString()); | ||
} | ||
|
||
} | ||
} | ||
|
||
|
||
|