use strict; use warnings; use Test::More; BEGIN { eval "require MooseX::StrictConstructor; use Test::Exception;"; plan skip_all => 'This test requires MooseX::StrictConstructor and Test::Exception' if $@; } { package MySingleton; use Moose; use MooseX::Singleton; use MooseX::StrictConstructor; has 'attrib' => ( is => 'rw' ); } throws_ok { MySingleton->new( bad_name => 42 ); } qr/Found unknown attribute/, 'singleton class also has a strict constructor'; done_testing;