diff --git a/Docs/GAS.md b/Docs/GAS.md index ea71aa3..ffe2bcc 100644 --- a/Docs/GAS.md +++ b/Docs/GAS.md @@ -33,8 +33,12 @@ with a coroutine. > [!CAUTION] > It is undefined behavior to override ExecuteAbility with a subroutine. -Every instancing policy is supported, including it dynamically changing at -runtime. +Every instancing policy is supported on Unreal Engine 5.3 and 5.4, including it +dynamically changing at runtime. + +Starting with 5.5, NonInstanced is not supported. +Using the `AbilitySystem.Fix.AllowNonInstancedAbilities` CVar to get it back is +possible, but not recommended due to engine issues. The following events are turned into interactions with the ExecuteAbility coroutine: diff --git a/Source/UE5CoroGASTests/Private/AbilityTaskTests.cpp b/Source/UE5CoroGASTests/Private/AbilityTaskTests.cpp index 575e58f..211f84e 100644 --- a/Source/UE5CoroGASTests/Private/AbilityTaskTests.cpp +++ b/Source/UE5CoroGASTests/Private/AbilityTaskTests.cpp @@ -38,7 +38,7 @@ using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAbilityTaskTest, "UE5Coro.GAS.AbilityTask", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroGASTests/Private/GameplayAbilityTests.cpp b/Source/UE5CoroGASTests/Private/GameplayAbilityTests.cpp index c5b2bc1..ef47e74 100644 --- a/Source/UE5CoroGASTests/Private/GameplayAbilityTests.cpp +++ b/Source/UE5CoroGASTests/Private/GameplayAbilityTests.cpp @@ -31,25 +31,28 @@ #include "GASTestWorld.h" #include "Misc/AutomationTest.h" +#include "Misc/EngineVersionComparison.h" #include "UE5CoroGASTestGameplayAbility.h" using namespace UE5Coro::Private::Test; +#if UE_VERSION_OLDER_THAN(5, 5, 0) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FGameplayAbilityTestNonInstanced, "UE5Coro.GAS.GameplayAbility.NonInstanced", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) +#endif IMPLEMENT_SIMPLE_AUTOMATION_TEST(FGameplayAbilityTestPerActor, "UE5Coro.GAS.GameplayAbility.PerActor", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FGameplayAbilityTestPerExecution, "UE5Coro.GAS.GameplayAbility.PerExecution", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) @@ -58,7 +61,11 @@ namespace void DoTest(FAutomationTestBase& Test, EGameplayAbilityInstancingPolicy::Type Policy) { +#if UE_VERSION_OLDER_THAN(5, 5, 0) bool bInstanced = Policy != EGameplayAbilityInstancingPolicy::NonInstanced; +#else + constexpr bool bInstanced = true; +#endif auto* CDO = GetMutableDefault(); UUE5CoroGASTestGameplayAbility::SetInstancingPolicy(Policy); int& State = UUE5CoroGASTestGameplayAbility::State; @@ -118,11 +125,13 @@ void DoTest(FAutomationTestBase& Test, } } +#if UE_VERSION_OLDER_THAN(5, 5, 0) bool FGameplayAbilityTestNonInstanced::RunTest(const FString& Parameters) { DoTest(*this, EGameplayAbilityInstancingPolicy::NonInstanced); return true; } +#endif bool FGameplayAbilityTestPerActor::RunTest(const FString& Parameters) { diff --git a/Source/UE5CoroGASTests/Private/UE5CoroGASTestGameplayAbility.cpp b/Source/UE5CoroGASTests/Private/UE5CoroGASTestGameplayAbility.cpp index ab1cb09..163044f 100644 --- a/Source/UE5CoroGASTests/Private/UE5CoroGASTestGameplayAbility.cpp +++ b/Source/UE5CoroGASTests/Private/UE5CoroGASTestGameplayAbility.cpp @@ -30,6 +30,7 @@ // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UE5CoroGASTestGameplayAbility.h" +#include "Misc/EngineVersionComparison.h" #include "Tasks/GameplayTask_WaitDelay.h" using namespace UE5Coro; @@ -77,7 +78,11 @@ FAbilityCoroutine UUE5CoroGASTestGameplayAbility::ExecuteAbility( State = 4; // UGameplayTask_WaitDelay only works on instanced abilities +#if UE_VERSION_OLDER_THAN(5, 5, 0) if (GetInstancingPolicy() != EGameplayAbilityInstancingPolicy::NonInstanced) +#else + if constexpr (true) +#endif { // UGameplayTask_WaitDelay is MinimalAPI auto* Class = UGameplayTask_WaitDelay::StaticClass(); diff --git a/Source/UE5CoroK2/Private/K2Node_UE5CoroCallCoroutine.cpp b/Source/UE5CoroK2/Private/K2Node_UE5CoroCallCoroutine.cpp index 6af25a0..42651fa 100644 --- a/Source/UE5CoroK2/Private/K2Node_UE5CoroCallCoroutine.cpp +++ b/Source/UE5CoroK2/Private/K2Node_UE5CoroCallCoroutine.cpp @@ -33,8 +33,15 @@ #include "BlueprintActionDatabaseRegistrar.h" #include "BlueprintNodeSpawner.h" #include "EdGraphSchema_K2.h" +#include "Misc/EngineVersionComparison.h" #include "UE5Coro.h" +#if UE_VERSION_OLDER_THAN(5, 5, 0) +using ObjectTools = UK2Node_CallFunction; +#else +#include "ObjectTools.h" +#endif + void UK2Node_UE5CoroCallCoroutine::CustomizeNode(UEdGraphNode* NewNode, bool, UFunction* Function) { @@ -68,7 +75,8 @@ void UK2Node_UE5CoroCallCoroutine::GetMenuActions( Menu.Category = NSLOCTEXT("UE5Coro", "CallCoroutine", "Call Coroutine"); // The engine does the same FString->FText conversion - Menu.Tooltip = FText::FromString(GetDefaultTooltipForFunction(Fn)); + Menu.Tooltip = FText::FromString( + ObjectTools::GetDefaultTooltipForFunction(Fn)); Menu.Keywords = GetKeywordsForFunction(Fn); Menu.Icon = GetIconAndTint(Menu.IconTint); Menu.DocLink = GetDocumentationLink(); diff --git a/Source/UE5CoroK2/UE5CoroK2.Build.cs b/Source/UE5CoroK2/UE5CoroK2.Build.cs index aaa999d..fecc94f 100644 --- a/Source/UE5CoroK2/UE5CoroK2.Build.cs +++ b/Source/UE5CoroK2/UE5CoroK2.Build.cs @@ -40,6 +40,7 @@ public UE5CoroK2(ReadOnlyTargetRules Target) { "BlueprintGraph", "UE5Coro", + "UnrealEd", }); } } diff --git a/Source/UE5CoroTests/Private/AggregateAwaiterTest.cpp b/Source/UE5CoroTests/Private/AggregateAwaiterTest.cpp index 4fb4274..7b308dc 100644 --- a/Source/UE5CoroTests/Private/AggregateAwaiterTest.cpp +++ b/Source/UE5CoroTests/Private/AggregateAwaiterTest.cpp @@ -39,12 +39,12 @@ using namespace UE5Coro::Latent; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAggregateAsyncTest, "UE5Coro.Aggregate.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAggregateLatentTest, "UE5Coro.Aggregate.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/AsyncAwaiterTest.cpp b/Source/UE5CoroTests/Private/AsyncAwaiterTest.cpp index c7fc484..aadeccc 100644 --- a/Source/UE5CoroTests/Private/AsyncAwaiterTest.cpp +++ b/Source/UE5CoroTests/Private/AsyncAwaiterTest.cpp @@ -39,17 +39,17 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncAwaiterTest, "UE5Coro.Async.TrueAsync", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncInLatentTest, "UE5Coro.Async.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncStressTest, "UE5Coro.Async.Stress", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::MediumPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/AsyncLoadTest.cpp b/Source/UE5CoroTests/Private/AsyncLoadTest.cpp index 404c263..9953396 100644 --- a/Source/UE5CoroTests/Private/AsyncLoadTest.cpp +++ b/Source/UE5CoroTests/Private/AsyncLoadTest.cpp @@ -39,12 +39,12 @@ using namespace UE5Coro::Latent; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncLoadTestLatent, "UE5Coro.AsyncLoad.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncLoadTestAsync, "UE5Coro.AsyncLoad.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/AsyncQueryTest.cpp b/Source/UE5CoroTests/Private/AsyncQueryTest.cpp index f5eeae2..eacf039 100644 --- a/Source/UE5CoroTests/Private/AsyncQueryTest.cpp +++ b/Source/UE5CoroTests/Private/AsyncQueryTest.cpp @@ -39,12 +39,12 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncQueryTestAsync, "UE5Coro.AsyncQuery.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncQueryTestLatent, "UE5Coro.AsyncQuery.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/AwaitableEventTest.cpp b/Source/UE5CoroTests/Private/AwaitableEventTest.cpp index 815c23d..c4a2138 100644 --- a/Source/UE5CoroTests/Private/AwaitableEventTest.cpp +++ b/Source/UE5CoroTests/Private/AwaitableEventTest.cpp @@ -38,12 +38,12 @@ using namespace UE5Coro::Latent; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FEventAsyncTest, "UE5Coro.Threading.Event.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::CriticalPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FEventLatentTest, "UE5Coro.Threading.Event.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::CriticalPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/AwaitableSemaphoreTest.cpp b/Source/UE5CoroTests/Private/AwaitableSemaphoreTest.cpp index f0ddbfe..01a38bf 100644 --- a/Source/UE5CoroTests/Private/AwaitableSemaphoreTest.cpp +++ b/Source/UE5CoroTests/Private/AwaitableSemaphoreTest.cpp @@ -37,12 +37,12 @@ using namespace UE5Coro; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FSemaAsyncTest, "UE5Coro.Threading.Semaphore.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::CriticalPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FSemaLatentTest, "UE5Coro.Threading.Semaphore.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::CriticalPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/CancellationTest.cpp b/Source/UE5CoroTests/Private/CancellationTest.cpp index ba508be..0cb4cca 100644 --- a/Source/UE5CoroTests/Private/CancellationTest.cpp +++ b/Source/UE5CoroTests/Private/CancellationTest.cpp @@ -40,12 +40,12 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FCancelTestAsync, "UE5Coro.Cancel.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FCancelTestLatent, "UE5Coro.Cancel.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/CoroutineHandleTest.cpp b/Source/UE5CoroTests/Private/CoroutineHandleTest.cpp index a1c49a0..5676902 100644 --- a/Source/UE5CoroTests/Private/CoroutineHandleTest.cpp +++ b/Source/UE5CoroTests/Private/CoroutineHandleTest.cpp @@ -43,12 +43,12 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FHandleTestAsync, "UE5Coro.Handle.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FHandleTestLatent, "UE5Coro.Handle.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/DelegateAwaiterTest.cpp b/Source/UE5CoroTests/Private/DelegateAwaiterTest.cpp index 31faff9..38c88eb 100644 --- a/Source/UE5CoroTests/Private/DelegateAwaiterTest.cpp +++ b/Source/UE5CoroTests/Private/DelegateAwaiterTest.cpp @@ -41,17 +41,17 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FDelegateTestCore, "UE5Coro.Delegate.Core", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::CriticalPriority | EAutomationTestFlags::SmokeFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FDelegateTestAsync, "UE5Coro.Delegate.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FDelegateTestLatent, "UE5Coro.Delegate.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/ExceptionTest.cpp b/Source/UE5CoroTests/Private/ExceptionTest.cpp index 9683d3c..92694ac 100644 --- a/Source/UE5CoroTests/Private/ExceptionTest.cpp +++ b/Source/UE5CoroTests/Private/ExceptionTest.cpp @@ -43,7 +43,7 @@ using namespace UE5Coro::Private::Test; #if !PLATFORM_EXCEPTIONS_DISABLED IMPLEMENT_SIMPLE_AUTOMATION_TEST(FExceptionTest, "UE5Coro.Exceptions", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/FutureTest.cpp b/Source/UE5CoroTests/Private/FutureTest.cpp index dcdabdd..2300fd3 100644 --- a/Source/UE5CoroTests/Private/FutureTest.cpp +++ b/Source/UE5CoroTests/Private/FutureTest.cpp @@ -38,12 +38,12 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FFutureAsync, "UE5Coro.Future.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FFutureLatent, "UE5Coro.Future.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/GeneratorTest.cpp b/Source/UE5CoroTests/Private/GeneratorTest.cpp index 31088bd..a23efab 100644 --- a/Source/UE5CoroTests/Private/GeneratorTest.cpp +++ b/Source/UE5CoroTests/Private/GeneratorTest.cpp @@ -29,13 +29,14 @@ // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#include "TestWorld.h" #include "Misc/AutomationTest.h" #include "UE5Coro.h" using namespace UE5Coro; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FGeneratorTest, "UE5Coro.Generator", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::CriticalPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/HttpAwaiterTest.cpp b/Source/UE5CoroTests/Private/HttpAwaiterTest.cpp index 3599dbc..cd10ca1 100644 --- a/Source/UE5CoroTests/Private/HttpAwaiterTest.cpp +++ b/Source/UE5CoroTests/Private/HttpAwaiterTest.cpp @@ -41,12 +41,12 @@ using namespace UE5Coro::Http; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FHttpAsyncTest, "UE5Coro.HTTP.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FHttpLatentTest, "UE5Coro.HTTP.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/LatentAwaiterTest.cpp b/Source/UE5CoroTests/Private/LatentAwaiterTest.cpp index 5657503..6b6f7d1 100644 --- a/Source/UE5CoroTests/Private/LatentAwaiterTest.cpp +++ b/Source/UE5CoroTests/Private/LatentAwaiterTest.cpp @@ -39,12 +39,12 @@ using namespace UE5Coro::Latent; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentAwaiterTest, "UE5Coro.Latent.TrueLatent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentInAsyncTest, "UE5Coro.Latent.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/LatentCallbackTest.cpp b/Source/UE5CoroTests/Private/LatentCallbackTest.cpp index d28b0ca..0e83d5c 100644 --- a/Source/UE5CoroTests/Private/LatentCallbackTest.cpp +++ b/Source/UE5CoroTests/Private/LatentCallbackTest.cpp @@ -40,11 +40,11 @@ using namespace UE5Coro::Latent; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentCallbackTest, "UE5Coro.Latent.Callbacks", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentCompletionTest, "UE5Coro.Latent.Completion", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/LatentChainCancellationTest.cpp b/Source/UE5CoroTests/Private/LatentChainCancellationTest.cpp index da1f8b6..774bfa8 100644 --- a/Source/UE5CoroTests/Private/LatentChainCancellationTest.cpp +++ b/Source/UE5CoroTests/Private/LatentChainCancellationTest.cpp @@ -41,12 +41,12 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncChainCancelTest, "UE5Coro.Chain.Cancel.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentChainCancelTest, "UE5Coro.Chain.Cancel.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/LatentChainTest.cpp b/Source/UE5CoroTests/Private/LatentChainTest.cpp index eb8a041..1996fd0 100644 --- a/Source/UE5CoroTests/Private/LatentChainTest.cpp +++ b/Source/UE5CoroTests/Private/LatentChainTest.cpp @@ -41,12 +41,12 @@ using namespace UE5Coro::Latent; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncChainTest, "UE5Coro.Chain.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentChainTest, "UE5Coro.Chain.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/NestedAwaitTest.cpp b/Source/UE5CoroTests/Private/NestedAwaitTest.cpp index dc5e1f7..040cdcc 100644 --- a/Source/UE5CoroTests/Private/NestedAwaitTest.cpp +++ b/Source/UE5CoroTests/Private/NestedAwaitTest.cpp @@ -39,12 +39,12 @@ using namespace UE5Coro::Latent; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncAwaitTest, "UE5Coro.Handle.Await.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentAwaitTest, "UE5Coro.Handle.Await.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/ReturnValueTest.cpp b/Source/UE5CoroTests/Private/ReturnValueTest.cpp index db1c9ec..a4e19e4 100644 --- a/Source/UE5CoroTests/Private/ReturnValueTest.cpp +++ b/Source/UE5CoroTests/Private/ReturnValueTest.cpp @@ -39,12 +39,12 @@ using namespace UE5Coro::Private; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FLatentReturnTest, "UE5Coro.Return.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FAsyncReturnTest, "UE5Coro.Return.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/TaskTest.cpp b/Source/UE5CoroTests/Private/TaskTest.cpp index 72313ff..4bbc291 100644 --- a/Source/UE5CoroTests/Private/TaskTest.cpp +++ b/Source/UE5CoroTests/Private/TaskTest.cpp @@ -38,22 +38,22 @@ using namespace UE5Coro::Async; using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FTaskCreateAsync, "UE5Coro.Tasks.CreateAsync", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FTaskCreateLatent, "UE5Coro.Tasks.CreateLatent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FTaskConsumeAsync, "UE5Coro.Tasks.ConsumeAsync", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FTaskConsumeLatent, "UE5Coro.Tasks.ConsumeLatent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Private/TickTimeBudgetTest.cpp b/Source/UE5CoroTests/Private/TickTimeBudgetTest.cpp index 404d307..b2ebebf 100644 --- a/Source/UE5CoroTests/Private/TickTimeBudgetTest.cpp +++ b/Source/UE5CoroTests/Private/TickTimeBudgetTest.cpp @@ -39,13 +39,13 @@ using namespace UE5Coro::Private::Test; IMPLEMENT_SIMPLE_AUTOMATION_TEST(FTickTimeBudgetAsyncTest, "UE5Coro.Latent.TickTimeBudget.Async", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) IMPLEMENT_SIMPLE_AUTOMATION_TEST(FTickTimeBudgetLatentTest, "UE5Coro.Latent.TickTimeBudget.Latent", - EAutomationTestFlags::ApplicationContextMask | + EAutomationTestFlags_ApplicationContextMask | EAutomationTestFlags::HighPriority | EAutomationTestFlags::ProductFilter) diff --git a/Source/UE5CoroTests/Public/TestWorld.h b/Source/UE5CoroTests/Public/TestWorld.h index 82bcbd3..902a2a7 100644 --- a/Source/UE5CoroTests/Public/TestWorld.h +++ b/Source/UE5CoroTests/Public/TestWorld.h @@ -33,6 +33,12 @@ #include "CoreMinimal.h" #include "UE5Coro.h" +#include "Misc/EngineVersionComparison.h" + +#if UE_VERSION_OLDER_THAN(5, 5, 0) +constexpr EAutomationTestFlags::Type EAutomationTestFlags_ApplicationContextMask = + EAutomationTestFlags::ApplicationContextMask; +#endif #define CORO [&](T...) -> FVoidCoroutine #define CORO_R(Type) [&](T...) -> TCoroutine