aboutsummaryrefslogtreecommitdiff
path: root/node_modules/@webassemblyjs/helper-module-context/test/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/@webassemblyjs/helper-module-context/test/index.js')
-rw-r--r--node_modules/@webassemblyjs/helper-module-context/test/index.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/node_modules/@webassemblyjs/helper-module-context/test/index.js b/node_modules/@webassemblyjs/helper-module-context/test/index.js
new file mode 100644
index 00000000..06005d60
--- /dev/null
+++ b/node_modules/@webassemblyjs/helper-module-context/test/index.js
@@ -0,0 +1,32 @@
+const { assert } = require("chai");
+const { parse } = require("@webassemblyjs/wast-parser");
+
+const { moduleContextFromModuleAST } = require("../lib");
+
+const contextFromWast = wast => moduleContextFromModuleAST(parse(wast).body[0]);
+
+describe("module context", () => {
+ describe("start segment", () => {
+ it("should return the start function offset", () => {
+ const context = contextFromWast(`
+ (module
+ (func)
+ (func)
+ (start 1)
+ )
+ `);
+
+ assert.isOk(context.getStart());
+ assert.typeOf(context.getStart(), "number");
+ assert.equal(context.getStart(), 1);
+ });
+
+ it("should return null if no start function", () => {
+ const context = contextFromWast(`
+ (module (func))
+ `);
+
+ assert.isNull(context.getStart());
+ });
+ });
+});