1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
#include <cybozu/ip_address.hpp>
#include <cybozu/test.hpp>
AUTOTEST(ipv4) {
cybozu_test_no_exception(
cybozu::ip_address("123.123.123.0")
);
cybozu_test_exception(
cybozu::ip_address("123.456.789.0"), cybozu::ip_address::bad_address
);
cybozu_test_exception(
cybozu::ip_address("localhost"), cybozu::ip_address::bad_address
);
cybozu::ip_address ipv4("123.123.123.0");
cybozu_assert( ipv4.is_v4() );
cybozu_assert( ipv4.str() == "123.123.123.0" );
}
AUTOTEST(ipv6) {
cybozu_test_no_exception(
cybozu::ip_address("::1")
);
// cybozu_test_no_exception(
// cybozu::ip_address("fe80::dead:beaf%lo")
// );
cybozu_test_exception(
cybozu::ip_address("fg::1"), cybozu::ip_address::bad_address
);
cybozu_test_exception(
cybozu::ip_address("::1%lo"), cybozu::ip_address::bad_address
);
cybozu::ip_address ipv6("fd00:1234::dead:beaf");
cybozu_assert( ipv6.is_v6() );
cybozu_assert( ipv6.str() == "fd00:1234::dead:beaf" );
}
AUTOTEST(compare) {
using cybozu::ip_address;
cybozu_assert( ip_address("127.0.0.1") == ip_address("127.0.0.1") );
cybozu_assert( ip_address("127.0.0.1") != ip_address("162.193.0.1") );
cybozu_assert( ip_address("127.0.0.1") != ip_address("::1") );
cybozu_assert( ip_address("::1") == ip_address("::1") );
// cybozu_assert( ip_address("fe80::1%lo") == ip_address("fe80::1%lo") );
// cybozu_assert( ip_address("fe80::1%lo") != ip_address("fe80::1%eth0") );
}
AUTOTEST(has_ip_address) {
for( int i = 0; i < 1000; ++i )
cybozu::has_ip_address(cybozu::ip_address("11.11.11.11"));
}
|