-
-
Notifications
You must be signed in to change notification settings - Fork 21.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CI] Run unit tests on desktop release templates #93780
[CI] Run unit tests on desktop release templates #93780
Conversation
@@ -90,6 +92,7 @@ TEST_CASE("[HTTPClient] verify_headers") { | |||
ERR_PRINT_ON; | |||
} | |||
|
|||
#if defined(MODULE_MBEDTLS_ENABLED) || defined(WEB_ENABLED) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't expect tests to be run on web (I don't even know how to do that) but the dedicated test is because web has its own http client, so just made this change for completeness
#include "tests/servers/test_navigation_server_2d.h" | ||
#include "tests/servers/test_navigation_server_3d.h" | ||
#endif // MODULE_NAVIGATION_ENABLED |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some of the nav tests could be run without the module theoretically to confirm default values, and that could be a future improvement to put some of the test code in those files in their own #ifdef MODULE_NAVIGATION_ENABLED
blocks to split it off, but kept it simple here, I think we can trust that the basic default stuff of the navigation "works" when navigation is disabled
8a4ce30
to
b2fcec9
Compare
I would suggest moving it to its own PR, so the second commit doesn't end up having to undo the workarounds adding in the first. |
Will do! |
b2fcec9
to
60c3d2f
Compare
Discovered a few tests have been missed and aren't run, will make a PR adding them on top of this Edit: seems to just be one so will add it to this Edit 2: Fixed |
The output on the windows release isn't printing correctly so will try and fix that and see what might be wrong Edit: Might be fixed by using the Edit 2: Works now, prints correctly, only added for the release version as the editor is built with |
4744372
to
fbde1c2
Compare
fbde1c2
to
7f8b231
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work! Even though this ideally should be split in 2 PRs, I think it's fine like that.
7f8b231
to
4ae990a
Compare
I think having it as a single PR reduces the risk of new issues arising between the base fixes and the enabling of the CI making that PR still include fixes, and makes it easier to verify the tests There are already a few PRs open that will fail with this being merged, so they'd have to be fixed by the second PR if they happen to be merged at the wrong time But can split if desired, but I think it makes more sense with one PR |
4ae990a
to
babb4c3
Compare
I'd suggest to at least split in two commits which can stay in this PR. First a commit to do fixes in engine code, then enabling new CI tests. |
Will do! |
babb4c3
to
e698cdd
Compare
e698cdd
to
a2d16c0
Compare
Thanks! |
Thank you! |
The resulting artifacts are a bit larger, but I'd argue it's worth the cost to help identifying various issues in release templates and tests, I'd really prefer having a debug template build as well to run unit tests on but I think that's a bit excessive
The fixes for the minimal UI build are largely band-aids, I've not attempted to fix or really test the viability of the
disable_advanced_gui
mode beyond making it run correctly in tests, though I might try work some on that later, but it's outside of what my general use cases personally areThe second commit shouldn't be controversial but kept it separate just in case, both of them entirely depend onPopupMenu
so it doesn't really make sense to have them exposed in this caseI haven't tested other combinations of build options to identify possible edge cases, but this makes the minimal release (and debug) templates test fully
Can reduce the scope and just run/compile tests on the Linux builds, if desired, haven't run into any platform specific issues in the tests when running this, but I think it's worth the few megabytes to catch any weird platform specific issues that might crop up