+
+use App::Rgit::Command;
+
+eval { App::Rgit::Command::Once->App::Rgit::Command::new(cmd => 'dongs') };
+like($@, qr!Command\s+dongs\s+should\s+be\s+executed\s+as\s+a\s+App::Rgit::Command::Each!, 'App::Rgit::Command::Once->App::Rgit::Command::new(cmd => "dongs"): croaks');
+
+{
+ no strict 'refs';
+ push @{'App::Rgit::Test::Foo::ISA'}, 'App::Rgit::Command::Once';
+}
+$res = eval { App::Rgit::Test::Foo->App::Rgit::Command::new(cmd => 'version') };
+is($@, '', 'App::Rgit::Test::Foo->App::Rgit::Command::new(cmd => "version"): does not croak');
+isa_ok($res, 'App::Rgit::Test::Foo', 'App::Rgit::Test::Foo->App::Rgit::Command::new(cmd => "version"): returns valid object');