You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.5 KiB
C++
58 lines
1.5 KiB
C++
/*
|
|
* Copyright (c) Contributors to the Open 3D Engine Project
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0 OR MIT
|
|
*
|
|
*/
|
|
|
|
#include <Common/JsonTestUtils.h>
|
|
#include <AzFramework/StringFunc/StringFunc.h>
|
|
#include <gtest/gtest.h>
|
|
|
|
namespace UnitTest
|
|
{
|
|
bool JsonTestResult::ContainsOutcome(AZ::JsonSerializationResult::Outcomes outcome)
|
|
{
|
|
for (auto& reportList : m_reports)
|
|
{
|
|
for (auto& report : reportList.second)
|
|
{
|
|
if (report.resultCode.GetOutcome() == outcome)
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
bool JsonTestResult::ContainsMessage(AZStd::string_view jsonFieldPath, AZStd::string_view messageSubstring)
|
|
{
|
|
auto pathIter = m_reports.find(jsonFieldPath);
|
|
if (pathIter == m_reports.end())
|
|
{
|
|
return false;
|
|
}
|
|
|
|
for (auto& report : pathIter->second)
|
|
{
|
|
if (AzFramework::StringFunc::Find(report.message, messageSubstring) != AZStd::string::npos)
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
void ExpectSimilarJson(AZStd::string_view a, AZStd::string_view b)
|
|
{
|
|
AZStd::string aStripped = a;
|
|
AZStd::string bStripped = b;
|
|
AzFramework::StringFunc::Strip(aStripped, " \t\r\n");
|
|
AzFramework::StringFunc::Strip(bStripped, " \t\r\n");
|
|
EXPECT_STRCASEEQ(aStripped.c_str(), bStripped.c_str());
|
|
}
|
|
}
|