Make Dwarn output all arguments even in scalar context
[p5sagit/Data-Dumper-Concise.git] / t / sugar.t
index 8c1dba0..2ccc009 100644 (file)
--- a/t/sugar.t
+++ b/t/sugar.t
@@ -34,7 +34,7 @@ DWARN: {
    ok eq_array(\@foo, ['warn','friend']), 'Dwarn passes lists through correctly';
 
    my $bar = Dwarn 'robot',2,3;
-   is $warned_string,qq{"robot"\n}, 'Dwarn warns scalars correctly';
+   is $warned_string,qq{"robot"\n2\n3\n}, 'Dwarn warns scalars correctly';
    is $bar, 'robot', 'Dwarn passes scalars through correctly';
 }
 
@@ -45,6 +45,13 @@ DWARN_CODEREF: {
    ok eq_array($foo, ['warn','friend']), 'Dwarn passes lists through correctly';
 }
 
+DWARNF: {
+   my @foo = DwarnF { "arr: $_[0] str: $_[1]" } [qw(wut HALP)], "gnarl";
+
+   is($warned_string, qq{arr: [\n  "wut",\n  "HALP"\n]\n str: "gnarl"\n}, 'DumperF works!');
+   ok eq_array($foo[0], ['wut','HALP']) && $foo[1] eq 'gnarl', 'DwarnF passes lists through correctly';
+}
+
 DWARNN: {
    my $loaded = eval { require Devel::ArgNames; 1 };
    if ($loaded) {
@@ -59,3 +66,10 @@ DWARNN: {
    }
 }
 
+DDIE: {
+   eval {
+      DdieS [ 'k', 'bar' ];
+   };
+   is $@, qq{[\n  "k",\n  "bar"\n]\n}, 'DwarnD dies output correctly';
+}
+