1 | BEGIN { $| = 1; print "1..72\n"; } |
1 | BEGIN { $| = 1; print "1..79\n"; } |
2 | |
2 | |
3 | # examples from rfc7049 |
3 | # examples from rfc7049 |
4 | |
4 | |
5 | use Data::Dumper; |
5 | use Data::Dumper; |
6 | use CBOR::XS; |
6 | use CBOR::XS; |
… | |
… | |
87 | * 1.1 0xfb3ff199999999999a |
87 | * 1.1 0xfb3ff199999999999a |
88 | < 1.5 0xf93e00 |
88 | < 1.5 0xf93e00 |
89 | < 65504 0xf97bff |
89 | < 65504 0xf97bff |
90 | < 100000 0xfa47c35000 |
90 | < 100000 0xfa47c35000 |
91 | * 3.4028234663852886e+38 0xfa7f7fffff |
91 | * 3.4028234663852886e+38 0xfa7f7fffff |
92 | + 1e+300 0xfb7e37e43c8800759c |
92 | * 1e+300 0xfb7e37e43c8800759c |
93 | 5.960464477539063e-8 0xf90001 |
93 | 5.960464477539063e-8 0xf90001 |
94 | 0.00006103515625 0xf90400 |
94 | 0.00006103515625 0xf90400 |
95 | < -4 0xf9c400 |
95 | < -4 0xf9c400 |
96 | * -4.1 0xfbc010666666666666 |
96 | * -4.1 0xfbc010666666666666 |
97 | Infinity 0xf97c00 |
97 | Infinity 0xf97c00 |
… | |
… | |
104 | * NaN 0xfb7ff8000000000000 |
104 | * NaN 0xfb7ff8000000000000 |
105 | -Infinity 0xfbfff0000000000000 |
105 | -Infinity 0xfbfff0000000000000 |
106 | * false 0xf4 |
106 | * false 0xf4 |
107 | * true 0xf5 |
107 | * true 0xf5 |
108 | * null 0xf6 |
108 | * null 0xf6 |
109 | undefined 0xf7 |
109 | * undefined 0xf7 |
110 | simple(16) 0xf0 |
110 | simple(16) 0xf0 |
111 | simple(24) 0xf818 |
111 | simple(24) 0xf818 |
112 | simple(255) 0xf8ff |
112 | simple(255) 0xf8ff |
113 | 0("2013-03-21T20:04:00Z") 0xc074323031332d30332d32315432303a30343a30305a |
113 | 0("2013-03-21T20:04:00Z") 0xc074323031332d30332d32315432303a30343a30305a |
114 | 1(1363896240) 0xc11a514b67b0 |
114 | * 1(1363896240) 0xc11a514b67b0 |
115 | 1(1363896240.5) 0xc1fb41d452d9ec200000 |
115 | * 1(1363896240.5) 0xc1fb41d452d9ec200000 |
116 | 23(h'01020304') 0xd74401020304 |
116 | 23(h'01020304') 0xd74401020304 |
117 | 24(h'6449455446') 0xd818456449455446 |
117 | * 24(h'6449455446') 0xd818456449455446 |
118 | 32("http://www.example.com") 0xd82076687474703a2f2f7777772e6578616d706c652e636f6d |
118 | 32("http://www.example.com") 0xd82076687474703a2f2f7777772e6578616d706c652e636f6d |
119 | h'' 0x40 |
119 | * h'' 0x40 |
120 | h'01020304' 0x4401020304 |
120 | * h'01020304' 0x4401020304 |
121 | "" 0x60 |
121 | * "" 0x60 |
122 | + a 0x6161 |
122 | + a 0x6161 |
123 | + IETF 0x6449455446 |
123 | + IETF 0x6449455446 |
124 | + "\ 0x62225c |
124 | + "\ 0x62225c |
125 | + ü 0x62c3bc |
125 | + ü 0x62c3bc |
126 | + 水 0x63e6b0b4 |
126 | + 水 0x63e6b0b4 |
… | |
… | |
128 | * [] 0x80 |
128 | * [] 0x80 |
129 | * [1,2,3] 0x83010203 |
129 | * [1,2,3] 0x83010203 |
130 | * [1,[2,3],[4,5]] 0x8301820203820405 |
130 | * [1,[2,3],[4,5]] 0x8301820203820405 |
131 | * [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]0x98190102030405060708090a0b0c0d0e0f101112131415161718181819 |
131 | * [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]0x98190102030405060708090a0b0c0d0e0f101112131415161718181819 |
132 | * {} 0xa0 |
132 | * {} 0xa0 |
133 | {1,2,3,4} 0xa201020304 |
133 | < {1,2,3,4} 0xa201020304 |
134 | < {"a",1,"b",[2,3]} 0xa26161016162820203 |
134 | < {"a",1,"b",[2,3]} 0xa26161016162820203 |
135 | < ["a",{"b","c"}] 0x826161a161626163 |
135 | < ["a",{"b","c"}] 0x826161a161626163 |
136 | < {"a","A","b","B","c","C","d","D","e","E"}0xa56161614161626142616361436164614461656145 |
136 | < {"a","A","b","B","c","C","d","D","e","E"}0xa56161614161626142616361436164614461656145 |
137 | (_h'0102',h'030405') 0x5f42010243030405ff |
137 | (_h'0102',h'030405') 0x5f42010243030405ff |
138 | < streaming 0x7f657374726561646d696e67ff |
138 | < streaming 0x7f657374726561646d696e67ff |