chiark / gitweb /
v0.06
[nailing-cargo.git] / t / toml-test / valid / table-with-literal-string.t
1 # File automatically generated from BurntSushi/toml-test
2 use utf8;
3 use Test2::V0;
4 use Data::Dumper;
5 use DateTime;
6 use DateTime::Format::RFC3339;
7 use Math::BigInt;
8 use Math::BigFloat;
9 use TOML::Tiny;
10
11 binmode STDIN,  ':encoding(UTF-8)';
12 binmode STDOUT, ':encoding(UTF-8)';
13
14 my $expected1 = {
15                'a' => {
16                         '"b"' => {
17                                    'c' => {
18                                             'answer' => bless( {
19                                                                  'code' => sub {
20                                                                                BEGIN {${^WARNING_BITS} = "\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x55\x15\x00\x04\x40\x05\x04\x54"}
21                                                                                use strict;
22                                                                                no feature ':all';
23                                                                                use feature ':5.16';
24                                                                                require Math::BigInt;
25                                                                                'Math::BigInt'->new('42')->beq($_);
26                                                                            },
27                                                                  '_file' => '(eval 424)',
28                                                                  'name' => '<Custom Code>',
29                                                                  'operator' => 'CODE(...)',
30                                                                  '_lines' => [
31                                                                                6
32                                                                              ]
33                                                                }, 'Test2::Compare::Custom' )
34                                           }
35                                  }
36                       }
37              };
38
39
40 my $actual = from_toml(q{['a']
41 [a.'"b"']
42 [a.'"b"'.c]
43 answer = 42 
44 });
45
46 is($actual, $expected1, 'table-with-literal-string - from_toml') or do{
47   diag 'EXPECTED:';
48   diag Dumper($expected1);
49
50   diag 'ACTUAL:';
51   diag Dumper($actual);
52 };
53
54 is(eval{ from_toml(to_toml($actual)) }, $actual, 'table-with-literal-string - to_toml') or do{
55   diag 'INPUT:';
56   diag Dumper($actual);
57
58   diag 'TOML OUTPUT:';
59   diag to_toml($actual);
60
61   diag 'REPARSED OUTPUT:';
62   diag Dumper(from_toml(to_toml($actual)));
63 };
64
65 done_testing;