diff --git a/include/class_loader/multi_library_class_loader.h b/include/class_loader/multi_library_class_loader.h index 17aa27e1..b7a5fe7b 100644 --- a/include/class_loader/multi_library_class_loader.h +++ b/include/class_loader/multi_library_class_loader.h @@ -73,8 +73,6 @@ class MultiLibraryClassLoader for(unsigned int c = 0; c < active_loaders.size(); c++) { ClassLoader* current = active_loaders.at(c); - if (!current->isLibraryLoaded()) - current->loadLibrary(); if(current->isClassAvailable(class_name)) return(current->createInstance(class_name)); } @@ -115,8 +113,6 @@ class MultiLibraryClassLoader for(unsigned int c = 0; c < active_loaders.size(); c++) { ClassLoader* current = active_loaders.at(c); - if (!current->isLibraryLoaded()) - current->loadLibrary(); if(current->isClassAvailable(class_name)) return(current->createUnmanagedInstance(class_name)); } diff --git a/test/utest.cpp b/test/utest.cpp index a8ec03f6..b24b172a 100644 --- a/test/utest.cpp +++ b/test/utest.cpp @@ -2,7 +2,6 @@ #include #include #include -#include #include "base.h" #include @@ -298,69 +297,8 @@ TEST(ClassLoaderTest, loadRefCountingLazy) FAIL() << "Did not throw exception as expected.\n"; } - /*****************************************************************************/ -void testMultiClassLoader(bool lazy) -{ - try - { - class_loader::MultiLibraryClassLoader loader(lazy); - loader.loadLibrary(LIBRARY_1); - loader.loadLibrary(LIBRARY_2); - for (int i=0; i < 2; ++i) { - loader.createInstance("Cat")->saySomething(); - loader.createInstance("Dog")->saySomething(); - loader.createInstance("Robot")->saySomething(); - } - } - catch(class_loader::ClassLoaderException& e) - { - FAIL() << "ClassLoaderException: " << e.what() << "\n"; - } - - SUCCEED(); -} - -TEST(MultiClassLoaderTest, lazyLoad) -{ - testMultiClassLoader(true); -} -TEST(MultiClassLoaderTest, lazyLoadSecondTime) -{ - testMultiClassLoader(true); -} -TEST(MultiClassLoaderTest, nonLazyLoad) -{ - testMultiClassLoader(false); -} -TEST(MultiClassLoaderTest, noWarningOnLazyLoad) -{ - try - { - boost::shared_ptr cat, dog, rob; - { - class_loader::MultiLibraryClassLoader loader(true); - loader.loadLibrary(LIBRARY_1); - loader.loadLibrary(LIBRARY_2); - - cat = loader.createInstance("Cat"); - dog = loader.createInstance("Dog"); - rob = loader.createInstance("Robot"); - } - cat->saySomething(); - dog->saySomething(); - rob->saySomething(); - } - catch(class_loader::ClassLoaderException& e) - { - FAIL() << "ClassLoaderException: " << e.what() << "\n"; - } - - SUCCEED(); -} - -/*****************************************************************************/ // Run all the tests that were declared with TEST() int main(int argc, char **argv){