diff options
| author | Maik Klein <maikklein@googlemail.com> | 2020-01-07 19:37:24 +0100 |
|---|---|---|
| committer | Maik Klein <maikklein@googlemail.com> | 2020-01-07 19:37:24 +0100 |
| commit | a526c8d7fd3740723b35b708eaa3c1bc7be3f928 (patch) | |
| tree | 3c6ba8f2eca3d5f80f3bc539cdd4740e5b50beeb | |
| parent | 093fb856a32c93941db9297cc452444d9c628ce4 (diff) | |
| download | rust-a526c8d7fd3740723b35b708eaa3c1bc7be3f928.tar.gz rust-a526c8d7fd3740723b35b708eaa3c1bc7be3f928.zip | |
Add tests for static variables
| -rw-r--r-- | src/test/run-make/wasm-export-all-symbols/bar.rs | 3 | ||||
| -rw-r--r-- | src/test/run-make/wasm-export-all-symbols/verify.js | 24 |
2 files changed, 20 insertions, 7 deletions
diff --git a/src/test/run-make/wasm-export-all-symbols/bar.rs b/src/test/run-make/wasm-export-all-symbols/bar.rs index c5de87e8e72..ac9c20a57e5 100644 --- a/src/test/run-make/wasm-export-all-symbols/bar.rs +++ b/src/test/run-make/wasm-export-all-symbols/bar.rs @@ -2,3 +2,6 @@ #[no_mangle] pub extern fn foo() {} + +#[no_mangle] +pub static FOO: u64 = 42; diff --git a/src/test/run-make/wasm-export-all-symbols/verify.js b/src/test/run-make/wasm-export-all-symbols/verify.js index 7b6fc7a4568..58979620613 100644 --- a/src/test/run-make/wasm-export-all-symbols/verify.js +++ b/src/test/run-make/wasm-export-all-symbols/verify.js @@ -8,21 +8,31 @@ let list = WebAssembly.Module.exports(m); console.log('exports', list); const my_exports = {}; -let nexports = 0; +let nexports_fn = 0; +let nexports_global = 0; for (const entry of list) { - if (entry.kind !== 'function') - continue; - my_exports[entry.name] = true; - nexports += 1; + if (entry.kind == 'function'){ + nexports_fn += 1; + } + if (entry.kind == 'global'){ + nexports_global += 1; + } + my_exports[entry.name] = true; } if (my_exports.foo === undefined) throw new Error("`foo` wasn't defined"); +if (my_exports.FOO === undefined) + throw new Error("`FOO` wasn't defined"); + if (my_exports.main === undefined) { - if (nexports != 1) + if (nexports_fn != 1) throw new Error("should only have one function export"); } else { - if (nexports != 2) + if (nexports_fn != 2) throw new Error("should only have two function exports"); } + +if (nexports_global != 1) + throw new Error("should only have one static export"); |
