first cut
[p5sagit/Data-Dumper-Concise.git] / t / concise.t
CommitLineData
6d2a9a35 1use strict;
2use warnings;
3use Data::Dumper ();
4use Data::Dumper::Concise;
5use Test::More qw(no_plan);
6
7my $dd = Data::Dumper->new([])
8 ->Terse(1)
9 ->Indent(1)
10 ->Useqq(1)
11 ->Deparse(1)
12 ->Quotekeys(0)
13 ->Sortkeys(1);
14
15my $dd_c = Dumper;
16
17my $to_dump = { foo => "bar\nbaz", quux => sub { "fleem" } };
18
19$dd_c->Values([ $to_dump ]);
20$dd->Values([ $to_dump ]);
21
22my $example = do {
23 local $Data::Dumper::Terse = 1;
24 local $Data::Dumper::Indent = 1;
25 local $Data::Dumper::Useqq = 1;
26 local $Data::Dumper::Deparse = 1;
27 local $Data::Dumper::Quotekeys = 0;
28 local $Data::Dumper::Sortkeys = 1;
29 Data::Dumper::Dumper($to_dump);
30};
31
32is($example, $dd->Dump, 'Both Data::Dumper usages equivalent');
33
34is($example, $dd_c->Dump, 'Returned object usage equivalent');
35
36is($example, Dumper($to_dump), 'Subroutine call usage equivalent');
37
38ok(!eval { Dumper(1); 1 }, 'Non-ref call dies');
39
40ok(!eval { Dumper({}, {}); 1 }, 'Multi-ref call dies');