1 #include <wasmtime/types/extern.hh> 2 3 #include <gtest/gtest.h> 4 #include <wasmtime.hh> 5 6 using namespace wasmtime; 7 TEST(ExternType,Smoke)8TEST(ExternType, Smoke) { 9 Engine engine; 10 11 Module module = 12 Module::compile(engine, "(module" 13 "(import \"a\" \"b\" (func))" 14 "(global (export \"x\") i32 (i32.const 0))" 15 ")") 16 .unwrap(); 17 18 auto imports = module.imports(); 19 EXPECT_EQ(imports.size(), 1); 20 auto i = *imports.begin(); 21 auto import_ty = std::get<FuncType::Ref>(ExternType::from_import(i)); 22 EXPECT_EQ(import_ty.params().size(), 0); 23 EXPECT_EQ(import_ty.results().size(), 0); 24 25 auto exports = module.exports(); 26 EXPECT_EQ(exports.size(), 1); 27 auto e = *exports.begin(); 28 auto export_ty = std::get<GlobalType::Ref>(ExternType::from_export(e)); 29 EXPECT_EQ(export_ty.content().kind(), ValKind::I32); 30 EXPECT_FALSE(export_ty.is_mutable()); 31 } 32