ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/CBOR-XS/t/58_hv.t
Revision: 1.3
Committed: Sun Apr 24 20:08:41 2016 UTC (8 years, 1 month ago) by root
Content type: application/x-troff
Branch: MAIN
CVS Tags: rel-1_8, rel-1_71, rel-1_5, rel-1_82, rel-1_83, rel-1_81, rel-1_86, rel-1_87, rel-1_84, rel-1_85, rel-1_7, rel-1_6, HEAD
Changes since 1.2: +21 -10 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.3 BEGIN { $| = 1; print "1..21\n"; }
2 root 1.1
3     # none of the other tests serialise hv's, gross
4 root 1.3 # also checks text_keys/text_strings
5 root 1.1
6     use CBOR::XS;
7    
8     print "ok 1\n";
9    
10     $enc = encode_cbor {};
11     print $enc ne "\xa0" ? "not " : "", "ok 2\n";
12    
13     $enc = encode_cbor { 5 => 6 };
14     print $enc ne (pack "H*", "a1413506") ? "not " : "", "ok 3\n";
15    
16     $enc = encode_cbor { "" => \my $dummy };
17     print $enc ne (pack "H*", "a140d95652f6") ? "not " : "", "ok 4\n";
18    
19     $enc = encode_cbor { undef() => \my $dummy };
20     print $enc ne (pack "H*", "a140d95652f6") ? "not " : "", "ok 5\n";
21    
22     $enc = encode_cbor { "abc" => "def" };
23     print $enc ne (pack "H*", "a14361626343646566") ? "not " : "", "ok 6\n";
24    
25     $enc = encode_cbor { "abc" => "def", "geh" => "ijk" };
26     print $enc !~ /^\xa2/ ? "not " : "", "ok 7\n";
27     print 17 ne length $enc ? "not " : "", "ok 8\n";
28    
29     $enc = encode_cbor { "\x{7f}" => undef };
30     print $enc ne (pack "H*", "a1417ff6") ? "not " : "", "ok 9\n";
31    
32     $dec = decode_cbor pack "H*", "a1417ff6";
33     print +(keys %$dec)[0] ne "\x{7f}" ? "not " : "", "ok 10\n";
34    
35     $enc = encode_cbor { "\x{100}" => undef };
36     print $enc ne (pack "H*", "a162c480f6") ? "not " : "", "ok 11\n";
37    
38     $dec = decode_cbor pack "H*", "a162c480f6";
39     print +(keys %$dec)[0] ne "\x{100}" ? "not " : "", "ok 12\n";
40    
41     $enc = encode_cbor { "\x{8f}" => undef };
42     print $enc ne (pack "H*", "a1418ff6") ? "not " : "", "ok 13\n";
43    
44 root 1.3 $text_strings = CBOR::XS->new->text_strings;
45 root 1.1
46 root 1.3 $enc = $text_strings->encode ({ "\x{7f}" => "\x{3f}" });
47     print $enc ne (pack "H*", "a1617f613f") ? "not " : "", "ok 14\n";
48 root 1.1
49 root 1.3 $enc = $text_strings->encode ({ "\x{8f}" => "\x{c7}" });
50     print $enc ne (pack "H*", "a162c28f62c387") ? "not " : "", "ok 15\n";
51 root 1.1
52 root 1.3 $enc = $text_strings->encode ({ "\x{8f}gix\x{ff}x" => "a\x{80}b\x{fe}y" });
53     print $enc ne (pack "H*", "a168c28f676978c3bf786761c28062c3be79") ? "not " : "", "ok 16\n";
54 root 1.2
55     $dec = decode_cbor pack "H*", "a168c28f676978c3bf78f6";
56     print +(keys %$dec)[0] ne "\x{8f}gix\x{ff}x" ? "not " : "", "ok 17\n";
57    
58 root 1.3 $text_keys = CBOR::XS->new->text_keys;
59    
60     $enc = $text_keys->encode ({ "\x{7f}" => "\x{3f}" });
61     print $enc ne (pack "H*", "a1617f413f") ? "not " : "", "ok 18\n";
62    
63     $enc = $text_keys->encode ({ "\x{8f}" => "\x{c7}" });
64     print $enc ne (pack "H*", "a162c28f41c7") ? "not " : "", "ok 19\n";
65    
66     $enc = $text_keys->encode ({ "\x{8f}gix\x{ff}x" => "a\x{80}b\x{fe}y" });
67     print $enc ne (pack "H*", "a168c28f676978c3bf7845618062fe79") ? "not " : "", "ok 20\n";
68    
69     print "ok 21\n";
70 root 1.2