Files
sex/tools/sextest
alex-eg fe72a109bf read a var's type as a type, not as a call
`walk-parts' walked the whole `var' form, and a `fn' type's parameter
list is shaped like a call: `(fn ((c int)) int)' came out as
`int (*fp)(c int)'. A closure literal had no type, so calling one in
place missed the rewrite; sextest fed sexc symbols Sex cannot read.
2026-09-30 23:51:55 +03:00
..
2026-05-21 20:15:03 +03:00
2026-09-09 12:45:12 +03:00
2026-05-21 20:15:03 +03:00

Sextest

A tool for testing Sex compiler by using test programs. The tools compiles test programs, then runs with provided input, checking the output and return code.

Test format

The test program is just a regular Sex program, which may contain additional toplevel forms, to define compilation parameters, input to the program, and expected output and return code. Default value for compilation, input and output is an empty strings. For the return code it is 0.

Example

some-test.sex:

(compilation "-- -O2")
(input "")
(output "Hello world!")
(return 123)

(include stdio.h)

(pub fn main () int
  (puts "Hello World!")
  (return 123))