Add web-tooling-benchmark test

Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
This commit is contained in:
HyukWoo Park 2023-12-11 11:31:00 +09:00 committed by Patrick Kim
commit b50e5fcf8c
3 changed files with 33 additions and 2 deletions

3
.gitmodules vendored
View file

@ -26,3 +26,6 @@
path = third_party/walrus
url = https://github.com/Samsung/walrus.git
ignore = untracked
[submodule "test/web-tooling-benchmark"]
path = test/web-tooling-benchmark
url = https://github.com/v8/web-tooling-benchmark

@ -0,0 +1 @@
Subproject commit 4a12828c6a1eed02a70c011bd080445dd319a05f

View file

@ -880,7 +880,7 @@ def run_escargot_debugger(engine, arch, extra_arg):
ESCARGOT_DEBUGGER_TESTER = join(PROJECT_SOURCE_DIR, 'tools', 'debugger', 'debugger_tester.sh')
print('Running Escargot-Debugger-Server-Source test:')
fails = 0
proc = Popen(['chmod', '+x', ESCARGOT_DEBUGGER_TESTER],stdout=PIPE)
proc = Popen(['chmod', '+x', ESCARGOT_DEBUGGER_TESTER], stdout=PIPE)
for files in os.listdir(ESCARGOT_DEBUGGER_TEST_DIR):
if files.endswith(".cmd"):
test_case, _ = os.path.splitext(files)
@ -902,7 +902,7 @@ def run_escargot_debugger2(engine, arch, extra_arg):
ESCARGOT_DEBUGGER_TESTER = join(PROJECT_SOURCE_DIR, 'tools', 'debugger', 'debugger_tester.sh')
print('Running Escargot-Debugger-Client-Source test:')
fails = 0
proc = Popen(['chmod', '+x', ESCARGOT_DEBUGGER_TESTER],stdout=PIPE)
proc = Popen(['chmod', '+x', ESCARGOT_DEBUGGER_TESTER], stdout=PIPE)
for files in os.listdir(ESCARGOT_DEBUGGER_TEST_DIR):
if files.endswith(".cmd"):
test_case, _ = os.path.splitext(files)
@ -917,6 +917,33 @@ def run_escargot_debugger2(engine, arch, extra_arg):
if fails > 0:
raise Exception('Escargot-Debugger-Client-Source tests failed')
@runner('web-tooling-benchmark', default=False)
def run_web_tooling_benchmark(engine, arch, extra_arg):
WEB_TOOLING_DIR = join(PROJECT_SOURCE_DIR, 'test', 'web-tooling-benchmark')
WEB_TOOLING_SRC_DIR = join(WEB_TOOLING_DIR, 'src')
suite_file = join(WEB_TOOLING_SRC_DIR, 'suite.js')
with open(suite_file, "r") as f:
lines = f.readlines()
with open(suite_file, "w") as f:
for line in lines:
# minimize sample count to 1
f.write(re.sub(r'minSamples: 20', 'minSamples: 1', line))
flag_file = join(WEB_TOOLING_SRC_DIR, 'cli-flags-helper.js')
with open(flag_file, "r") as f:
lines = f.readlines()
with open(flag_file, "w") as f:
for line in lines:
# exclude long running tests
if "babel" not in line and "babylon" not in line and "chai" not in line:
f.write(line)
proc = Popen(['npx', 'npm@6', 'install'], cwd=WEB_TOOLING_DIR, stdout=PIPE)
proc.wait()
run([engine, 'dist/cli.js'], cwd=WEB_TOOLING_DIR)
@runner('dump-all', default=False)
def run_dump_all(engine, arch, extra_arg):
for test in RUNNERS: