1 # Before `make install' is performed this script should be runnable with
2 # `make test'. After `make install' it should work as `perl test.pl'
4 #########################
10 BEGIN { plan tests => 21, todo => [] };
12 BEGIN { plan tests => 10, todo => [] };
17 #########################
19 ok(Net::LibIDN::idn_to_ascii("b\xF6se.de", "ISO-8859-1"), "xn--bse-sna.de");
20 ok(Net::LibIDN::idn_to_ascii("b\xC3\xB6se.de","UTF-8"), "xn--bse-sna.de");
22 ok(Net::LibIDN::idn_to_unicode("xn--bse-sna.de", "ISO-8859-1"), "b\xF6se.de");
23 ok(Net::LibIDN::idn_to_unicode("xn--bse-sna.de", "UTF-8"), "b\xC3\xB6se.de");
25 ok(Net::LibIDN::idn_punycode_encode("\xDCHHH\xC4AHHH", "ISO-8859-1"), "HHHAHHH-wpa6s");
26 ok(Net::LibIDN::idn_punycode_encode("\xC3\x9CHHH\xC3\x84AHHH", "UTF-8"), "HHHAHHH-wpa6s");
28 ok(Net::LibIDN::idn_punycode_decode("HHHAHHH-wpa6s", "ISO-8859-1"), "\xDCHHH\xC4AHHH");
29 ok(Net::LibIDN::idn_punycode_decode("HHHAHHH-wpa6s", "UTF-8"), "\xC3\x9CHHH\xC3\x84AHHH");
31 ok(Net::LibIDN::idn_prep_name("GR\xD6\xDFeR", "ISO-8859-1"), "gr\xF6sser");
32 ok(Net::LibIDN::idn_prep_name("GR\xC3\xB6\xC3\x9Fer", "UTF-8"), "gr\xC3\xB6sser");
39 my $res = Net::LibIDN::tld_get_table("no");
40 $has_nono = $$res{name} ne "no";
41 skip($has_nono, $$res{name}, "no");
42 skip($has_nono, $$res{nvalid}, 13);
45 for (my $i=0; $i<13; $i++)
47 $zero = 1 if (!$$res{valid}[$i]{start} && !$$res{valid}[$i]{end});
48 $sum += $$res{valid}[$i]{start};
49 $sum += $$res{valid}[$i]{end};
51 skip($has_nono, $sum, 7470);
52 skip($has_nono, $zero, 0);
58 my $res = Net::LibIDN::tld_check("p\xFBrle.no", $errpos, "ISO-8859-1");
59 skip($has_nono, $errpos, 1);
60 skip($has_nono, $res, 0);
65 my $res = Net::LibIDN::tld_check("p\xFBrle.no", $errpos, "ISO-8859-1", "com");
70 ok(Net::LibIDN::tld_get("Kruder.DorfMeister"), "dorfmeister");
71 ok(Net::LibIDN::tld_get("GR\xC3\xB6\xC3\x9Fer"), undef);
73 ok(Net::LibIDN::tld_get_table("mars"), undef);