File Coverage

File:t/08-config-tiny.t
Coverage:100.0%

linestmtbrancondsubpodtimecode
1#!/usr/bin/env perl
2
3
1
1
1
2938
2
25
use strict;
4
1
1
1
3
1
32
use warnings;
5
1
1
1
359
67794
5
use Test::More;
6
1
1
1
413
858
80
use FindBin         qw/$Bin/;
7
1
1
1
279
2
53
use Util::H2O::More qw/o2h2o ini2o o2ini/;
8
1
1
1
242
965
22
use Config::Tiny    qw//;
9
1
1
1
608
12124
69837
use File::Temp      qw/tempfile/;
10
11# test wrappers, ini2o and o2ini for backward compat
12{
13
1
1
123
5
    my $c = o2h2o( Config::Tiny->read(qq{$Bin/test.ini}) );
14
15
1
328
    is $c->section1->var1, q{foo}, q{o2h2p handles Config::Tiny object as expected};
16
17
1
353
    my $c2 = ini2o qq{$Bin/test.ini};
18
19
1
269
    like $c2, qr/^Util::H2O/, q{ini2o returns Util::H2O object};
20
21
1
242
    is $c2->section1->var1, q{foo}, q{ini2o read .ini file and returns object with accessors, as expected};
22
23
1
247
    $c2->section1->var1(q{oof});
24
25
1
10
    is $c2->section1->var1, q{oof}, q{object with setter works, as expected};
26
27
1
259
    my ( $fh, $filename ) = tempfile( SUFFIX => '.ini' );
28
29
1
396
    o2ini $c2, qq{$filename};
30
31
1
244
    ok -e $filename, qq{$filename exists, so was written by o2ini};
32
33
1
241
    my $c3 = ini2o qq{$filename};
34
35
1
295
    is $c3->section1->var1, $c2->section1->var1, q{File written by o2ini stored expected configuration state};
36}
37
38
1
549
done_testing;