@@ -3954,33 +3954,34 @@ def test_file_packager_standalone_modularize(self):
3954
3954
MESSAGE = 'Remember to build the main file with `-sFORCE_FILESYSTEM` so that it includes support for loading this file package'
3955
3955
3956
3956
create_file('data.txt', 'hello data')
3957
- err = self.run_process([FILE_PACKAGER, 'test.data', '--modularize', '--preload', 'data.txt', '--js-output=dataFileLoader.mjs '], stderr=PIPE).stderr
3957
+ err = self.run_process([FILE_PACKAGER, 'test.data', '--modularize', '--preload', 'data.txt', '--js-output=dataFileLoader.js', '--no-node '], stderr=PIPE).stderr
3958
3958
self.assertContained(MESSAGE, err)
3959
3959
3960
- create_file('test.cpp ', '''
3960
+ create_file('test.c ', '''
3961
3961
#include <stdio.h>
3962
- #include <emscripten/bind.h>
3963
3962
3964
- int EMSCRIPTEN_KEEPALIVE test_fun () {
3963
+ int main () {
3965
3964
FILE* f = fopen("data.txt", "r");
3966
- char buf[64];
3965
+ char buf[64] = {0} ;
3967
3966
int rtn = fread(buf, 1, 64, f);
3968
3967
buf[rtn] = '\\0';
3969
3968
fclose(f);
3970
3969
printf("%s\\n", buf);
3971
3970
return 0;
3972
3971
}
3973
3972
''')
3974
- self.run_process([EMCC, 'test.cpp ', '-sFORCE_FILESYSTEM', '-sMODULARIZE', '-sEXPORT_ES6', '-o', 'moduleFile.mjs '])
3973
+ self.run_process([EMCC, 'test.c ', '-sFORCE_FILESYSTEM', '-sMODULARIZE', '-sEXPORT_ES6', '-o', 'moduleFile.js '])
3975
3974
3976
3975
create_file('run.js', '''
3977
- import loadDataFile from 'dataFileLoader.mjs '
3978
- import {default as loadModule} from 'moduleFile.mjs '
3976
+ import loadDataFile from './ dataFileLoader.js '
3977
+ import {default as loadModule} from './ moduleFile.js '
3979
3978
3979
+ const sleep = (delay) => new Promise((resolve) => setTimeout(resolve, delay))
3980
3980
var module = loadModule();
3981
- module.then((mod) => {
3982
- loadDataFile(mod);
3983
- mod._test_fun();
3981
+ module.then(async (module) => {
3982
+ loadDataFile(module);
3983
+ await sleep(1000);
3984
+ module._test_fun();
3984
3985
});
3985
3986
''')
3986
3987
0 commit comments