use Data::Dumper::Concise ();
use Test::More qw(no_plan);
-use Test::Warn;
-my @foo;
-warnings_like {
- @foo = Dwarn 'warn', 'friend';
-} [qr/"warn"/,qr/friend/], "Dwarn warns";
+my $warned_string;
-ok eq_array(\@foo, ['warn']), 'Dwarn passes through correctly';
+BEGIN {
+ $SIG{'__WARN__'} = sub {
+ $warned_string = $_[0]
+ }
+}
-my $bar;
-warning_like {
- $bar = DwarnS 'robot',2,3;
-} qr{^"robot"$}, "DwarnS warns";
+my @foo = Dwarn 'warn', 'friend';
+is $warned_string,qq{"warn"\n"friend"\n}, 'Dwarn warns';
+ok eq_array(\@foo, ['warn','friend']), 'Dwarn passes through correctly';
+
+my $bar = DwarnS 'robot',2,3;
+is $warned_string,qq{"robot"\n}, 'DwarnS warns';
is $bar, 'robot', 'DwarnS passes through correctly';