godot/modules
George Marques 5f77f38573
Add runner for GDScript testing
This is meant for testing the GDScript implementation, not for testing
user scripts nor testing the engine using scripts.

Tests consists in a GDScript file and a .out file with the expected
output. The .out file format is: expected status (based on the enum
GDScriptTest::TestStatus) on the first line, followed by either an error
message or the resulting output. Warnings are added after the first
line, before the output (or compiler errors) if the parser pass without
any error.

The test script must have a function called `test()` which takes no
argument. Such function will be called by the test runner. The test
should not have any dependency unless it's part of the test too. Global
classes (using `class_name`) are registered before the runner starts, so
those should work if needed.

Use the command `godot --gdscript-generate-tests
godot-source/modules/gdscript/tests/scripts` to update the .out files
with the current output (make sure the output are the expected values
before committing).

The tests themselves are part of the doctest suite so those can be
executed with `godot --test`.

Co-authored-by: Andrii Doroshenko (Xrayez) <xrayez@gmail.com>
2021-04-08 09:34:59 -03:00
..
basis_universal Initialize class/struct variables with default values in modules/ 2021-02-08 10:57:18 +01:00
bmp Initialize class/struct variables with default values in modules/ 2021-02-08 10:57:18 +01:00
bullet Check for the use of an empty shape in Bullet Kinematic collisions 2021-04-06 18:40:13 +01:00
camera Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
csg Rename Array.invert() to Array.reverse() 2021-03-21 10:20:08 +00:00
cvtt Modernize atomics 2021-02-18 17:12:46 +01:00
dds Improve resource load cache 2021-02-11 15:44:28 -03:00
denoise Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
enet Fixes small typos and grammar correction 2021-03-12 19:05:16 +05:30
etc Improve resource load cache 2021-02-11 15:44:28 -03:00
fbx Merge pull request #46877 from W4RH4WK/always-dynamically-allocate-property-table 2021-04-07 11:25:38 +02:00
freetype Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
gdnative Only cleanup meta data if GDNative library is reloadable and we're about to unload it 2021-04-06 11:55:15 +10:00
gdnavigation Rename Array.invert() to Array.reverse() 2021-03-21 10:20:08 +00:00
gdscript Add runner for GDScript testing 2021-04-08 09:34:59 -03:00
glslang As GLSLang seems to be all or nothing, added our own defines 2021-03-31 21:47:25 +11:00
gltf Style: Apply clang-tidy's readability-braces-around-statements 2021-04-05 14:09:59 +02:00
gridmap Rename ButtonList enum and members to MouseButton 2021-03-23 07:13:23 -04:00
hdr Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
jpg Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
jsonrpc Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
lightmapper_rd Reorganize Project Settings 2021-02-18 11:23:34 -03:00
mbedtls Fixes small typos and grammar correction 2021-03-12 19:05:16 +05:30
meshoptimizer Scale error in mesh optimizer so it uses absolute scale. 2021-01-11 06:07:54 -08:00
minimp3 Style: Apply clang-tidy's readability-braces-around-statements 2021-04-05 14:09:59 +02:00
mobile_vr Fixes small typos and grammar correction 2021-03-12 19:05:16 +05:30
mono Mono: Fix Android build after #46900 2021-03-18 17:58:21 +01:00
ogg Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
opensimplex Rename Texture.get_data() to get_image() 2021-03-28 13:00:46 +01:00
opus Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
pvr Improve resource load cache 2021-02-11 15:44:28 -03:00
regex Initialize class/struct variables with default values in modules/ 2021-02-08 10:57:18 +01:00
squish Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
stb_vorbis Fix mono->stereo conversion for oggs (see #40630) 2021-02-15 20:42:45 -08:00
svg Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
text_server_adv Style: Apply clang-tidy's readability-braces-around-statements 2021-04-05 14:09:59 +02:00
text_server_fb [Complex Text Layouts] Provide access to glyph contour points. 2021-03-31 09:32:14 +03:00
tga Initialize class/struct variables with default values in modules/ 2021-02-08 10:57:18 +01:00
theora Merge pull request #45617 from RandomShaper/modernize_atomics 2021-02-18 19:40:31 +01:00
tinyexr Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
upnp miniupnpc: Update to version 2.2.2 2021-03-16 10:54:38 +01:00
vhacd Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
visual_script Style: Apply clang-tidy's readability-braces-around-statements 2021-04-05 14:09:59 +02:00
vorbis Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
webm Reorganize Project Settings 2021-02-18 11:23:34 -03:00
webp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
webrtc Initialize class/struct variables with default values in modules/ 2021-02-08 10:57:18 +01:00
websocket Fixes small typos and grammar correction 2021-03-12 19:05:16 +05:30
webxr Change XRPositionalTracker to a reference and better expose it to GDNative 2021-03-29 23:01:47 +11:00
xatlas_unwrap Replace malloc's with Godot's memalloc macro 2021-03-13 11:51:45 +00:00
modules_builders.py Enable support for C++ modules tests 2020-07-26 17:41:46 +03:00
register_module_types.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
SCsub [iOS] Remove plugins from modules. 2021-01-17 14:33:39 +03:00