Path: blob/main/crates/c-api/tests/component/linker.cc
2459 views
#include <gtest/gtest.h>1#include <wasmtime.h>2#include <wasmtime/component.hh>34using namespace wasmtime::component;56TEST(Linker, allow_shadowing) {7wasmtime::Engine engine;8Linker linker(engine);9auto m = wasmtime::Module::compile(engine, "(module)").unwrap();1011linker.root().add_module("x", m).unwrap();12linker.root().add_module("x", m).err();13linker.allow_shadowing(true);14linker.root().add_module("x", m).unwrap();15}1617TEST(Linker, unknown_imports_trap) {18wasmtime::Engine engine;19Linker linker(engine);20wasmtime::Store store(engine);2122auto c = Component::compile(engine, R"(23(component24(import "a" (func))25)26)")27.unwrap();2829EXPECT_FALSE(linker.instantiate(store, c));30EXPECT_TRUE(linker.define_unknown_imports_as_traps(c));31EXPECT_TRUE(linker.instantiate(store, c));32}333435