#include "test_support.hpp" #include #include int main() { std::string error; auto missing = izo::load_dynamic_library("/izo/does/not/exist.so", &error); CHECK(!missing); CHECK(!error.empty()); error.clear(); auto library = izo::load_dynamic_library("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()); }