dmd/compiler/test/dshell
2024-05-25 21:01:20 +02:00
..
extra-files Get rid of DMC workaround for the dll_cxx dshell test 2024-05-25 21:01:20 +02:00
imports Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
cpp_header_gen.d Make distinction between CC and CXX in the testsuite. (#16434) 2024-05-03 07:30:55 +08:00
defaults.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
depsprot.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
dll.d fix Issue 23545 - export int a; should generate dllexport, not dllimport (#14680) 2023-02-07 16:27:41 -08:00
dll_cxx.d Get rid of DMC workaround for the dll_cxx dshell test 2024-05-25 21:01:20 +02:00
dwarf.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
issue20444_SOURCE_DATE_EPOCH.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
issue22804.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
issue22816.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
issue22817.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
issue24111.d Fix Bugzilla issue 24111 - [ImportC] fatal error C1034: stdio.h: no include path set (#16248) 2024-03-03 12:35:04 +08:00
linker_flag_with_spaces.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
README.md Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
sameenv.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
test6952.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
test9377.d Move dmd files into compiler/ 2022-07-09 18:53:07 +02:00
test_shared.d Fix build script paths to work with new merged repository structure 2022-07-09 23:49:27 +02:00

Scripted tests

Each D file is treated like a shell scripts which executes one or multiple complex tests. The test result is indicated by the scripts exit code,

 0                the test was successful
 dshell.DISABLED  the test was skipped based on the environment
 *                the test failed

Purpose

These scripts are intended to supports tests which cannot be implemented in any other test category. For example, this test verifies that the process environment is propagated correctly to an executable run by dmd -run.

This can also be used to aggregate several such test cases into a new category (e.g. as done for DWARF debug info generation).

Remarks

Scripts should prefer the following wrappers defined in the dshell module instead of the plain Phobos functions s.t. the test runner can issue a proper log on failure.

Note that dshell tests require additional code and linking another executable, so they should be the last resort if a the test setup cannot be represented in any other test category.

Refer to test/README.md for general information and the test guidelines.