summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2020-09-02Register GDScript test tools as test commands to run via command-lineAndrii Doroshenko (Xrayez)
2020-09-02Move GDScript tests to respective folder under modulesAndrii Doroshenko (Xrayez)
2020-09-01Add GDScript disassemblerGeorge Marques
2020-09-01Fix Color test cases for RGBAAaron Franke
2020-08-31Merge pull request #40955 from Calinou/test-add-expressionRémi Verschelde
Add a test suite for Expression
2020-08-27Add a test suite for ExpressionHugo Locurcio
This also makes the first parameter of `Expression::execute()` optional from C++. Previously, it was only optional in the scripting API.
2020-08-19Add a test suite for GradientHugo Locurcio
2020-08-16Port ClassDB tests to use doctestAndrii Doroshenko (Xrayez)
Extracted the most minimal core initialization functionality from `setup()` and `setup2()` so that `ClassDB` could be tested properly (input, audio, rendering, physics etc, are excluded). Display and rendering servers/singletons are not initialized at all. Due to the fact that most subsystems are disabled, fixed various crashes in the process (in order): - `AcceptDialog` OK/cancel swap behavior (used `DisplayServer` while `register_scene_types()`); - `make_default_theme` which depends on `RenderingServer`; - `XRServer` singleton access while calling `register_modules_types()`; - hidden bug in a way joypads are cleaned up (MacOS and Linux only). Removed manual `ClassDB` init/cleanup calls from `test_validate_testing.h`. ClassDB tests: Co-authored-by: Ignacio Etcheverry <ignalfonsore@gmail.com>
2020-08-14Merge pull request #41117 from 3akev/masterRémi Verschelde
Port OrderedHashMap tests to doctest
2020-08-11Merge pull request #40940 from fire/tests-port-basisRémi Verschelde
Port Basis tests to use doctest.
2020-08-08Port OrderedHashMap tests to doctestAladdin Al-Khafaji
2020-08-02Stringify `Variant` compatible types for doctest outputAndrii Doroshenko (Xrayez)
2020-08-01Port Basis tests to use doctest.K. S. Ernest (iFire) Lee
2020-07-31Fix memory leak in test argsAndrii Doroshenko (Xrayez)
2020-07-31Merge pull request #40928 from bruvzg/fix_test_heap_use_after_freeRémi Verschelde
Fix heap use after free in the doctest "main".
2020-07-31Add a test suite for ColorHugo Locurcio
2020-07-31Fix heap use after free in the doctest "main".bruvzg
2020-07-31Port AStar tests to use doctestAndrii Doroshenko (Xrayez)
2020-07-30Hide implementation details of doctest macrosAndrii Doroshenko (Xrayez)
`test_macros.h` is created to provide various macros acting as aliases for doctest macros to work better with Godot internals and conventions. This also makes it accessible for those who'd like to start writing tests in Godot, as most vital information can be put together and documented directly in `test_macros.h` header. Developers are encouraged to include the new `tests/test_macros.h` for writing new tests over `thirdparty/doctest/doctest.h`. Added `TEST_CASE_PENDING("name")` as an alias for `TEST_CASE("name", doctest::skip())` which could be used to mark failing tests for issues yet to be fixed, so as to not affect CI testing results. Added `ERR_PRINT_OFF` and `ERR_PRINT_ON` to control error printing for testing various **expected** failure paths within Godot without polluting the test summary with error messages.
2020-07-29Cleanup obsolete tests from displaying in helpAndrii Doroshenko (Xrayez)
2020-07-28Add test suite for `Variant`Andrii Doroshenko (Xrayez)
Added a test case for `VariantWriter` and `VariantParser` overflows.
2020-07-27Make all String float conversion methods be 64-bitAaron Franke
2020-07-26Crash when debugging tests by disabling thread_local in /MT contextGordon
2020-07-26Merge pull request #40720 from Xrayez/modules-testsRémi Verschelde
Enable support for C++ modules tests
2020-07-26Enable support for C++ modules testsAndrii Doroshenko (Xrayez)
Modules-specific tests can be written under respective module folders. Each module should have "tests" folder created with the tests implemented as `doctest` headers, so they can be collected by the buildsystem and included directly in `tests/test_main.cpp` to be compiled.
2020-07-26SCons: Build tests/ and main/ in cloned environmentsRémi Verschelde
Allows switching `tests=yes`/`no` and rebuilding only tests and main, instead of the whole engine. Co-authored-by: Andrii Doroshenko (Xrayez) <xrayez@gmail.com>
2020-07-26Move `tests` to the top-level directoryAndrii Doroshenko (Xrayez)