###--------------------------------------------------------------------------
AT_SETUP([tvec type-buffer])
-test_parse([buffer], [16], [16 B])
-test_parse([buffer], [16;?], [16 B])
-test_parse([buffer], [16 ;?], [16 B])
-test_parse([buffer], [16384], [16 kB])
-test_parse([buffer], [16777216], [16 MB])
-test_parse([buffer], [16k], [16 kB])
-test_parse([buffer], [16k;?], [16 kB])
-test_parse([buffer], [16k ;?], [16 kB])
-test_parse([buffer], [16 k], [16 kB])
-test_parse([buffer], [16 k;?], [16 kB])
-test_parse([buffer], [16 k ;?], [16 kB])
-test_parse([buffer], [16kB], [16 kB])
-test_parse([buffer], [16kB;?], [16 kB])
-test_parse([buffer], [16kB ;?], [16 kB])
-test_parse([buffer], [16 kB], [16 kB])
-test_parse([buffer], [16 kB;?], [16 kB])
-test_parse([buffer], [16 kB ;?], [16 kB])
+test_parse([buffer], [16], [16 B ; = 16 = 0x10])
+test_parse([buffer], [16;?], [16 B ; = 16 = 0x10])
+test_parse([buffer], [16 ;?], [16 B ; = 16 = 0x10])
+test_parse([buffer], [16384], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16777216], [16 MB ; = 16777216 = 0x01000000])
+test_parse([buffer], [16k], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16k;?], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16k ;?], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16 k], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16 k;?], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16 k ;?], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16kB], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16kB;?], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16kB ;?], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16 kB], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16 kB;?], [16 kB ; = 16384 = 0x4000])
+test_parse([buffer], [16 kB ;?], [16 kB ; = 16384 = 0x4000])
+
+test_parse([buffer], [16777216@4096+17],
+ [16 MB @ 4 kB + 17 B ; = 16777216 @ 4096 + 17 = 0x01000000 @ 0x1000 + 0x11])
test_parserr([buffer], [16!], [3], [invalid buffer length `16!'])
test_parserr([buffer], [16 !], [3], [invalid buffer length `16 !'])
test_parserr([buffer], [16 k!], [3], [invalid buffer length `16 k!'])
test_parserr([buffer], [16 kB!], [3], [invalid buffer length `16 kB!'])
test_parserr([buffer], [16 kB !],
- [3], [syntax error: expected end-of-line but found `!'])
+ [3], [syntax error: expected `@' but found `!'])
test_parserr([buffer], [16 EB], [3], [buffer length `16 EB' out of range])
AT_CLEANUP