Finish renaming these test modules
[gitmo/Mouse.git] / t / 020-load-class.t
index dd27587..705c0db 100644 (file)
@@ -1,29 +1,35 @@
 #!/usr/bin/env perl
 use strict;
 use warnings;
-use Test::More tests => 5;
+use Test::More tests => 11;
 use Test::Exception;
 
 require Mouse;
 use lib 't/lib';
 
-ok(Mouse::load_class('Anti::Mouse'));
-can_ok('Anti::Mouse' => 'antimouse');
+ok(!Mouse::is_class_loaded(), "is_class_loaded with no argument returns false");
+ok(!Mouse::is_class_loaded(''), "can't load the empty class");
+ok(!Mouse::is_class_loaded(\"foo"), "can't load a class name reference??");
+
+throws_ok { Mouse::load_class()       } qr/Invalid class name \(undef\)/;
+throws_ok { Mouse::load_class('')     } qr/Invalid class name \(\)/;
+throws_ok { Mouse::load_class(\"foo") } qr/Invalid class name \(SCALAR\(\w+\)\)/;
+
+ok(Mouse::load_class('Unsweetened'));
+can_ok('Unsweetened' => 'unsweetened');
 
 do {
     package Class;
+    sub yay {}
 };
 
 ok(Mouse::load_class('Class'), "this should not die!");
 
-TODO: {
-    local $TODO = "can't have the previous test and this test pass.. yet";
-    throws_ok {
-        Mouse::load_class('FakeClassOhNo');
-    } qr/Can't locate /;
-};
+throws_ok {
+    Mouse::load_class('FakeClassOhNo');
+} qr/Can't locate /;
 
 throws_ok {
-    Mouse::load_class('Anti::MouseError');
+    Mouse::load_class('SyntaxError');
 } qr/Missing right curly/;