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