#include "test_support.hpp" #include #include int main() { std::string error; auto missing = izo::LoadDynamicLibrary("/izo/does/not/exist.so", &error); CHECK(!missing); CHECK(!error.empty()); error.clear(); auto library = izo::LoadDynamicLibrary("libc.so.6", &error); CHECK(library); CHECK(library.Symbol("getpid", &error) != nullptr); error.clear(); CHECK(library.Symbol("izo_missing_symbol", &error) == nullptr); CHECK(!error.empty()); auto moved = std::move(library); CHECK(!library); CHECK(moved); moved.Reset(); CHECK(!moved); error.clear(); CHECK(moved.Symbol("getpid", &error) == nullptr); CHECK(!error.empty()); }