aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/hello_world_exit.c9
-rw-r--r--tests/test_browser.py17
2 files changed, 26 insertions, 0 deletions
diff --git a/tests/hello_world_exit.c b/tests/hello_world_exit.c
new file mode 100644
index 00000000..febecc65
--- /dev/null
+++ b/tests/hello_world_exit.c
@@ -0,0 +1,9 @@
+#include<stdio.h>
+#include<stdlib.h>
+
+int main() {
+ printf("hello, world!\n");
+ fprintf(stderr, "hello, error stream!\n");
+ exit(100);
+}
+
diff --git a/tests/test_browser.py b/tests/test_browser.py
index d0618af8..a2d49c4f 100644
--- a/tests/test_browser.py
+++ b/tests/test_browser.py
@@ -1680,3 +1680,20 @@ keydown(100);keyup(100); // trigger the end
open(self.in_dir('data.dat'), 'w').write('data from the file ' + ('.' * 9000))
for extra_args in [[], ['--no-heap-copy']]:
self.btest(path_from_root('tests', 'mmap_file.c'), expected='1', args=['--preload-file', 'data.dat'] + extra_args)
+
+ def test_emrun_info(self):
+ result = subprocess.check_output([PYTHON, path_from_root('emrun'), '--system_info', '--browser_info'])
+ assert 'CPU' in result
+ assert 'Browser' in result
+ assert 'Traceback' not in result
+
+ result = subprocess.check_output([PYTHON, path_from_root('emrun'), '--list_browsers'])
+ assert 'Traceback' not in result
+
+ def test_emrun(self):
+ Popen([PYTHON, EMCC, path_from_root('tests', 'hello_world_exit.c'), '--post-js', path_from_root('src', 'emrun_postjs.js'), '-o', 'hello_world.html']).communicate()
+ process = subprocess.Popen([PYTHON, path_from_root('emrun'), '--timeout', '30', 'hello_world.html'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
+ (stdout, stderr) = process.communicate()
+ assert process.returncode == 100
+ assert 'hello, world!' in stdout
+ assert 'hello, error stream!' in stderr