51 lines
1.7 KiB
C++
51 lines
1.7 KiB
C++
|
|
// Copyright (c) 2022 Sentry. All Rights Reserved.
|
||
|
|
|
||
|
|
#include "SentryTests.h"
|
||
|
|
#include "SentryBreadcrumb.h"
|
||
|
|
|
||
|
|
#include "Misc/AutomationTest.h"
|
||
|
|
|
||
|
|
#if WITH_AUTOMATION_TESTS
|
||
|
|
|
||
|
|
BEGIN_DEFINE_SPEC(SentryBreadcrumbSpec, "Sentry.SentryBreadcrumb", EAutomationTestFlags::ProductFilter | SentryApplicationContextMask)
|
||
|
|
USentryBreadcrumb* SentryBreadcrumb;
|
||
|
|
END_DEFINE_SPEC(SentryBreadcrumbSpec)
|
||
|
|
|
||
|
|
void SentryBreadcrumbSpec::Define()
|
||
|
|
{
|
||
|
|
BeforeEach([this]()
|
||
|
|
{
|
||
|
|
SentryBreadcrumb = NewObject<USentryBreadcrumb>();
|
||
|
|
});
|
||
|
|
|
||
|
|
Describe("Breadcrumb params", [this]()
|
||
|
|
{
|
||
|
|
It("should persist their values", [this]()
|
||
|
|
{
|
||
|
|
const FString TestMessage = FString(TEXT("Test message"));
|
||
|
|
const FString TestType = FString(TEXT("Test type"));
|
||
|
|
const FString TestCategory = FString(TEXT("Test category"));
|
||
|
|
|
||
|
|
TMap<FString, FString> TestData;
|
||
|
|
TestData.Add(TEXT("Key1"), TEXT("Val1"));
|
||
|
|
TestData.Add(TEXT("Key2"), TEXT("Val2"));
|
||
|
|
|
||
|
|
SentryBreadcrumb->SetLevel(ESentryLevel::Fatal);
|
||
|
|
SentryBreadcrumb->SetMessage(TestMessage);
|
||
|
|
SentryBreadcrumb->SetType(TestType);
|
||
|
|
SentryBreadcrumb->SetCategory(TestCategory);
|
||
|
|
SentryBreadcrumb->SetData(TestData);
|
||
|
|
|
||
|
|
TestEqual("Breadcrumb level", SentryBreadcrumb->GetLevel(), ESentryLevel::Fatal);
|
||
|
|
TestEqual("Breadcrumb message", SentryBreadcrumb->GetMessage(), TestMessage);
|
||
|
|
TestEqual("Breadcrumb type", SentryBreadcrumb->GetType(), TestType);
|
||
|
|
TestEqual("Breadcrumb category", SentryBreadcrumb->GetCategory(), TestCategory);
|
||
|
|
|
||
|
|
TMap<FString, FString> ReceivedData = SentryBreadcrumb->GetData();
|
||
|
|
TestEqual("Data 1", ReceivedData[TEXT("Key1")], TestData[TEXT("Key1")]);
|
||
|
|
TestEqual("Data 2", ReceivedData[TEXT("Key2")], TestData[TEXT("Key2")]);
|
||
|
|
});
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
#endif
|