fix interop and indexing oversights
This commit is contained in:
@@ -2033,6 +2033,35 @@ sentinel_pointer_views_compile_and_run :: proc(t: ^testing.T) {
|
||||
testing.expect_value(t, state.exit_code, 303)
|
||||
}
|
||||
|
||||
@(test)
|
||||
milestone_24_regressions_compile_and_run :: proc(t: ^testing.T) {
|
||||
output := "/tmp/brolang-test-milestone-24"
|
||||
defer _ = os.remove(output)
|
||||
status := compiler_core.compile_package("examples/programs/milestone_24", output)
|
||||
testing.expect_value(t, status, 0)
|
||||
state := run_executable(output)
|
||||
testing.expect_value(t, state.exit_code, 0)
|
||||
}
|
||||
|
||||
@(test)
|
||||
milestone_24_rejects_invalid_forms :: proc(t: ^testing.T) {
|
||||
Case :: struct {
|
||||
directory: string,
|
||||
output: string,
|
||||
}
|
||||
cases := [?]Case{
|
||||
{"examples/programs/index_signed_error", "/tmp/brolang-test-index-signed-error"},
|
||||
{"examples/programs/index_int_constraint_error", "/tmp/brolang-test-index-int-constraint-error"},
|
||||
{"examples/programs/scalar_cast_error", "/tmp/brolang-test-scalar-cast-error"},
|
||||
{"examples/programs/array_const_size_error", "/tmp/brolang-test-array-const-size-error"},
|
||||
}
|
||||
for test_case in cases {
|
||||
status := compiler_core.compile_package(test_case.directory, test_case.output)
|
||||
testing.expect_value(t, status, 1)
|
||||
_ = os.remove(test_case.output)
|
||||
}
|
||||
}
|
||||
|
||||
@(test)
|
||||
control_flow_compiles_and_runs :: proc(t: ^testing.T) {
|
||||
output := "/tmp/brolang-test-control-flow"
|
||||
|
||||
Reference in New Issue
Block a user