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