@@ -2592,6 +2592,7 @@ def test_bullet(self):
2592
2592
self.do_runf('test_bullet_hello_world.cpp', 'BULLET RUNNING', emcc_args=['--use-port=bullet'])
2593
2593
2594
2594
@requires_network
2595
+ @is_slow_test
2595
2596
def test_vorbis(self):
2596
2597
# This will also test if ogg compiles, because vorbis depends on ogg
2597
2598
self.do_runf('third_party/vorbis_test.c', 'ALL OK', emcc_args=['-sUSE_VORBIS'])
@@ -3123,6 +3124,7 @@ def compile_with_dwarf(args, output):
3123
3124
compile_with_dwarf([], 'a.js')
3124
3125
self.verify_dwarf_exists('a.wasm')
3125
3126
3127
+ @is_slow_test
3126
3128
def test_dwarf_sourcemap_names(self):
3127
3129
source_file = 'hello_world.c'
3128
3130
js_file = 'a.out.js'
@@ -3507,6 +3509,7 @@ def test_embind_tsgen_end_to_end(self, opts, tsc_opts):
3507
3509
self.assertFileContents(test_file('other/embind_tsgen_module.d.ts'), actual)
3508
3510
self.assertContained('main ran\nts ran', self.run_js('main.js'))
3509
3511
3512
+ @is_slow_test
3510
3513
def test_embind_tsgen_ignore(self):
3511
3514
create_file('fail.js', 'assert(false);')
3512
3515
self.emcc_args += ['-lembind', '--emit-tsd', 'embind_tsgen.d.ts']
@@ -5347,6 +5350,7 @@ def test_exit_runtime(self, do_exit, opts):
5347
5350
# assert ('atexit(' in src) == exit, 'atexit should not appear in src when EXIT_RUNTIME=0'
5348
5351
# assert ('_ZN5WasteILi2EED' in src) == exit, 'destructors should not appear if no exit:\n' + src
5349
5352
5353
+ @is_slow_test
5350
5354
def test_no_exit_runtime_warnings_flush(self):
5351
5355
# check we warn if there is unflushed info
5352
5356
create_file('code.c', r'''
@@ -7487,6 +7491,7 @@ def test_libcxx_minimal(self):
7487
7491
# TODO(sbc): make dynamic linking work with wasm2js
7488
7492
# 'wasm2js': ('0',)
7489
7493
})
7494
+ @is_slow_test
7490
7495
def test_minimal_dynamic(self, wasm):
7491
7496
library_file = 'library.wasm' if wasm else 'library.js'
7492
7497
@@ -8224,6 +8229,7 @@ def test_dlmalloc_modes(self):
8224
8229
out = self.run_js('a.out.js', assert_returncode=NON_ZERO)
8225
8230
self.assertContained('native code called abort()', out)
8226
8231
8232
+ @is_slow_test
8227
8233
def test_mallocs(self):
8228
8234
def run(opts):
8229
8235
print(opts)
@@ -11548,6 +11554,8 @@ def test_linking_send(self):
11548
11554
11549
11555
# This test verifies that function names embedded into the build with --js-library (JS functions exported to wasm)
11550
11556
# are minified when -O3 is used
11557
+ @is_slow_test
11558
+ @also_with_wasm2js
11551
11559
def test_js_function_names_are_minified(self):
11552
11560
def check_size(f, expected_size):
11553
11561
if not os.path.isfile(f):
@@ -11558,19 +11566,17 @@ def check_size(f, expected_size):
11558
11566
self.assertLess(obtained_size, expected_size)
11559
11567
11560
11568
self.run_process([PYTHON, test_file('gen_many_js_functions.py'), 'library_long.js', 'main_long.c'])
11561
- for wasm in ([], ['-sWASM=0']):
11562
- # Currently we rely on Closure for full minification of every appearance of JS function names.
11563
- # TODO: Add minification also for non-Closure users and add [] to this list to test minification without Closure.
11564
- for closure in [['--closure=1']]:
11565
- args = [EMCC, '-O3', '--js-library', 'library_long.js', 'main_long.c', '-o', 'a.html'] + wasm + closure
11566
- print(' '.join(args))
11567
- self.run_process(args)
11569
+ # Currently we rely on Closure for full minification of every appearance of JS function names.
11570
+ # TODO: Add minification also for non-Closure users and add [] to this list to test minification without Closure.
11571
+ for closure in [['--closure=1', '-Wno-closure']]:
11572
+ args = [EMCC, '-O3', '--js-library', 'library_long.js', 'main_long.c'] + self.get_emcc_args() + closure
11573
+ self.run_process(args)
11568
11574
11569
- ret = self.run_js('a.js')
11570
- self.assertTextDataIdentical('Sum of numbers from 1 to 1000: 500500 (expected 500500)', ret.strip())
11575
+ ret = self.run_js('a.out .js')
11576
+ self.assertTextDataIdentical('Sum of numbers from 1 to 1000: 500500 (expected 500500)', ret.strip())
11571
11577
11572
- check_size('a.js', 150000)
11573
- check_size('a.wasm', 80000)
11578
+ check_size('a.out .js', 150000)
11579
+ check_size('a.out .wasm', 80000)
11574
11580
11575
11581
# Checks that C++ exceptions managing invoke_*() wrappers will not be generated if exceptions are disabled
11576
11582
def test_no_invoke_functions_are_generated_if_exception_catching_is_disabled(self):
@@ -12894,6 +12900,7 @@ def test_signature_mismatch(self):
12894
12900
self.assertContained('function signature mismatch: foo', stderr)
12895
12901
12896
12902
# Verifies that warning messages that Closure outputs are recorded to console
12903
+ @is_slow_test
12897
12904
def test_closure_warnings(self):
12898
12905
# Default should be no warnings
12899
12906
proc = self.run_process([EMCC, test_file('test_closure_warning.c'), '-O3', '--closure=1'], stderr=PIPE)
@@ -14586,6 +14593,7 @@ def test_multiple_g_flags(self):
14586
14593
self.assertNotIn(b'.debug', read_binary('hello_world.o'))
14587
14594
14588
14595
@requires_v8
14596
+ @is_slow_test
14589
14597
def test_jspi_code_size(self):
14590
14598
# use iostream code here to purposefully get a fairly large wasm file, so
14591
14599
# that our size comparisons later are meaningful
0 commit comments