Commit Graph

18 Commits

Author SHA1 Message Date
chris constantinescu
779b5425a3 Skip ReferenceCollectorTest
#rnx
#preflight skip

[CL 24857629 by chris constantinescu in ue5-main branch]
2023-03-30 14:17:38 -04:00
joe pribele
647d6cba00 fix for FReferenceCollectorArchive not handling unresolved FObjectPtr
stop gap fix to prevent crashing on unresolved pointers. matches the behaviour in reference collector where it skip unresolved references

https://p4-swarm.epicgames.net/reviews/24661544

#rb zousar.shaker
#preflight 6424ba91b01a25d6a003f150

[CL 24847291 by joe pribele in ue5-main branch]
2023-03-29 18:33:34 -04:00
Per Larsson
705ce4b89b ArchiveStackTrace - fixed bug with missing callstack CRC and added basic low level tests
#rb trival
#jira UE-174727
#preflight 63cf8d9eef20a5272dfc4f01
#rnx

[CL 23827777 by Per Larsson in ue5-main branch]
2023-01-24 04:08:29 -05:00
joe pribele
fc62d4218b compile fix for missing include
#preflight 638fa6f45624e6da5e13e8bb

[CL 23416097 by joe pribele in ue5-main branch]
2022-12-06 15:48:03 -05:00
Per Larsson
109822e0b0 Bulk Data - I/O dispatcher only streaming
- This change removes the explicit usage of the package resource manager when loading bulk data from loose files or the Editor Domain. A new
I/O dispatcher backend reads data from the package resource manager with a new I/O chunk type constructed from a package name/package segment. When
serializing bulk data the I/O chunk type is set to the correct chunk type depending on whether the package is cooked or not.

#rb CarlMagnus.Nordin, Paul.Chipchase
#jira none
#preflight 633bdbc66b10157eac8e1807

[CL 22523877 by Per Larsson in ue5-main branch]
2022-10-14 04:26:10 -04:00
devin doucette
d095c9866d DerivedData: Enabled the derived data reference cache tests on Mac
#jira UE-156434
#preflight 632e18d7e23e50651ba7d9cb
#rb trivial
#rnx

[CL 22165704 by devin doucette in ue5-main branch]
2022-09-23 20:54:56 -04:00
Per Larsson
7bce324dd6 Bulk Data - fix failing tests on consoles
#rb trivial
#preflight 632c9e8be23e50651b4af99f?step=26ab
#jira UE-164810
#rnx

[CL 22141333 by Per Larsson in ue5-main branch]
2022-09-22 14:34:14 -04:00
Per Larsson
53076ee403 Bulk Data - unit tests
#rb Paul.Chipchase
#jira none
#preflight
#rnx

[CL 22108256 by Per Larsson in ue5-main branch]
2022-09-21 00:53:46 -04:00
Devin Doucette
0ce0756966 DerivedData: Added a way to request compressed data from derived data references
- FDerivedDataIoBatch::Compress requests the entire compressed value.
- FDerivedDataIoResponse::GetCompressedData gets the compressed buffer from the response when available.
- FDerivedDataIoResponse::GetCacheValueId has been added to get the FValueId when available.
- FDerivedDataIoResponse::GetCacheKey has been fixed to return a non-null cache key when appropriate.
- Asserts about FDerivedData now log the derived data reference too.

#preflight 631a5f6fa60c539c98ab5fa9
#rb Zousar.Shaker

[CL 21920523 by Devin Doucette in ue5-main branch]
2022-09-09 10:36:44 -04:00
Devin Doucette
7b4bbf54d4 Temporarily disabled a test on Mac because of issues on CI
#rb none
#rnx
#preflight 6297a73a7b033c7273a75a17

[CL 20455562 by Devin Doucette in ue5-main branch]
2022-06-01 14:09:45 -04:00
Devin Doucette
87340081ea DerivedData: Added a new API in place of the use of IoDispatcher
#preflight 62961234e62c873b96c939d5
#rb Zousar.Shaker

[CL 20445536 by Devin Doucette in ue5-main branch]
2022-05-31 22:01:40 -04:00
Per Larsson
c30e677d1b Merge BulkData 1&2
#rb Paul.Chipchase, PJ.Kack, CarlMagnus.Nordin
#jira none
#preflight 629085d14f63120d8e170977

###
This change attempts to merge the editor and the runtime version of bulk data, i.e. bulk data one and two.
The major difference between the two is the fact that the editor version supported element vice
serialization via inheritance. This has been complelety removed in the runtime version. In order
to mitigate this divergance a non-virtual base class has been extracted that forms the base
for the untyped and typed versions of bulk data.
The untyped version is only used in editor and will be deprecated. However this is a breaking change,
previously it was possible to inherit from FByteBulkData in editor builds.
Other differences between the two includes:
* IsBulkDataLoaded - returns true for bulk data 1 if an allocation has been made even if the size is zero
* StartStreaming - was removed in bulk data 2 and has been removed
* FlushAsyncLoading - bulk data 2 was busy waiting, now an event is used

All I/O related functionality has been extracted into BulkDataStreaming.cpp and is using
a  FBulkDataChunkId that is either a package path or a package ID.This could potentially
be extended to contain a cache key in development builds to support loading from DDC, i.e derived
data references.

[CL 20391050 by Per Larsson in ue5-main branch]
2022-05-27 04:31:58 -04:00
chris constantinescu
28111d40fc Redundancy cleanup in UBT Low Level Tests:
- test-specific targets and modules are constructed by RulesAssembly which removes a lot of spaghetti code
- no more excluding the Tests folder by default which is guaranteed to mislead users #fyi Jon.Nabozny
- test compilation in Tests is controlled through WITH_LOW_LEVEL_TESTS
- preparation code for switching tests between Catch2 / TestAutomation Fmwk

Nightly LLT PF 6260431391376845adeb4c40

#rnx
#preflight 62602d50dd47b4ad2173c30b

[CL 19834665 by chris constantinescu in ue5-main branch]
2022-04-20 14:24:59 -04:00
chris constantinescu
054a91e666 Introduce global setup for the LowLevelTests project.
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]
2022-04-15 07:21:27 -04:00
chris constantinescu
1ad862400a CoreUObject test conversion damage control.
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]
2022-04-07 10:34:55 -04:00
chris constantinescu
cdcaefe035 Introducing Catch2 disabled test cases, scenarios etc
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]
2022-03-31 15:16:31 -04:00
mark lintott
bc9b168688 Add new Unit Tests
#rb Chris.Constantinescu
#preflight 62458f77292f228e09013681

[CL 19571202 by mark lintott in ue5-main branch]
2022-03-31 07:45:37 -04:00
chris constantinescu
ae281656f2 Tests converted from 18848115 made to work multi-platform.
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]
2022-03-24 13:28:25 -04:00