added a tls for an ensure handler callback to let the reporting log of ensures to be overridden
the following macros are supported in lowlevel tests
REQUIRE_ENSURE
CHECK_ENSURE
REQUIRE_CHECK
#rb devin.doucette
#preflight 634827c457048bdb82b43ffe
[CL 22505260 by joe pribele in ue5-main branch]
#fyi chris.constantinescu
Original CL Desc
-----------------------------------------------------------------
(LLT) Set cached data directories via FPlatformFile::InitializeAfterProjectFilePath -> fixes code path cycle for Program type applications where no project path is defined.
#jira UE-163672
#rb Josh.Adams
#preflight 6321e55e506f1a33e0bf2576
Reverting as it causes UE-165118 (Insights log not being gathered on some platforms). The problem was that some systems rely on the cached paths being available very early during the launch sequence. Delaying the initialization of these paths leads to non-existent paths being used and traces not being written.
#preflight 633355a4d747fe52c807dfbf
#fyi chris.constantinescu
#jira UE-165118
#rnx
[CL 22212743 by wojciech krywult in ue5-main branch]
All platforms preflight 62f67851b66d5d9313f240b6
#rb Devin.Doucette
#preflight 62f67866bd746abb99c0be54
[CL 21362093 by chris constantinescu in ue5-main branch]
AssertionMacrosTest is printing out failed asserts using LocalPrint which is undesirable - implemented GBlockLocalOutput as a way to supress LocalPrint output.
Other fixes included:
- ability to select a low level test build based on any configuration, not just Development: useful for Debug builds
- New "printoutput" LLT Gauntlet parameter used for certain platforms to control output redirect to stdout
#rb David.Harvey
#preflight 62f405a05a6f2fec99b64f21
[CL 21334255 by chris constantinescu in ue5-main branch]
Based on existing Catch2 macros and reusing FDebug number of ensures counter.
#rb Scott.Lindeneau
#preflight skip
[CL 21115661 by chris constantinescu in ue5-main branch]
Motivation: CoreUObject, taskgraph and threads are global constructs and need to be initialized as such and are expensive to setup/teardown before/after multiple single tests.
Introduced --global-setup and --no-global-setup to control execution of global test setup.
Unit tests that rely heavily on mocking and are designed to run without any global context should use --no-global-setup
Other: Removed CoreTestFixture and applied minor fixes wherever things didn't make sense.
One particular CoreUObject test was converted but had always failed to run on non-desktop platforms. It needs to be addressed ASAP.
#preflight 625873c7e304a95465fc148e
#rb Devin.Doucette, Zousar.Shaker
[CL 19769262 by chris constantinescu in ue5-main branch]
Correcting tests commited in CL 19498448 that were converted and tagged [Smoke] but weren't marked with EAUtomationTestFlags::SmokeFilter in the original source.
EditorBulkDataTests was left unconverted, moved back to original Private/Tests/Serialization folder
ObjectPtrTest -> CoreUObject::TObjectPtr::Soft Object Path fails at line 197 on non-desktop platforms but it didn't failed before the conversion.
#preflight 624eee0a2c01f9c6da9446e0
#rb Devin.Doucette
[CL 19668909 by chris constantinescu in ue5-main branch]
Motivation: [.] only hides a test and it can still be executed using ~[SomeOtherTag]; It's very easy to fall into the trap of executing an infinite loop test that is decorated with the [.] tag
#rb Andriy.Tylychko, Michael.Balzer
#preflight 6245fb64f4217035fa8f38ec
[CL 19576763 by chris constantinescu in ue5-main branch]
Not all were converted because they were designed for packaged applications whereas low level tests are designed to run as "native" non-packaged applications.
- reporting support for non-desktop platforms, for the moment Catch2 report type "console" is used that is sent to a .out file
- most number of tests possible running multi platform, slower tests excluded on incremental builds
- slow tests are moved to run on the monolithic build
- Catch2 report failure event listener such that Horde detects them as build errors. Must add new Horde matcher for Catch2 failures
#rb Mark.Lintott
#preflight 623c8de389625f0612dabd64
[CL 19498448 by chris constantinescu in ue5-main branch]
- Adds method to specify Global Initalization of LowLevelTest Modules
- Fixes math header issue in LowLevelTestModule on Mac
#preflight 62335d5a1302f69e9a483a59
#rb @chris.constantinescu
[CL 19423270 by stephen ma in ue5-main branch]