create DwarnF for formatting Dumper'd output
[p5sagit/Data-Dumper-Concise.git] / t / concise.t
index 18d085d..20e3512 100644 (file)
@@ -12,29 +12,28 @@ my $dd = Data::Dumper->new([])
                      ->Quotekeys(0)
                      ->Sortkeys(1);
 
-my $dd_c = Dumper;
+foreach my $to_dump (
+  [ { foo => "bar\nbaz", quux => sub { "fleem" }  } ],
+  [ 'one', 'two' ]
+) {
 
-my $to_dump = { foo => "bar\nbaz", quux => sub { "fleem" } };
+  $dd->Values([ @$to_dump ]);
 
-$dd_c->Values([ $to_dump ]);
-$dd->Values([ $to_dump ]);
+  my $example = do {
+    local $Data::Dumper::Terse = 1;
+    local $Data::Dumper::Indent = 1;
+    local $Data::Dumper::Useqq = 1;
+    local $Data::Dumper::Deparse = 1;
+    local $Data::Dumper::Quotekeys = 0;
+    local $Data::Dumper::Sortkeys = 1;
+    Data::Dumper::Dumper(@$to_dump);
+  };
 
-my $example = do {
-  local $Data::Dumper::Terse = 1;
-  local $Data::Dumper::Indent = 1;
-  local $Data::Dumper::Useqq = 1;
-  local $Data::Dumper::Deparse = 1;
-  local $Data::Dumper::Quotekeys = 0;
-  local $Data::Dumper::Sortkeys = 1;
-  Data::Dumper::Dumper($to_dump);
-};
+  is($example, $dd->Dump, 'Both Data::Dumper usages equivalent');
 
-is($example, $dd->Dump, 'Both Data::Dumper usages equivalent');
+  is($example, Dumper(@$to_dump), 'Subroutine call usage equivalent');
+}
 
-is($example, $dd_c->Dump, 'Returned object usage equivalent');
+my $out = DumperF { "arr: $_[0] str: $_[1]" } [qw(wut HALP)], "gnarl";
 
-is($example, Dumper($to_dump), 'Subroutine call usage equivalent');
-
-ok(!eval { Dumper(1); 1 }, 'Non-ref call dies');
-
-ok(!eval { Dumper({}, {}); 1 }, 'Multi-ref call dies');
+is($out, qq{arr: [\n  "wut",\n  "HALP"\n]\n str: "gnarl"\n}, 'DumperF works!');