1(test-group "uint"2 (test-parse 0 parse-uint #u8(0))3 (test-parse 300 parse-uint #u8(#xac #x2))45 (test-parse 12418871010253280812 parse-uint6 #u8(#xac #xac #xac #xac #xac #xac #xac #xac #xac #x01))78 ;; 64-bit precision exceeded.9 (test-parse-error "failed predicate" parse-uint10 #u8(#xff #xff #xff #xff #xff #xff #xff #xff #xff #x2c))1112 ;; Too many octets.13 (test-parse-error "failed predicate" parse-uint14 #u8(#xac #xac #xac #xac #xac #xac #xac #xac #xac #xac #x2))1516 (test-parse-error "failed predicate" parse-uint #u8(#xac))17 (test-parse-error "failed predicate" parse-uint #u8(#xac #xac)))1819(test-group "int"20 (test-parse 0 parse-int #u8(0))21 (test-parse -1 parse-int #u8(1))22 (test-parse 1 parse-int #u8(2))23 (test-parse -2 parse-int #u8(3)))2425(test-group "u8, u16, u32, u64"26 (test-parse 0 parse-u8 #u8(0))27 (test-parse 255 parse-u8 #u8(#xff))28 (test-parse 42 parse-u8 #u8(42))29 (test-parse #x4223 parse-u16 #u8(#x23 #x42))30 (test-parse 65535 parse-u16 #u8(#xff #xff))3132 (test-parse-error "unexpected eof" parse-u16 #u8(1))33 (test-parse-error "unexpected eof" parse-u32 #u8(1 2)))3435(test-group "i8, i16, i32, i64"36 (test-parse 126 parse-i8 #u8(#x7e))37 (test-parse -128 parse-i8 #u8(#x80))3839 (test-parse 4242424242 parse-i64 #u8(#xb2 #x41 #xde #xfc #x00 #x00 #x00 #x00)))4041(test-group "bool"42 (test-parse #f parse-bool #u8(0))43 (test-parse #t parse-bool #u8(1))4445 (test-parse-error "invalid boolean value"46 parse-bool #u8(#xff)))4748(test-group "enum"49 (test-parse 42 (parse-enum '(23 42 1337)) #u8(42))50 (test-parse-error "enum value not part of given list"51 (parse-enum '(42 23)) #u8(5))5253 ;; enum value list must be non-empty54 (test-error (parse-enum '()))5556 ;; enum values must be inuque57 (test-error (parse-enum '(23 23))))5859(test-group "string"60 (test-parse "foo" parse-string61 (bytevector-append62 #u8(3)63 (string->utf8 "foo"))))6465(test-group "data<length>"66 (test-parse #u8(1 2 3 4 5) (parse-data 5) #u8(1 2 3 4 5))67 (test-parse #u8(1) (parse-data 1) #u8(1))6869 ;; length of fixed-length data must be at least 170 (test-error (parse-data 0)))7172(test-group "data"73 (test-parse #u8(1 2 3 4 5) (parse-data) #u8(#x05 1 2 3 4 5))74 (test-parse #u8(#x23) (parse-data) #u8(1 #x23)))