-#!/usr/bin/perl
-
use strict;
use warnings;
use Test::More;
-use Test::Exception;
+use Test::Fatal;
use Test::Deep;
+use Test::Requires {
+ 'Digest' => 0.01, # skip all if not installed
+ 'Digest::SHA' => 0.00,
+ 'JSON::Any' => 0.01,
+};
+
BEGIN {
- eval "use Digest; use Digest::SHA1";
- plan skip_all => "Digest and Digest::SHA1 is required for this test" if $@;
- eval "use JSON::Any";
- plan skip_all => "JSON::Any is required for this test" if $@;
plan tests => 26;
use_ok('MooseX::Storage');
}
{
-
package Foo;
use Moose;
use MooseX::Storage;
);
my $foo2;
- lives_ok {
+ is( exception {
$foo2 = Foo->unpack($packed);
- } '... unpacked okay';
+ }, undef, '... unpacked okay');
isa_ok($foo2, 'Foo');
cmp_deeply(
SKIP: {
eval { require Digest::HMAC_SHA1 };
- skip join( " ", "no Digest::HMAC", ( $@ =~ /\@INC/ ? () : do { chomp(my $e = $@); "($e)" } ) ), 15 if $@;
+ if ($@)
+ {
+ my $message = join( " ", "no Digest::HMAC", ( $@ =~ /\@INC/ ? () : do { chomp(my $e = $@); "($e)" } ) );
+ die $message if $ENV{AUTHOR_TESTING};
+ skip $message, 15;
+ }
local $::DEBUG = 1;