53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
// Copyright (c) 2022 Sentry. All Rights Reserved.
 | 
						|
 | 
						|
#include "SentryTests.h"
 | 
						|
#include "SentryUser.h"
 | 
						|
 | 
						|
#include "Misc/AutomationTest.h"
 | 
						|
 | 
						|
#if WITH_AUTOMATION_TESTS
 | 
						|
 | 
						|
BEGIN_DEFINE_SPEC(SentryUserSpec, "Sentry.SentryUser", EAutomationTestFlags::ProductFilter | SentryApplicationContextMask)
 | 
						|
	USentryUser* SentryUser;
 | 
						|
END_DEFINE_SPEC(SentryUserSpec)
 | 
						|
 | 
						|
void SentryUserSpec::Define()
 | 
						|
{
 | 
						|
	BeforeEach([this]()
 | 
						|
	{
 | 
						|
		SentryUser = NewObject<USentryUser>();
 | 
						|
	});
 | 
						|
 | 
						|
	Describe("User params", [this]()
 | 
						|
	{
 | 
						|
		It("should persist their values", [this]()
 | 
						|
		{
 | 
						|
			const FString TestUsername = FString(TEXT("SentryUser"));
 | 
						|
			const FString TestEmail = FString(TEXT("user-mail@example.org"));
 | 
						|
			const FString TestIpAddress = FString(TEXT("127.0.0.1"));
 | 
						|
			const FString TestId = FString(TEXT("123"));
 | 
						|
 | 
						|
			TMap<FString, FString> TestData;
 | 
						|
			TestData.Add(TEXT("Key1"), TEXT("Val1"));
 | 
						|
			TestData.Add(TEXT("Key2"), TEXT("Val2"));
 | 
						|
 | 
						|
			SentryUser->SetUsername(TestUsername);
 | 
						|
			SentryUser->SetEmail(TestEmail);
 | 
						|
			SentryUser->SetIpAddress(TestIpAddress);
 | 
						|
			SentryUser->SetId(TestId);
 | 
						|
			SentryUser->SetData(TestData);
 | 
						|
 | 
						|
			TestEqual("Username", SentryUser->GetUsername(), TestUsername);
 | 
						|
			TestEqual("Email", SentryUser->GetEmail(), TestEmail);
 | 
						|
			TestEqual("Ip Address", SentryUser->GetIpAddress(), TestIpAddress);
 | 
						|
			TestEqual("Id", SentryUser->GetId(), TestId);
 | 
						|
 | 
						|
			TMap<FString, FString> ReceivedData = SentryUser->GetData();
 | 
						|
			TestEqual("Data 1", ReceivedData[TEXT("Key1")], TestData[TEXT("Key1")]);
 | 
						|
			TestEqual("Data 2", ReceivedData[TEXT("Key2")], TestData[TEXT("Key2")]);
 | 
						|
		});
 | 
						|
	});
 | 
						|
}
 | 
						|
 | 
						|
#endif
 |