#!/usr/bin/perl # Parse a traceroute that has a "*" in it. use strict; use warnings; use Test::More tests => 11; use Socket; use Net::Traceroute; require "t/testlib.pl"; my $tr = parsefh(*DATA); is($tr->hop_query_stat(4, 1), TRACEROUTE_TIMEOUT, "Hop 4, query 1 is a timeout"); is($tr->hop_query_host(4, 1), inet_ntoa(INADDR_NONE), "Hop 4, query 1 is INADDR_NONE"); is($tr->hop_query_stat(4, 2), TRACEROUTE_OK, "Hop 4, query 2 is OK"); is($tr->hop_query_host(4, 0), "206.223.119.120", "Hop 4, query 0 is 206.223.119.120"); is($tr->hop_query_host(4, 2), "206.223.119.120", "Hop 4, query 2 is 206.223.119.120"); is($tr->hop_query_host(4, 3), "206.223.119.120", "Hop 4, query 3 is 206.223.119.120"); is($tr->hop_query_time(4, 2), 262.151, "Hop 4, query 2 time is correct"); is($tr->hop_query_stat(9, 1), TRACEROUTE_TIMEOUT, "Hop 9, query 1 is a timeout"); is($tr->hop_query_stat(9, 2), TRACEROUTE_TIMEOUT, "Hop 9, query 2 is a timeout"); is($tr->hop_query_stat(9, 3), TRACEROUTE_TIMEOUT, "Hop 9, query 3 is a timeout"); ok(!defined($tr->hop_query_stat(9, 0)), , "Hop 9, query 0 is undefined"); __END__ 1 66.92.73.1 29.216 ms 34.777 ms 23.062 ms 2 69.17.83.201 19.124 ms 22.092 ms 19.860 ms 3 69.17.87.24 44.491 ms 45.501 ms 46.231 ms 4 * 206.223.119.120 262.151 ms 290.742 ms 5 207.210.142.17 69.503 ms 68.633 ms 67.422 ms 6 207.210.142.234 68.889 ms 68.660 ms 69.356 ms 7 18.168.0.23 99.719 ms 71.103 ms 71.472 ms 8 18.4.7.65 67.981 ms 67.483 ms 69.992 ms 9 * * * 10 128.52.32.80 70.139 ms 68.373 ms 68.695 ms