Ton
54 строки · 1.5 Кб
1slice ascii_slice() method_id {
2return "string";
3}
4
5slice raw_slice() method_id {
6return "abcdef"s;
7}
8
9slice addr_slice() method_id {
10return "Ef8zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzM0vF"a;
11}
12
13int string_hex() method_id {
14return "ABCDEFGHIJKLMNOPQRSTUVWXYZ012345"u;
15}
16
17int string_minihash() method_id {
18return "transfer(slice, int)"h;
19}
20
21int string_maxihash() method_id {
22return "transfer(slice, int)"H;
23}
24
25int string_crc32() method_id {
26return "transfer(slice, int)"c;
27}
28
29builder newc() asm "NEWC";
30slice endcs(builder b) asm "ENDC" "CTOS";
31int sdeq (slice s1, slice s2) asm "SDEQ";
32
33_ main() {
34slice s_ascii = ascii_slice();
35slice s_raw = raw_slice();
36slice s_addr = addr_slice();
37int i_hex = string_hex();
38int i_mini = string_minihash();
39int i_maxi = string_maxihash();
40int i_crc = string_crc32();
41throw_unless(101, sdeq(s_ascii, newc().store_uint(0x737472696E67, 12 * 4).endcs()));
42throw_unless(102, sdeq(s_raw, newc().store_uint(0xABCDEF, 6 * 4).endcs()));
43throw_unless(103, sdeq(s_addr, newc().store_uint(4, 3).store_int(-1, 8)
44.store_uint(0x3333333333333333333333333333333333333333333333333333333333333333, 256).endcs()));
45throw_unless(104, i_hex == 0x4142434445464748494A4B4C4D4E4F505152535455565758595A303132333435);
46throw_unless(105, i_mini == 0x7a62e8a8);
47throw_unless(106, i_maxi == 0x7a62e8a8ebac41bd6de16c65e7be363bc2d2cbc6a0873778dead4795c13db979);
48throw_unless(107, i_crc == 2235694568);
49return 0;
50}
51
52{-
53TESTCASE | 0 | | 0
54-}
55