Skip to content

Commit 18e293d

Browse files
committed
Add wasi to ctest
1 parent 9923319 commit 18e293d

6 files changed

Lines changed: 100 additions & 0 deletions

File tree

test/smoketests/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@
44

55
add_subdirectory(benchmarks)
66
add_subdirectory(spectests)
7+
if(FIZZY_WASI)
8+
add_subdirectory(wasi)
9+
endif()
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
# Fizzy: A fast WebAssembly interpreter
2+
# Copyright 2020 The Fizzy Authors.
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
add_test(
6+
NAME fizzy/smoketests/wasi/cli-missing-arg
7+
COMMAND fizzy-wasi
8+
)
9+
set_tests_properties(
10+
fizzy/smoketests/wasi/cli-missing-arg
11+
PROPERTIES
12+
PASS_REGULAR_EXPRESSION "Missing executable argument"
13+
)
14+
15+
add_test(
16+
NAME fizzy/smoketests/wasi/cli-invalid-file
17+
COMMAND fizzy-wasi ${CMAKE_CURRENT_LIST_DIR}
18+
)
19+
set_tests_properties(
20+
fizzy/smoketests/wasi/cli-invalid-file
21+
PROPERTIES
22+
PASS_REGULAR_EXPRESSION "File does not exists or is irregular:"
23+
)
24+
25+
add_test(
26+
NAME fizzy/smoketests/wasi/cli-missing-file
27+
COMMAND fizzy-wasi ${CMAKE_CURRENT_LIST_DIR}/helloworld.nonexistent.wasm
28+
)
29+
set_tests_properties(
30+
fizzy/smoketests/wasi/cli-missing-file
31+
PROPERTIES
32+
PASS_REGULAR_EXPRESSION "File does not exists or is irregular:"
33+
)
34+
35+
add_test(
36+
NAME fizzy/smoketests/wasi/helloworld
37+
COMMAND fizzy-wasi ${CMAKE_CURRENT_LIST_DIR}/helloworld.wasm
38+
)
39+
set_tests_properties(
40+
fizzy/smoketests/wasi/helloworld
41+
PROPERTIES
42+
PASS_REGULAR_EXPRESSION "hello world"
43+
)
44+
45+
add_test(
46+
NAME fizzy/smoketests/wasi/missing-start
47+
COMMAND fizzy-wasi ${CMAKE_CURRENT_LIST_DIR}/missingstart.wasm
48+
)
49+
set_tests_properties(
50+
fizzy/smoketests/wasi/missing-start
51+
PROPERTIES
52+
PASS_REGULAR_EXPRESSION "File is not WASI compatible \\(_start not found\\)"
53+
)
54+
55+
add_test(
56+
NAME fizzy/smoketests/wasi/invalid-start
57+
COMMAND fizzy-wasi ${CMAKE_CURRENT_LIST_DIR}/invalidstart.wasm
58+
)
59+
set_tests_properties(
60+
fizzy/smoketests/wasi/invalid-start
61+
PROPERTIES
62+
PASS_REGULAR_EXPRESSION "File is not WASI compatible \\(_start has invalid signature\\)"
63+
)
64+
65+
add_test(
66+
NAME fizzy/smoketests/wasi/missing-memory
67+
COMMAND fizzy-wasi ${CMAKE_CURRENT_LIST_DIR}/missingmemory.wasm
68+
)
69+
set_tests_properties(
70+
fizzy/smoketests/wasi/missing-memory
71+
PROPERTIES
72+
PASS_REGULAR_EXPRESSION "File is not WASI compatible \\(no memory exported\\)"
73+
)
74+
75+
add_test(
76+
NAME fizzy/smoketests/wasi/trap
77+
COMMAND fizzy-wasi ${CMAKE_CURRENT_LIST_DIR}/trap.wasm
78+
)
79+
set_tests_properties(
80+
fizzy/smoketests/wasi/trap
81+
PROPERTIES
82+
PASS_REGULAR_EXPRESSION "Execution aborted with WebAssembly trap"
83+
)
84+
85+
# Dump coverage data to distinct files (otherwise file will be overwritten).
86+
set_tests_properties(
87+
fizzy/smoketests/wasi/cli-missing-arg
88+
fizzy/smoketests/wasi/cli-missing-file
89+
fizzy/smoketests/wasi/cli-invalid-file
90+
fizzy/smoketests/wasi/helloworld
91+
fizzy/smoketests/wasi/missing-start
92+
fizzy/smoketests/wasi/invalid-start
93+
fizzy/smoketests/wasi/missing-memory
94+
fizzy/smoketests/wasi/trap
95+
PROPERTIES
96+
ENVIRONMENT LLVM_PROFILE_FILE=${CMAKE_BINARY_DIR}/wasi-%p.profraw
97+
)
140 Bytes
Binary file not shown.
131 Bytes
Binary file not shown.
139 Bytes
Binary file not shown.

test/smoketests/wasi/trap.wasm

141 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)