27 lines
728 B
JavaScript
Raw Normal View History

2017-04-02 22:26:53 +02:00
#!/usr/bin/env node
var fs = require('fs');
2017-04-02 22:26:53 +02:00
const wasmImports = require( "./test.wasm.js" );
2017-04-02 22:26:53 +02:00
var filename = '{test.wasm}';
var wasm = fs.readFileSync(filename);
var testData = JSON.parse( fs.readFileSync( "testdata.json", "utf8" ) );
2017-04-02 22:26:53 +02:00
2018-03-24 17:32:48 +01:00
function callExport(instance) {
var result = {};
for (var method in testData) {
try{
result[method] = instance.exports[method]( ...testData[method] ).toString();
}catch(err){
result[method] = err.toString();
}
2018-03-24 17:32:48 +01:00
}
// save the test result
fs.writeFileSync( "testresult.json", JSON.stringify(result) );
2018-03-24 17:32:48 +01:00
}
2017-04-02 22:26:53 +02:00
WebAssembly.instantiate( wasm, wasmImports ).then(
obj => callExport(obj.instance),
2017-04-02 22:26:53 +02:00
reason => console.log(reason)
);