Skip to content

Commit 7798d64

Browse files
committed
Added integration tests to GHA
Signed-off-by: Stefan Marr <[email protected]>
1 parent 4c6f0ad commit 7798d64

File tree

2 files changed

+146
-0
lines changed

2 files changed

+146
-0
lines changed

.github/workflows/ci.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,16 @@ jobs:
1515
- run: ./som.sh -cp core-lib/Smalltalk core-lib/TestSuite/TestHarness.som
1616
- run: ./som.sh -cp core-lib/Smalltalk:core-lib/TestSuite:core-lib/SomSom/src/compiler:core-lib/SomSom/src/vm:core-lib/SomSom/src/vmobjects:core-lib/SomSom/src/interpreter:core-lib/SomSom/src/primitives core-lib/SomSom/tests/SomSomTests.som
1717

18+
- name: Integration Tests
19+
run: |
20+
python -m pip install --upgrade pip
21+
pip install pytest
22+
export VM=./som.sh
23+
export CLASSPATH=Smalltalk
24+
export TEST_EXPECTATIONS=./integration-tests.yml
25+
export AWFY=Examples/AreWeFastYet/Core
26+
pytest core-lib/IntegrationTests
27+
1828
- run: npm ci
1929
- run: npm test
2030
- run: npm run lint

integration-tests.yml

Lines changed: 136 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,136 @@
1+
known_failures: []
2+
3+
4+
failing_as_unspecified:
5+
- Tests/arbint_double_div_err.som
6+
- Tests/arbint_double_div_zero_err.som
7+
- Tests/arbint_modulus_err.som
8+
- Tests/array_at_idx0_err.som
9+
- Tests/array_at_idx2_err.som
10+
- Tests/array_at_idx_err.som
11+
- Tests/array_at_negative_idx_err.som
12+
- Tests/array_at_put_idx0_err.som
13+
- Tests/array_at_put_idx2_err.som
14+
- Tests/call2.som
15+
16+
# I think this one is about E vs e, but maybe also double rendering and e+59 or e59
17+
- Tests/double2.som
18+
- Tests/double_double_div.som
19+
- Tests/int_double_div.som
20+
21+
# printing is not specified
22+
# 18446744073709552000
23+
# or 1.8446744073709552e19 are both valid options
24+
- Tests/integer_asdouble.som
25+
26+
27+
# I think IEEE allows for infinities here, and we probably want that
28+
- Tests/double3.som
29+
- Tests/double4.som
30+
- Tests/double5.som
31+
- Tests/double6.som
32+
- Tests/double7.som
33+
- Tests/double8.som
34+
- Tests/double9.som
35+
- Tests/double11.som
36+
- Tests/double13.som
37+
38+
# Java seems to do some rounding in the transition, but it's also requiring bigints
39+
- Tests/double_asinteger.som
40+
41+
42+
- Tests/double_double_div_err.som
43+
- Tests/double_double_div_zero_err1.som
44+
- Tests/double_double_div_zero_err2.som
45+
- Tests/double_double_div_zero_err3.som
46+
- Tests/double_double_div_zero_err4.som
47+
# - Tests/double_modulus.som
48+
- Tests/double_modulus_err.som
49+
50+
- Tests/exit_double.som
51+
- Tests/exit_int_too_big.som
52+
- Tests/exit_string.som
53+
54+
- Tests/fromstring_double_err.som
55+
- Tests/fromstring_err.som
56+
57+
- Tests/hashcode2.som
58+
59+
- Tests/inst_var_at_bad_idx.som
60+
- Tests/inst_var_at_put_bad_idx.som
61+
62+
- Tests/instance_fields_overlap/test.som
63+
- Tests/instance_fields_overlap2.som
64+
65+
- Tests/int5.som
66+
- Tests/int8.som
67+
- Tests/int9.som
68+
69+
- Tests/int10.som
70+
- Tests/int11.som
71+
- Tests/int12.som
72+
- Tests/int13.som
73+
- Tests/int14.som
74+
- Tests/int15.som
75+
- Tests/int16.som
76+
- Tests/int17.som
77+
78+
# too large shifts would take too much memory to support
79+
# need to specify this some how
80+
- Tests/int20.som
81+
- Tests/int21.som
82+
- Tests/int22.som
83+
- Tests/int23.som
84+
- Tests/int25.som
85+
- Tests/int27.som
86+
- Tests/int28.som
87+
- Tests/int31.som
88+
89+
- Tests/int_double_div_err.som
90+
- Tests/int_double_div_zero_err.som
91+
- Tests/int_modulus.som
92+
- Tests/int_modulus_err.som
93+
94+
- Tests/load_string.som
95+
96+
- Tests/mutate_methods.som
97+
- Tests/mutate_superclass_method/test.som
98+
99+
- Tests/nested_backtrace1.som
100+
- Tests/nested_backtrace2.som
101+
102+
- Tests/obj2.som
103+
104+
- Tests/perform_string.som
105+
- Tests/perform_witharguments_wrong.som
106+
107+
- Tests/remainder_zero.som
108+
- Tests/round.som
109+
110+
- Tests/shift_right.som
111+
- Tests/shift_right_too_big.som
112+
- Tests/shift_right_type_err.som
113+
114+
- Tests/str_escape_unknown.som
115+
116+
- Tests/system2.som
117+
- Tests/system_global_lookup_string.som
118+
- Tests/system_global_put_string.som
119+
120+
- Tests/test_literals_limit_1.som
121+
- Tests/test_literals_limit_2.som
122+
- Tests/unknown_field_write.som
123+
124+
# This should be specified so that the "set" of fields cannot be changed reflectively
125+
# they obtained array can be changed, but it is expected to have no effect.
126+
- Tests/mutate_fields.som
127+
128+
129+
unsupported:
130+
# JS doesn't have a sqrt implementation for BigIntegers
131+
- Tests/int26.som
132+
- Tests/int29.som
133+
134+
135+
do_not_run:
136+
- Tests/case_insensitive.som

0 commit comments

Comments
 (0)