Merge 'reorganize_tests' into 'DBIx-Class-current'
[dbsrgits/DBIx-Class.git] / t / run / 30ensure_class_loaded.tl
CommitLineData
c037c03a 1use Class::Inspector;
2
3BEGIN {
4 package TestPackage::A;
5 sub some_method {}
6}
7
8sub run_tests {
9
10my $schema = shift;
11plan tests => 6;
12
13ok(Class::Inspector->loaded('TestPackage::A'),
14 'anon. package exists');
15eval {
16 $schema->ensure_class_loaded('TestPackage::A');
17};
18
19ok(!$@, 'ensure_class_loaded detected an anon. class');
20
21eval {
22 $schema->ensure_class_loaded('FakePackage::B');
23};
24
25like($@, qr/Can't locate/,
26 'ensure_class_loaded threw exception for nonexistent class');
27
28ok(!Class::Inspector->loaded('DBICTest::FakeComponent'),
29 'DBICTest::FakeComponent not loaded yet');
30
31eval {
32 $schema->ensure_class_loaded('DBICTest::FakeComponent');
33};
34
35ok(!$@, 'ensure_class_loaded detected an existing but non-loaded class');
36ok(Class::Inspector->loaded('DBICTest::FakeComponent'),
37 'DBICTest::FakeComponent now loaded');
38}
39
401;