chiark / gitweb /
ce1d2ced0519bc16696456dc75d76542ed5ce053
[nailing-cargo.git] / t / toml-test / valid / integer.t
1 # File automatically generated from BurntSushi/toml-test
2 use utf8;
3 use Test2::V0;
4 use Data::Dumper;
5 use TOML::Tiny;
6
7 binmode STDIN,  ':encoding(UTF-8)';
8 binmode STDOUT, ':encoding(UTF-8)';
9
10 my $expected1 = {
11                'zero' => bless( {
12                                   'operator' => 'CODE(...)',
13                                   'name' => '<Custom Code>',
14                                   'code' => sub {
15                                                 BEGIN {${^WARNING_BITS} = "\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x15\x00\x04\x40\x05\x04\x54"}
16                                                 use strict;
17                                                 no feature ':all';
18                                                 use feature ':5.16';
19                                                 require Math::BigInt;
20                                                 'Math::BigInt'->new('0')->beq($_);
21                                             },
22                                   '_lines' => [
23                                                 6
24                                               ],
25                                   '_file' => '(eval 406)'
26                                 }, 'Test2::Compare::Custom' ),
27                'neganswer' => bless( {
28                                        '_lines' => [
29                                                      6
30                                                    ],
31                                        'code' => sub {
32                                                      BEGIN {${^WARNING_BITS} = "\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x15\x00\x04\x40\x05\x04\x54"}
33                                                      use strict;
34                                                      no feature ':all';
35                                                      use feature ':5.16';
36                                                      require Math::BigInt;
37                                                      'Math::BigInt'->new('-42')->beq($_);
38                                                  },
39                                        'operator' => 'CODE(...)',
40                                        'name' => '<Custom Code>',
41                                        '_file' => '(eval 407)'
42                                      }, 'Test2::Compare::Custom' ),
43                'posanswer' => bless( {
44                                        '_file' => '(eval 405)',
45                                        '_lines' => [
46                                                      6
47                                                    ],
48                                        'code' => sub {
49                                                      BEGIN {${^WARNING_BITS} = "\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x15\x00\x04\x40\x05\x04\x54"}
50                                                      use strict;
51                                                      no feature ':all';
52                                                      use feature ':5.16';
53                                                      require Math::BigInt;
54                                                      'Math::BigInt'->new('42')->beq($_);
55                                                  },
56                                        'name' => '<Custom Code>',
57                                        'operator' => 'CODE(...)'
58                                      }, 'Test2::Compare::Custom' ),
59                'answer' => bless( {
60                                     '_lines' => [
61                                                   6
62                                                 ],
63                                     'code' => sub {
64                                                   BEGIN {${^WARNING_BITS} = "\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x15\x00\x04\x40\x05\x04\x54"}
65                                                   use strict;
66                                                   no feature ':all';
67                                                   use feature ':5.16';
68                                                   require Math::BigInt;
69                                                   'Math::BigInt'->new('42')->beq($_);
70                                               },
71                                     'name' => '<Custom Code>',
72                                     'operator' => 'CODE(...)',
73                                     '_file' => '(eval 408)'
74                                   }, 'Test2::Compare::Custom' )
75              };
76
77
78 my $actual = from_toml(q{answer = 42
79 posanswer = +42
80 neganswer = -42
81 zero = 0
82 });
83
84 is($actual, $expected1, 'integer - from_toml') or do{
85   diag 'EXPECTED:';
86   diag Dumper($expected1);
87
88   diag 'ACTUAL:';
89   diag Dumper($actual);
90 };
91
92 is(eval{ from_toml(to_toml($actual)) }, $actual, 'integer - to_toml') or do{
93   diag 'INPUT:';
94   diag Dumper($actual);
95
96   diag 'TOML OUTPUT:';
97   diag to_toml($actual);
98
99   diag 'REPARSED OUTPUT:';
100   diag Dumper(from_toml(to_toml($actual)));
101 };
102
103 done_testing;