tests: Properly load plugins from build directory
authorTobias Brunner <tobias@strongswan.org>
Tue, 25 Jun 2013 17:42:34 +0000 (19:42 +0200)
committerTobias Brunner <tobias@strongswan.org>
Thu, 27 Jun 2013 09:06:47 +0000 (11:06 +0200)
Calling load() incrementally does not really work as dependencies
wouldn't be resolved properly if a required feature was to be provided
by a plugin that is loaded later with a separate call to load().

src/libstrongswan/tests/test_runner.c

index c80f9fc..2cd73a3 100644 (file)
@@ -29,7 +29,6 @@ static bool load_plugins()
 {
        enumerator_t *enumerator;
        char *name, path[PATH_MAX], dir[64];
-       bool success = TRUE;
 
        enumerator = enumerator_create_token(PLUGINS, " ", "");
        while (enumerator->enumerate(enumerator, &name))
@@ -37,15 +36,11 @@ static bool load_plugins()
                snprintf(dir, sizeof(dir), "%s", name);
                translate(dir, "-", "_");
                snprintf(path, sizeof(path), "%s/%s/.libs", PLUGINDIR, dir);
-               if (!lib->plugins->load(lib->plugins, path, name))
-               {
-                       success = FALSE;
-                       break;
-               }
+               lib->plugins->add_path(lib->plugins, path);
        }
        enumerator->destroy(enumerator);
 
-       return success;
+       return lib->plugins->load(lib->plugins, NULL, PLUGINS);
 }
 
 int main()