pw_unit_test migration: apps-1 and stub-refactoring (#33638)
* Decoupling ember functions + some tests
* Fix TearDown issue of some App Tests
* adding more tests
* Integrating comments
* Rename ember-test-compatibility to test-interaction-model-api
* adding ember test-utilities source files
* restyled patch
* integrating comments
* restyled
diff --git a/src/BUILD.gn b/src/BUILD.gn
index cf15f40..5f7d6cc 100644
--- a/src/BUILD.gn
+++ b/src/BUILD.gn
@@ -96,6 +96,7 @@
if (chip_device_platform != "efr32") {
tests += [
"${chip_root}/src/app/tests",
+ "${chip_root}/src/app/tests:tests_nltest",
"${chip_root}/src/credentials/tests",
"${chip_root}/src/lib/format/tests",
"${chip_root}/src/lib/support/tests",
diff --git a/src/app/tests/BUILD.gn b/src/app/tests/BUILD.gn
index 2840877..e8413b9 100644
--- a/src/app/tests/BUILD.gn
+++ b/src/app/tests/BUILD.gn
@@ -15,6 +15,7 @@
import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")
import("//build_overrides/nlunit_test.gni")
+import("//build_overrides/pigweed.gni")
import("${chip_root}/build/chip/chip_test_suite.gni")
import("${chip_root}/src/app/icd/icd.gni")
@@ -37,9 +38,10 @@
"${chip_root}/src/access",
"${chip_root}/src/app",
"${chip_root}/src/lib/support",
- "${chip_root}/src/messaging/tests:helpers",
"${chip_root}/src/transport/raw/tests:helpers",
]
+
+ public_deps = [ "${chip_root}/src/messaging/tests:helpers" ]
}
source_set("binding-test-srcs") {
@@ -119,20 +121,87 @@
]
}
-chip_test_suite_using_nltest("tests") {
+source_set("app-test-stubs") {
+ sources = [
+ "test-ember-api.cpp",
+ "test-ember-api.h",
+ "test-interaction-model-api.cpp",
+ "test-interaction-model-api.h",
+ ]
+ public_configs = [ "${chip_root}/src/lib/support/pw_log_chip:config" ]
+
+ public_deps = [
+ "${chip_root}/src/app/util/mock:mock_ember",
+ "${chip_root}/src/lib/core",
+ "${chip_root}/src/lib/support",
+ ]
+}
+
+chip_test_suite("tests") {
output_name = "libAppTests"
test_sources = [
- "TestAclAttribute.cpp",
- "TestAclEvent.cpp",
"TestAttributeAccessInterfaceCache.cpp",
"TestAttributePathExpandIterator.cpp",
"TestAttributePersistenceProvider.cpp",
"TestAttributeValueDecoder.cpp",
"TestAttributeValueEncoder.cpp",
- "TestBasicCommandPathRegistry.cpp",
"TestBindingTable.cpp",
"TestBuilderParser.cpp",
+ "TestMessageDef.cpp",
+ "TestNullable.cpp",
+ "TestNumericAttributeTraits.cpp",
+ "TestOperationalStateClusterObjects.cpp",
+ "TestPendingNotificationMap.cpp",
+ "TestPendingResponseTrackerImpl.cpp",
+ "TestPowerSourceCluster.cpp",
+ "TestStatusIB.cpp",
+ "TestStatusResponseMessage.cpp",
+ "TestTestEventTriggerDelegate.cpp",
+ "TestTimeSyncDataProvider.cpp",
+ ]
+
+ if (!chip_fake_platform) {
+ test_sources += [ "TestFailSafeContext.cpp" ]
+ }
+
+ # DefaultICDClientStorage assumes that raw AES key is used by the application
+ if (chip_crypto != "psa") {
+ test_sources += [ "TestDefaultICDClientStorage.cpp" ]
+ }
+
+ if (chip_persist_subscriptions) {
+ test_sources += [ "TestSimpleSubscriptionResumptionStorage.cpp" ]
+ }
+
+ cflags = [ "-Wconversion" ]
+
+ public_deps = [
+ ":app-test-stubs",
+ ":binding-test-srcs",
+ ":operational-state-test-srcs",
+ ":ota-requestor-test-srcs",
+ ":power-cluster-test-srcs",
+ ":time-sync-data-provider-test-srcs",
+ "${chip_root}/src/app",
+ "${chip_root}/src/app/common:cluster-objects",
+ "${chip_root}/src/app/icd/client:manager",
+ "${chip_root}/src/app/tests:helpers",
+ "${chip_root}/src/app/util/mock:mock_ember",
+ "${chip_root}/src/lib/core",
+ "${chip_root}/src/lib/core:string-builder-adapters",
+ "${chip_root}/src/lib/support:test_utils",
+ "${chip_root}/src/lib/support:testing",
+ ]
+}
+
+chip_test_suite_using_nltest("tests_nltest") {
+ output_name = "libAppTestsNL"
+
+ test_sources = [
+ "TestAclAttribute.cpp",
+ "TestAclEvent.cpp",
+ "TestBasicCommandPathRegistry.cpp",
"TestClusterInfo.cpp",
"TestCommandInteraction.cpp",
"TestCommandPathParams.cpp",
@@ -144,33 +213,13 @@
"TestEventPathParams.cpp",
"TestFabricScopedEventLogging.cpp",
"TestInteractionModelEngine.cpp",
- "TestMessageDef.cpp",
- "TestNullable.cpp",
- "TestNumericAttributeTraits.cpp",
- "TestOperationalStateClusterObjects.cpp",
- "TestPendingNotificationMap.cpp",
- "TestPendingResponseTrackerImpl.cpp",
- "TestPowerSourceCluster.cpp",
"TestReadInteraction.cpp",
"TestReportScheduler.cpp",
"TestReportingEngine.cpp",
- "TestStatusIB.cpp",
- "TestStatusResponseMessage.cpp",
- "TestTestEventTriggerDelegate.cpp",
- "TestTimeSyncDataProvider.cpp",
"TestTimedHandler.cpp",
"TestWriteInteraction.cpp",
]
- if (!chip_fake_platform) {
- test_sources += [ "TestFailSafeContext.cpp" ]
- }
-
- # DefaultICDClientStorage assumes that raw AES key is used by the application
- if (chip_crypto != "psa") {
- test_sources += [ "TestDefaultICDClientStorage.cpp" ]
- }
-
#
# On NRF platforms, the allocation of a large number of pbufs in this test
# to exercise chunking causes it to run out of memory. For now, disable it there.
@@ -192,6 +241,7 @@
cflags = [ "-Wconversion" ]
public_deps = [
+ ":app-test-stubs",
":binding-test-srcs",
":operational-state-test-srcs",
":ota-requestor-test-srcs",
@@ -227,8 +277,4 @@
"${chip_root}/src/messaging/tests/echo:common",
]
}
-
- if (chip_persist_subscriptions) {
- test_sources += [ "TestSimpleSubscriptionResumptionStorage.cpp" ]
- }
}
diff --git a/src/app/tests/TestAclAttribute.cpp b/src/app/tests/TestAclAttribute.cpp
index 427b257..1c92851 100644
--- a/src/app/tests/TestAclAttribute.cpp
+++ b/src/app/tests/TestAclAttribute.cpp
@@ -24,6 +24,7 @@
#include <app/MessageDef/EventDataIB.h>
#include <app/reporting/tests/MockReportScheduler.h>
#include <app/tests/AppTestContext.h>
+#include <app/tests/test-interaction-model-api.h>
#include <app/util/basic-types.h>
#include <app/util/mock/Constants.h>
#include <app/util/mock/Functions.h>
@@ -46,18 +47,13 @@
using namespace chip;
using namespace chip::Access;
-chip::ClusterId kTestClusterId = 1;
-chip::ClusterId kTestDeniedClusterId1 = 1000;
-chip::ClusterId kTestDeniedClusterId2 = 3;
-chip::EndpointId kTestEndpointId = 4;
-
class TestAccessControlDelegate : public AccessControl::Delegate
{
public:
CHIP_ERROR Check(const SubjectDescriptor & subjectDescriptor, const chip::Access::RequestPath & requestPath,
Privilege requestPrivilege) override
{
- if (requestPath.cluster == kTestDeniedClusterId2)
+ if (requestPath.cluster == chip::Test::kTestDeniedClusterId2)
{
return CHIP_ERROR_ACCESS_DENIED;
}
@@ -125,21 +121,6 @@
namespace chip {
namespace app {
-bool ConcreteAttributePathExists(const ConcreteAttributePath & aPath)
-{
- return aPath.mClusterId != kTestDeniedClusterId1;
-}
-
-Protocols::InteractionModel::Status CheckEventSupportStatus(const ConcreteEventPath & aPath)
-{
- if (aPath.mClusterId == kTestDeniedClusterId1)
- {
- return Protocols::InteractionModel::Status::UnsupportedCluster;
- }
-
- return Protocols::InteractionModel::Status::Success;
-}
-
class TestAclAttribute
{
public:
@@ -166,12 +147,12 @@
chip::app::ReadClient::InteractionType::Subscribe);
chip::app::AttributePathParams attributePathParams[2];
- attributePathParams[0].mEndpointId = kTestEndpointId;
- attributePathParams[0].mClusterId = kTestDeniedClusterId1;
+ attributePathParams[0].mEndpointId = chip::Test::kTestEndpointId;
+ attributePathParams[0].mClusterId = chip::Test::kTestDeniedClusterId1;
attributePathParams[0].mAttributeId = 1;
- attributePathParams[1].mEndpointId = kTestEndpointId;
- attributePathParams[1].mClusterId = kTestDeniedClusterId1;
+ attributePathParams[1].mEndpointId = chip::Test::kTestEndpointId;
+ attributePathParams[1].mClusterId = chip::Test::kTestDeniedClusterId1;
attributePathParams[1].mAttributeId = 2;
ReadPrepareParams readPrepareParams(ctx.GetSessionBobToAlice());
@@ -194,10 +175,10 @@
chip::app::AttributePathParams attributePathParams[2];
- attributePathParams[0].mClusterId = kTestDeniedClusterId2;
+ attributePathParams[0].mClusterId = chip::Test::kTestDeniedClusterId2;
attributePathParams[0].mAttributeId = 1;
- attributePathParams[1].mClusterId = kTestDeniedClusterId2;
+ attributePathParams[1].mClusterId = chip::Test::kTestDeniedClusterId2;
attributePathParams[1].mAttributeId = 2;
ReadPrepareParams readPrepareParams(ctx.GetSessionBobToAlice());
@@ -219,12 +200,12 @@
chip::app::ReadClient::InteractionType::Subscribe);
chip::app::AttributePathParams attributePathParams[2];
- attributePathParams[0].mEndpointId = kTestEndpointId;
- attributePathParams[0].mClusterId = kTestDeniedClusterId1;
+ attributePathParams[0].mEndpointId = chip::Test::kTestEndpointId;
+ attributePathParams[0].mClusterId = chip::Test::kTestDeniedClusterId1;
attributePathParams[0].mAttributeId = 1;
- attributePathParams[1].mEndpointId = kTestEndpointId;
- attributePathParams[1].mClusterId = kTestClusterId;
+ attributePathParams[1].mEndpointId = chip::Test::kTestEndpointId;
+ attributePathParams[1].mClusterId = chip::Test::kTestClusterId;
attributePathParams[1].mAttributeId = 2;
ReadPrepareParams readPrepareParams(ctx.GetSessionBobToAlice());
diff --git a/src/app/tests/TestAttributeAccessInterfaceCache.cpp b/src/app/tests/TestAttributeAccessInterfaceCache.cpp
index 47b8e6d..28aa91d 100644
--- a/src/app/tests/TestAttributeAccessInterfaceCache.cpp
+++ b/src/app/tests/TestAttributeAccessInterfaceCache.cpp
@@ -18,15 +18,15 @@
#include <app/AttributeAccessInterface.h>
#include <app/AttributeAccessInterfaceCache.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
using namespace chip;
using namespace chip::app;
namespace {
-void TestBasicLifecycle(nlTestSuite * inSuite, void * inContext)
+TEST(TestAttributeAccessInterfaceCache, TestBasicLifecycle)
{
using CacheResult = AttributeAccessInterfaceCache::CacheResult;
@@ -44,86 +44,58 @@
// Cache can keep track of at least 1 entry,
AttributeAccessInterface * entry = nullptr;
- NL_TEST_ASSERT(inSuite, cache.Get(1, 1, &entry) == CacheResult::kCacheMiss);
- NL_TEST_ASSERT(inSuite, entry == nullptr);
+ EXPECT_EQ(cache.Get(1, 1, &entry), CacheResult::kCacheMiss);
+ EXPECT_EQ(entry, nullptr);
cache.MarkUsed(1, 1, accessor1);
- NL_TEST_ASSERT(inSuite, cache.Get(1, 1, &entry) == CacheResult::kDefinitelyUsed);
- NL_TEST_ASSERT(inSuite, entry == accessor1);
+ EXPECT_EQ(cache.Get(1, 1, &entry), CacheResult::kDefinitelyUsed);
+ EXPECT_EQ(entry, accessor1);
entry = nullptr;
- NL_TEST_ASSERT(inSuite, cache.Get(1, 2, &entry) == CacheResult::kCacheMiss);
- NL_TEST_ASSERT(inSuite, entry == nullptr);
- NL_TEST_ASSERT(inSuite, cache.Get(2, 1, &entry) == CacheResult::kCacheMiss);
- NL_TEST_ASSERT(inSuite, entry == nullptr);
+ EXPECT_EQ(cache.Get(1, 2, &entry), CacheResult::kCacheMiss);
+ EXPECT_EQ(entry, nullptr);
+ EXPECT_EQ(cache.Get(2, 1, &entry), CacheResult::kCacheMiss);
+ EXPECT_EQ(entry, nullptr);
cache.MarkUsed(1, 2, accessor1);
entry = nullptr;
- NL_TEST_ASSERT(inSuite, cache.Get(1, 2, &entry) == CacheResult::kDefinitelyUsed);
- NL_TEST_ASSERT(inSuite, entry == accessor1);
- NL_TEST_ASSERT(inSuite, cache.Get(2, 1, &entry) == CacheResult::kCacheMiss);
+ EXPECT_EQ(cache.Get(1, 2, &entry), CacheResult::kDefinitelyUsed);
+ EXPECT_EQ(entry, accessor1);
+ EXPECT_EQ(cache.Get(2, 1, &entry), CacheResult::kCacheMiss);
cache.MarkUsed(1, 2, accessor2);
entry = nullptr;
- NL_TEST_ASSERT(inSuite, cache.Get(1, 2, &entry) == CacheResult::kDefinitelyUsed);
- NL_TEST_ASSERT(inSuite, entry == accessor2);
+ EXPECT_EQ(cache.Get(1, 2, &entry), CacheResult::kDefinitelyUsed);
+ EXPECT_EQ(entry, accessor2);
// The following should not crash (e.g. output not used if nullptr).
- NL_TEST_ASSERT(inSuite, cache.Get(1, 2, nullptr) == CacheResult::kDefinitelyUsed);
+ EXPECT_EQ(cache.Get(1, 2, nullptr), CacheResult::kDefinitelyUsed);
// Setting used to nullptr == does not mark used.
cache.MarkUsed(1, 2, nullptr);
entry = nullptr;
- NL_TEST_ASSERT(inSuite, cache.Get(1, 2, &entry) == CacheResult::kCacheMiss);
- NL_TEST_ASSERT(inSuite, entry == nullptr);
+ EXPECT_EQ(cache.Get(1, 2, &entry), CacheResult::kCacheMiss);
+ EXPECT_EQ(entry, nullptr);
cache.Invalidate();
- NL_TEST_ASSERT(inSuite, cache.Get(1, 1, &entry) == CacheResult::kCacheMiss);
- NL_TEST_ASSERT(inSuite, entry == nullptr);
- NL_TEST_ASSERT(inSuite, cache.Get(1, 2, &entry) == CacheResult::kCacheMiss);
- NL_TEST_ASSERT(inSuite, cache.Get(2, 1, &entry) == CacheResult::kCacheMiss);
+ EXPECT_EQ(cache.Get(1, 1, &entry), CacheResult::kCacheMiss);
+ EXPECT_EQ(entry, nullptr);
+ EXPECT_EQ(cache.Get(1, 2, &entry), CacheResult::kCacheMiss);
+ EXPECT_EQ(cache.Get(2, 1, &entry), CacheResult::kCacheMiss);
// Marking unused works, keeps single entry, and is invalidated when invalidated fully.
- NL_TEST_ASSERT(inSuite, cache.Get(2, 2, nullptr) != CacheResult::kDefinitelyUnused);
- NL_TEST_ASSERT(inSuite, cache.Get(3, 3, nullptr) != CacheResult::kDefinitelyUnused);
+ EXPECT_NE(cache.Get(2, 2, nullptr), CacheResult::kDefinitelyUnused);
+ EXPECT_NE(cache.Get(3, 3, nullptr), CacheResult::kDefinitelyUnused);
cache.MarkUnused(2, 2);
- NL_TEST_ASSERT(inSuite, cache.Get(2, 2, nullptr) == CacheResult::kDefinitelyUnused);
- NL_TEST_ASSERT(inSuite, cache.Get(3, 3, nullptr) != CacheResult::kDefinitelyUnused);
+ EXPECT_EQ(cache.Get(2, 2, nullptr), CacheResult::kDefinitelyUnused);
+ EXPECT_NE(cache.Get(3, 3, nullptr), CacheResult::kDefinitelyUnused);
cache.MarkUnused(3, 3);
- NL_TEST_ASSERT(inSuite, cache.Get(2, 2, nullptr) != CacheResult::kDefinitelyUnused);
- NL_TEST_ASSERT(inSuite, cache.Get(3, 3, nullptr) == CacheResult::kDefinitelyUnused);
+ EXPECT_NE(cache.Get(2, 2, nullptr), CacheResult::kDefinitelyUnused);
+ EXPECT_EQ(cache.Get(3, 3, nullptr), CacheResult::kDefinitelyUnused);
cache.Invalidate();
- NL_TEST_ASSERT(inSuite, cache.Get(3, 3, nullptr) != CacheResult::kDefinitelyUnused);
+ EXPECT_NE(cache.Get(3, 3, nullptr), CacheResult::kDefinitelyUnused);
}
-
-// clang-format off
-const nlTest sTests[] =
-{
- NL_TEST_DEF("Basic AttributeAccessInterfaceCache lifecycle works", TestBasicLifecycle),
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
} // namespace
-
-int TestAttributeAccessInterfaceCache()
-{
- // clang-format off
- nlTestSuite theSuite =
- {
- "Test for AttributeAccessInterface cache utility",
- &sTests[0],
- nullptr,
- nullptr
- };
- // clang-format on
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestAttributeAccessInterfaceCache)
diff --git a/src/app/tests/TestAttributePathExpandIterator.cpp b/src/app/tests/TestAttributePathExpandIterator.cpp
index e550532..032581b 100644
--- a/src/app/tests/TestAttributePathExpandIterator.cpp
+++ b/src/app/tests/TestAttributePathExpandIterator.cpp
@@ -26,10 +26,10 @@
#include <lib/support/CodeUtils.h>
#include <lib/support/DLLUtil.h>
#include <lib/support/LinkedList.h>
-#include <lib/support/UnitTestRegistration.h>
#include <lib/support/logging/CHIPLogging.h>
-#include <nlunit-test.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
using namespace chip;
using namespace chip::Test;
@@ -39,7 +39,7 @@
using P = app::ConcreteAttributePath;
-void TestAllWildcard(nlTestSuite * apSuite, void * apContext)
+TEST(TestAttributePathExpandIterator, TestAllWildcard)
{
SingleLinkedListNode<app::AttributePathParams> clusInfo;
@@ -136,17 +136,18 @@
{
ChipLogDetail(AppServer, "Visited Attribute: 0x%04X / " ChipLogFormatMEI " / " ChipLogFormatMEI, path.mEndpointId,
ChipLogValueMEI(path.mClusterId), ChipLogValueMEI(path.mAttributeId));
- NL_TEST_ASSERT(apSuite, index < ArraySize(paths) && paths[index] == path);
+ EXPECT_LT(index, ArraySize(paths));
+ EXPECT_EQ(paths[index], path);
index++;
}
- NL_TEST_ASSERT(apSuite, index == ArraySize(paths));
+ EXPECT_EQ(index, ArraySize(paths));
}
-void TestWildcardEndpoint(nlTestSuite * apSuite, void * apContext)
+TEST(TestAttributePathExpandIterator, TestWildcardEndpoint)
{
SingleLinkedListNode<app::AttributePathParams> clusInfo;
- clusInfo.mValue.mClusterId = Test::MockClusterId(3);
- clusInfo.mValue.mAttributeId = Test::MockAttributeId(3);
+ clusInfo.mValue.mClusterId = chip::Test::MockClusterId(3);
+ clusInfo.mValue.mAttributeId = chip::Test::MockAttributeId(3);
app::ConcreteAttributePath path;
P paths[] = {
@@ -159,16 +160,17 @@
{
ChipLogDetail(AppServer, "Visited Attribute: 0x%04X / " ChipLogFormatMEI " / " ChipLogFormatMEI, path.mEndpointId,
ChipLogValueMEI(path.mClusterId), ChipLogValueMEI(path.mAttributeId));
- NL_TEST_ASSERT(apSuite, index < ArraySize(paths) && paths[index] == path);
+ EXPECT_LT(index, ArraySize(paths));
+ EXPECT_EQ(paths[index], path);
index++;
}
- NL_TEST_ASSERT(apSuite, index == ArraySize(paths));
+ EXPECT_EQ(index, ArraySize(paths));
}
-void TestWildcardCluster(nlTestSuite * apSuite, void * apContext)
+TEST(TestAttributePathExpandIterator, TestWildcardCluster)
{
SingleLinkedListNode<app::AttributePathParams> clusInfo;
- clusInfo.mValue.mEndpointId = Test::kMockEndpoint3;
+ clusInfo.mValue.mEndpointId = chip::Test::kMockEndpoint3;
clusInfo.mValue.mAttributeId = app::Clusters::Globals::Attributes::ClusterRevision::Id;
app::ConcreteAttributePath path;
@@ -185,16 +187,17 @@
{
ChipLogDetail(AppServer, "Visited Attribute: 0x%04X / " ChipLogFormatMEI " / " ChipLogFormatMEI, path.mEndpointId,
ChipLogValueMEI(path.mClusterId), ChipLogValueMEI(path.mAttributeId));
- NL_TEST_ASSERT(apSuite, index < ArraySize(paths) && paths[index] == path);
+ EXPECT_LT(index, ArraySize(paths));
+ EXPECT_EQ(paths[index], path);
index++;
}
- NL_TEST_ASSERT(apSuite, index == ArraySize(paths));
+ EXPECT_EQ(index, ArraySize(paths));
}
-void TestWildcardClusterGlobalAttributeNotInMetadata(nlTestSuite * apSuite, void * apContext)
+TEST(TestAttributePathExpandIterator, TestWildcardClusterGlobalAttributeNotInMetadata)
{
SingleLinkedListNode<app::AttributePathParams> clusInfo;
- clusInfo.mValue.mEndpointId = Test::kMockEndpoint3;
+ clusInfo.mValue.mEndpointId = chip::Test::kMockEndpoint3;
clusInfo.mValue.mAttributeId = app::Clusters::Globals::Attributes::AttributeList::Id;
app::ConcreteAttributePath path;
@@ -211,17 +214,18 @@
{
ChipLogDetail(AppServer, "Visited Attribute: 0x%04X / " ChipLogFormatMEI " / " ChipLogFormatMEI, path.mEndpointId,
ChipLogValueMEI(path.mClusterId), ChipLogValueMEI(path.mAttributeId));
- NL_TEST_ASSERT(apSuite, index < ArraySize(paths) && paths[index] == path);
+ EXPECT_LT(index, ArraySize(paths));
+ EXPECT_EQ(paths[index], path);
index++;
}
- NL_TEST_ASSERT(apSuite, index == ArraySize(paths));
+ EXPECT_EQ(index, ArraySize(paths));
}
-void TestWildcardAttribute(nlTestSuite * apSuite, void * apContext)
+TEST(TestAttributePathExpandIterator, TestWildcardAttribute)
{
SingleLinkedListNode<app::AttributePathParams> clusInfo;
- clusInfo.mValue.mEndpointId = Test::kMockEndpoint2;
- clusInfo.mValue.mClusterId = Test::MockClusterId(3);
+ clusInfo.mValue.mEndpointId = chip::Test::kMockEndpoint2;
+ clusInfo.mValue.mClusterId = chip::Test::MockClusterId(3);
app::ConcreteAttributePath path;
P paths[] = {
@@ -244,18 +248,19 @@
{
ChipLogDetail(AppServer, "Visited Attribute: 0x%04X / " ChipLogFormatMEI " / " ChipLogFormatMEI, path.mEndpointId,
ChipLogValueMEI(path.mClusterId), ChipLogValueMEI(path.mAttributeId));
- NL_TEST_ASSERT(apSuite, index < ArraySize(paths) && paths[index] == path);
+ EXPECT_LT(index, ArraySize(paths));
+ EXPECT_EQ(paths[index], path);
index++;
}
- NL_TEST_ASSERT(apSuite, index == ArraySize(paths));
+ EXPECT_EQ(index, ArraySize(paths));
}
-void TestNoWildcard(nlTestSuite * apSuite, void * apContext)
+TEST(TestAttributePathExpandIterator, TestNoWildcard)
{
SingleLinkedListNode<app::AttributePathParams> clusInfo;
- clusInfo.mValue.mEndpointId = Test::kMockEndpoint2;
- clusInfo.mValue.mClusterId = Test::MockClusterId(3);
- clusInfo.mValue.mAttributeId = Test::MockAttributeId(3);
+ clusInfo.mValue.mEndpointId = chip::Test::kMockEndpoint2;
+ clusInfo.mValue.mClusterId = chip::Test::MockClusterId(3);
+ clusInfo.mValue.mAttributeId = chip::Test::MockAttributeId(3);
app::ConcreteAttributePath path;
P paths[] = {
@@ -268,33 +273,34 @@
{
ChipLogDetail(AppServer, "Visited Attribute: 0x%04X / " ChipLogFormatMEI " / " ChipLogFormatMEI, path.mEndpointId,
ChipLogValueMEI(path.mClusterId), ChipLogValueMEI(path.mAttributeId));
- NL_TEST_ASSERT(apSuite, index < ArraySize(paths) && paths[index] == path);
+ EXPECT_LT(index, ArraySize(paths));
+ EXPECT_EQ(paths[index], path);
index++;
}
- NL_TEST_ASSERT(apSuite, index == ArraySize(paths));
+ EXPECT_EQ(index, ArraySize(paths));
}
-void TestMultipleClusInfo(nlTestSuite * apSuite, void * apContext)
+TEST(TestAttributePathExpandIterator, TestMultipleClusInfo)
{
SingleLinkedListNode<app::AttributePathParams> clusInfo1;
SingleLinkedListNode<app::AttributePathParams> clusInfo2;
- clusInfo2.mValue.mClusterId = Test::MockClusterId(3);
- clusInfo2.mValue.mAttributeId = Test::MockAttributeId(3);
+ clusInfo2.mValue.mClusterId = chip::Test::MockClusterId(3);
+ clusInfo2.mValue.mAttributeId = chip::Test::MockAttributeId(3);
SingleLinkedListNode<app::AttributePathParams> clusInfo3;
- clusInfo3.mValue.mEndpointId = Test::kMockEndpoint3;
+ clusInfo3.mValue.mEndpointId = chip::Test::kMockEndpoint3;
clusInfo3.mValue.mAttributeId = app::Clusters::Globals::Attributes::ClusterRevision::Id;
SingleLinkedListNode<app::AttributePathParams> clusInfo4;
- clusInfo4.mValue.mEndpointId = Test::kMockEndpoint2;
- clusInfo4.mValue.mClusterId = Test::MockClusterId(3);
+ clusInfo4.mValue.mEndpointId = chip::Test::kMockEndpoint2;
+ clusInfo4.mValue.mClusterId = chip::Test::MockClusterId(3);
SingleLinkedListNode<app::AttributePathParams> clusInfo5;
- clusInfo5.mValue.mEndpointId = Test::kMockEndpoint2;
- clusInfo5.mValue.mClusterId = Test::MockClusterId(3);
- clusInfo5.mValue.mAttributeId = Test::MockAttributeId(3);
+ clusInfo5.mValue.mEndpointId = chip::Test::kMockEndpoint2;
+ clusInfo5.mValue.mClusterId = chip::Test::MockClusterId(3);
+ clusInfo5.mValue.mAttributeId = chip::Test::MockAttributeId(3);
clusInfo1.mpNext = &clusInfo2;
clusInfo2.mpNext = &clusInfo3;
@@ -411,60 +417,11 @@
{
ChipLogDetail(AppServer, "Visited Attribute: 0x%04X / " ChipLogFormatMEI " / " ChipLogFormatMEI, path.mEndpointId,
ChipLogValueMEI(path.mClusterId), ChipLogValueMEI(path.mAttributeId));
- NL_TEST_ASSERT(apSuite, index < ArraySize(paths) && paths[index] == path);
+ EXPECT_LT(index, ArraySize(paths));
+ EXPECT_EQ(paths[index], path);
index++;
}
- NL_TEST_ASSERT(apSuite, index == ArraySize(paths));
+ EXPECT_EQ(index, ArraySize(paths));
}
-static int TestSetup(void * inContext)
-{
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-static int TestTeardown(void * inContext)
-{
- return SUCCESS;
-}
-
-/**
- * Test Suite. It lists all the test functions.
- */
-
-// clang-format off
-const nlTest sTests[] =
-{
- NL_TEST_DEF("TestAllWildcard", TestAllWildcard),
- NL_TEST_DEF("TestWildcardEndpoint", TestWildcardEndpoint),
- NL_TEST_DEF("TestWildcardCluster", TestWildcardCluster),
- NL_TEST_DEF("TestWildcardClusterGlobalAttributeNotInMetadata",
- TestWildcardClusterGlobalAttributeNotInMetadata),
- NL_TEST_DEF("TestWildcardAttribute", TestWildcardAttribute),
- NL_TEST_DEF("TestNoWildcard", TestNoWildcard),
- NL_TEST_DEF("TestMultipleClusInfo", TestMultipleClusInfo),
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
-// clang-format off
-nlTestSuite sSuite =
-{
- "TestAttributePathExpandIterator",
- &sTests[0],
- TestSetup,
- TestTeardown,
-};
-// clang-format on
-
} // namespace
-
-int TestAttributePathExpandIterator()
-{
- nlTestRunner(&sSuite, nullptr);
- return (nlTestRunnerStats(&sSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestAttributePathExpandIterator)
diff --git a/src/app/tests/TestAttributePersistenceProvider.cpp b/src/app/tests/TestAttributePersistenceProvider.cpp
index 9c75715..7ae40b5 100644
--- a/src/app/tests/TestAttributePersistenceProvider.cpp
+++ b/src/app/tests/TestAttributePersistenceProvider.cpp
@@ -16,17 +16,11 @@
* limitations under the License.
*/
-/**
- * @file
- * This file implements unit tests for AttributePersistenceProvider
- *
- */
-
#include <app-common/zap-generated/cluster-objects.h>
#include <app/DefaultAttributePersistenceProvider.h>
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/support/TestPersistentStorageDelegate.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
+#include <pw_unit_test/framework.h>
using namespace chip;
using namespace chip::app;
@@ -36,48 +30,36 @@
namespace {
-/**
- * Set up the test suite.
- */
-int Test_Setup(void * inContext)
+class TestAttributePersistenceProvider : public ::testing::Test
{
- CHIP_ERROR error = chip::Platform::MemoryInit();
- VerifyOrReturnError(error == CHIP_NO_ERROR, FAILURE);
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-int Test_Teardown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
/**
* Tests the storage and retrival of data from the KVS as ByteSpan
*/
-void TestStorageAndRetrivalByteSpans(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestAttributePersistenceProvider, TestStorageAndRetrivalByteSpans)
{
TestPersistentStorageDelegate storageDelegate;
DefaultAttributePersistenceProvider persistenceProvider;
// Init
ChipError err = persistenceProvider.Init(&storageDelegate);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Store ByteSpan of size 1
uint8_t valueArray[1] = { 0x42 };
ByteSpan value(valueArray);
err = persistenceProvider.SafeWriteValue(TestConcretePath, value);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint8_t getArray[1];
MutableByteSpan valueReadBack(getArray);
err = persistenceProvider.SafeReadValue(TestConcretePath, valueReadBack);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, std::equal(valueReadBack.begin(), valueReadBack.end(), value.begin(), value.end()));
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(std::equal(valueReadBack.begin(), valueReadBack.end(), value.begin(), value.end()));
// Finishing
persistenceProvider.Shutdown();
@@ -89,17 +71,16 @@
* @param testValue The test value to store and retrieve
*/
template <typename T>
-void testHelperStorageAndRetrivalScalarValues(nlTestSuite * inSuite, DefaultAttributePersistenceProvider & persistenceProvider,
- T testValue)
+void testHelperStorageAndRetrivalScalarValues(DefaultAttributePersistenceProvider & persistenceProvider, T testValue)
{
CHIP_ERROR err = persistenceProvider.WriteScalarValue(TestConcretePath, testValue);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
T valueReadBack = 0;
err = persistenceProvider.ReadScalarValue(TestConcretePath, valueReadBack);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, valueReadBack == testValue);
+ EXPECT_EQ(valueReadBack, testValue);
}
/**
@@ -108,55 +89,55 @@
* @param testValue The test value to store and retrieve
*/
template <typename T>
-void testHelperStorageAndRetrivalScalarValues(nlTestSuite * inSuite, DefaultAttributePersistenceProvider & persistenceProvider,
+void testHelperStorageAndRetrivalScalarValues(DefaultAttributePersistenceProvider & persistenceProvider,
DataModel::Nullable<T> testValue)
{
CHIP_ERROR err = persistenceProvider.WriteScalarValue(TestConcretePath, testValue);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DataModel::Nullable<T> valueReadBack(0);
err = persistenceProvider.ReadScalarValue(TestConcretePath, valueReadBack);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, valueReadBack == testValue);
+ EXPECT_EQ(valueReadBack, testValue);
}
/**
* Tests the storage and retrival of data from the KVS of types bool, uint8_t, uint16_t, uint32_t, uint64_t.
*/
-void TestStorageAndRetrivalScalarValues(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestAttributePersistenceProvider, TestStorageAndRetrivalScalarValues)
{
TestPersistentStorageDelegate storageDelegate;
DefaultAttributePersistenceProvider persistenceProvider;
// Init
CHIP_ERROR err = persistenceProvider.Init(&storageDelegate);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Test bool
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, bool(true));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, bool(false));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, bool(true));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, bool(true));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, bool(false));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, bool(true));
// Test uint8_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint8_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint8_t(42));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint8_t(0xff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint8_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint8_t(42));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint8_t(0xff));
// Test uint16_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint16_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint16_t(0x0101));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint16_t(0xffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint16_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint16_t(0x0101));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint16_t(0xffff));
// Test uint32_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint32_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint32_t(0x01ffff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint32_t(0xffffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint32_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint32_t(0x01ffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint32_t(0xffffffff));
// Test uint64_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint64_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint64_t(0x0100000001));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, uint64_t(0xffffffffffffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint64_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint64_t(0x0100000001));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, uint64_t(0xffffffffffffffff));
// Finishing
persistenceProvider.Shutdown();
@@ -165,34 +146,34 @@
/**
* Tests the storage and retrival of data from the KVS of types int8_t, int16_t, int32_t, int64_t.
*/
-void TestStorageAndRetrivalSignedScalarValues(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestAttributePersistenceProvider, TestStorageAndRetrivalSignedScalarValues)
{
TestPersistentStorageDelegate storageDelegate;
DefaultAttributePersistenceProvider persistenceProvider;
// Init
CHIP_ERROR err = persistenceProvider.Init(&storageDelegate);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Test int8_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int8_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int8_t(42));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int8_t(-127));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int8_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int8_t(42));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int8_t(-127));
// Test int16_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int16_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int16_t(0x7fff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int16_t(0x8000));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int16_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int16_t(0x7fff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int16_t(0x8000));
// Test int32_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int32_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int32_t(0x7fffffff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int32_t(0x80000000));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int32_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int32_t(0x7fffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int32_t(0x80000000));
// Test int64_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int64_t(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int64_t(0x7fffffffffffffff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, int64_t(0x8000000000000000));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int64_t(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int64_t(0x7fffffffffffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, int64_t(0x8000000000000000));
// Finishing
persistenceProvider.Shutdown();
@@ -201,54 +182,54 @@
/**
* Tests the storage and retrival of data from the KVS of DataModel::Nullable types bool, uint8_t, uint16_t, uint32_t, uint64_t.
*/
-void TestStorageAndRetrivalNullableScalarValues(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestAttributePersistenceProvider, TestStorageAndRetrivalNullableScalarValues)
{
TestPersistentStorageDelegate storageDelegate;
DefaultAttributePersistenceProvider persistenceProvider;
// Init
CHIP_ERROR err = persistenceProvider.Init(&storageDelegate);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Test bool
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<bool>(true));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<bool>(false));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<bool>(true));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<bool>(true));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<bool>(false));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<bool>(true));
auto nullValBool = DataModel::Nullable<bool>();
nullValBool.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullValBool);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullValBool);
// Test uint8_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint8_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint8_t>(42));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint8_t>(0xfe));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint8_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint8_t>(42));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint8_t>(0xfe));
auto nullVal8 = DataModel::Nullable<uint8_t>();
nullVal8.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal8);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal8);
// Test uint16_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint16_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint16_t>(0x0101));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint16_t>(0xfffe));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint16_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint16_t>(0x0101));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint16_t>(0xfffe));
auto nullVal16 = DataModel::Nullable<uint16_t>();
nullVal16.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal16);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal16);
// Test uint32_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint32_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint32_t>(0x01ffff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint32_t>(0xfffffffe));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint32_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint32_t>(0x01ffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint32_t>(0xfffffffe));
auto nullVal32 = DataModel::Nullable<uint32_t>();
nullVal32.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal32);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal32);
// Test uint64_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint64_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint64_t>(0x0100000001));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<uint64_t>(0xfffffffffffffffe));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint64_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint64_t>(0x0100000001));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<uint64_t>(0xfffffffffffffffe));
auto nullVal64 = DataModel::Nullable<uint64_t>();
nullVal64.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal64);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal64);
// Finishing
persistenceProvider.Shutdown();
@@ -257,46 +238,46 @@
/**
* Tests the storage and retrival of data from the KVS of DataModel::Nullable types int8_t, int16_t, int32_t, int64_t.
*/
-void TestStorageAndRetrivalSignedNullableScalarValues(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestAttributePersistenceProvider, TestStorageAndRetrivalSignedNullableScalarValues)
{
TestPersistentStorageDelegate storageDelegate;
DefaultAttributePersistenceProvider persistenceProvider;
// Init
CHIP_ERROR err = persistenceProvider.Init(&storageDelegate);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Test int8_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int8_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int8_t>(42));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int8_t>(-127));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int8_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int8_t>(42));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int8_t>(-127));
auto nullVal8 = DataModel::Nullable<int8_t>();
nullVal8.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal8);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal8);
// Test int16_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int16_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int16_t>(0x7fff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int16_t>(-0x7fff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int16_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int16_t>(0x7fff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int16_t>(-0x7fff));
auto nullVal16 = DataModel::Nullable<int16_t>();
nullVal16.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal16);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal16);
// Test int32_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int32_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int32_t>(0x7fffffff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int32_t>(-0x7fffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int32_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int32_t>(0x7fffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int32_t>(-0x7fffffff));
auto nullVal32 = DataModel::Nullable<int32_t>();
nullVal32.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal32);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal32);
// Test int64_t
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int64_t>(0));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int64_t>(0x7fffffffffffffff));
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, DataModel::Nullable<int64_t>(-0x7fffffffffffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int64_t>(0));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int64_t>(0x7fffffffffffffff));
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, DataModel::Nullable<int64_t>(-0x7fffffffffffffff));
auto nullVal64 = DataModel::Nullable<int64_t>();
nullVal64.SetNull();
- testHelperStorageAndRetrivalScalarValues(inSuite, persistenceProvider, nullVal64);
+ testHelperStorageAndRetrivalScalarValues(persistenceProvider, nullVal64);
// Finishing
persistenceProvider.Shutdown();
@@ -305,85 +286,62 @@
/**
* Test that the correct error is given when trying to read a value with a buffer that's too small.
*/
-void TestBufferTooSmallErrors(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestAttributePersistenceProvider, TestBufferTooSmallErrors)
{
TestPersistentStorageDelegate storageDelegate;
DefaultAttributePersistenceProvider persistenceProvider;
// Init
CHIP_ERROR err = persistenceProvider.Init(&storageDelegate);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Store large data
uint8_t valueArray[9] = { 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42 };
ByteSpan value(valueArray);
err = persistenceProvider.SafeWriteValue(TestConcretePath, value);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Confirm the daya is there
uint8_t getArray[9];
MutableByteSpan valueReadBack(getArray);
err = persistenceProvider.SafeReadValue(TestConcretePath, valueReadBack);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, std::equal(valueReadBack.begin(), valueReadBack.end(), value.begin(), value.end()));
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(std::equal(valueReadBack.begin(), valueReadBack.end(), value.begin(), value.end()));
// Fail to get data as ByteSpace of size 0
uint8_t getArray0[0];
MutableByteSpan valueReadBackByteSpan0(getArray0, 0);
err = persistenceProvider.SafeReadValue(TestConcretePath, valueReadBackByteSpan0);
- NL_TEST_ASSERT(inSuite, err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_EQ(err, CHIP_ERROR_BUFFER_TOO_SMALL);
// Fail to get data as ByteSpace of size > 0 but < required
uint8_t getArray8[8];
MutableByteSpan valueReadBackByteSpan8(getArray8, sizeof(getArray8));
err = persistenceProvider.SafeReadValue(TestConcretePath, valueReadBackByteSpan8);
- NL_TEST_ASSERT(inSuite, err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_EQ(err, CHIP_ERROR_BUFFER_TOO_SMALL);
// Fail to get value as uint8_t
uint8_t valueReadBack8;
err = persistenceProvider.ReadScalarValue(TestConcretePath, valueReadBack8);
- NL_TEST_ASSERT(inSuite, err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_EQ(err, CHIP_ERROR_BUFFER_TOO_SMALL);
// Fail to get value as uint16_t
uint16_t valueReadBack16;
err = persistenceProvider.ReadScalarValue(TestConcretePath, valueReadBack16);
- NL_TEST_ASSERT(inSuite, err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_EQ(err, CHIP_ERROR_BUFFER_TOO_SMALL);
// Fail to get value as uint32_t
uint32_t valueReadBack32;
err = persistenceProvider.ReadScalarValue(TestConcretePath, valueReadBack32);
- NL_TEST_ASSERT(inSuite, err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_EQ(err, CHIP_ERROR_BUFFER_TOO_SMALL);
// Fail to get value as uint64_t
uint64_t valueReadBack64;
err = persistenceProvider.ReadScalarValue(TestConcretePath, valueReadBack64);
- NL_TEST_ASSERT(inSuite, err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_EQ(err, CHIP_ERROR_BUFFER_TOO_SMALL);
// Finishing
persistenceProvider.Shutdown();
}
} // anonymous namespace
-
-namespace {
-const nlTest sTests[] = {
- NL_TEST_DEF("Storage and retrival of ByteSpans", TestStorageAndRetrivalByteSpans),
- NL_TEST_DEF("Storage and retrival of unsigned scalar values", TestStorageAndRetrivalScalarValues),
- NL_TEST_DEF("Storage and retrival of signed scalar values", TestStorageAndRetrivalSignedScalarValues),
- NL_TEST_DEF("Storage and retrival of unsigned nullable scalar values", TestStorageAndRetrivalNullableScalarValues),
- NL_TEST_DEF("Storage and retrival of signed nullable scalar values", TestStorageAndRetrivalSignedNullableScalarValues),
- NL_TEST_DEF("Small buffer errors", TestBufferTooSmallErrors),
- NL_TEST_SENTINEL()
-};
-}
-
-int TestAttributePersistenceProvider()
-{
- nlTestSuite theSuite = { "AttributePersistenceProvider", &sTests[0], Test_Setup, Test_Teardown };
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestAttributePersistenceProvider)
diff --git a/src/app/tests/TestAttributeValueDecoder.cpp b/src/app/tests/TestAttributeValueDecoder.cpp
index c257385..b48cd23 100644
--- a/src/app/tests/TestAttributeValueDecoder.cpp
+++ b/src/app/tests/TestAttributeValueDecoder.cpp
@@ -16,18 +16,13 @@
* limitations under the License.
*/
-/**
- * @file
- * This file implements unit tests for CommandPathParams
- *
- */
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
#include <app-common/zap-generated/cluster-objects.h>
#include <app/AttributeValueDecoder.h>
#include <app/MessageDef/AttributeDataIB.h>
#include <lib/support/CodeUtils.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
using namespace chip;
using namespace chip::app;
@@ -62,7 +57,7 @@
TLVWriter writer;
};
-void TestOverwriteFabricIndexInStruct(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueDecoder, TestOverwriteFabricIndexInStruct)
{
TestSetup setup;
CHIP_ERROR err;
@@ -73,29 +68,29 @@
item.fabricIndex = 0;
err = setup.Encode(item);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
TLV::TLVReader reader;
TLVType ignored;
reader.Init(setup.buf, setup.writer.GetLengthWritten());
err = reader.Next();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.EnterContainer(ignored);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Next();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
AttributeValueDecoder decoder(reader, subjectDescriptor);
err = decoder.Decode(decodeItem);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, decodeItem.fabricIndex == kTestFabricIndex);
+ EXPECT_EQ(decodeItem.fabricIndex, kTestFabricIndex);
}
-void TestOverwriteFabricIndexInListOfStructs(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueDecoder, TestOverwriteFabricIndexInListOfStructs)
{
TestSetup setup;
CHIP_ERROR err;
@@ -109,7 +104,7 @@
}
err = setup.Encode(DataModel::List<Clusters::AccessControl::Structs::AccessControlExtensionStruct::Type>(items));
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
TLV::TLVReader reader;
TLVType ignored;
@@ -118,44 +113,27 @@
reader.Init(setup.buf, setup.writer.GetLengthWritten());
err = reader.Next();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.EnterContainer(ignored);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Next();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
AttributeValueDecoder decoder(reader, subjectDescriptor);
err = decoder.Decode(decodeItems);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = decodeItems.ComputeSize(&decodeCount);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, decodeCount == kTestListElements);
+ EXPECT_EQ(decodeCount, kTestListElements);
for (auto iter = decodeItems.begin(); iter.Next();)
{
const auto & entry = iter.GetValue();
- NL_TEST_ASSERT(aSuite, entry.fabricIndex == kTestFabricIndex);
+ EXPECT_EQ(entry.fabricIndex, kTestFabricIndex);
}
}
} // anonymous namespace
-
-namespace {
-const nlTest sTests[] = { NL_TEST_DEF("TestOverwriteFabricIndexInStruct", TestOverwriteFabricIndexInStruct),
- NL_TEST_DEF("TestOverwriteFabricIndexInListOfStructs", TestOverwriteFabricIndexInListOfStructs),
- NL_TEST_SENTINEL() };
-}
-
-int TestAttributeValueDecoder()
-{
- nlTestSuite theSuite = { "AttributeValueDecoder", &sTests[0], nullptr, nullptr };
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestAttributeValueDecoder)
diff --git a/src/app/tests/TestAttributeValueEncoder.cpp b/src/app/tests/TestAttributeValueEncoder.cpp
index 085c4f8..43a015d 100644
--- a/src/app/tests/TestAttributeValueEncoder.cpp
+++ b/src/app/tests/TestAttributeValueEncoder.cpp
@@ -16,11 +16,10 @@
* limitations under the License.
*/
-/**
- * @file
- * This file implements unit tests for CommandPathParams
- *
- */
+#include <optional>
+
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
#include <app-common/zap-generated/cluster-objects.h>
#include <app/AttributeValueEncoder.h>
@@ -30,10 +29,6 @@
#include <lib/core/TLVTags.h>
#include <lib/core/TLVWriter.h>
#include <lib/support/CodeUtils.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
-
-#include <optional>
using namespace chip;
using namespace chip::app;
@@ -75,7 +70,7 @@
template <size_t N>
struct LimitedTestSetup
{
- LimitedTestSetup(nlTestSuite * aSuite, const FabricIndex aFabricIndex = kUndefinedFabricIndex,
+ LimitedTestSetup(const FabricIndex aFabricIndex = kUndefinedFabricIndex,
const AttributeEncodeState & aState = AttributeEncodeState()) :
encoder(builder, DescriptorWithFabric(aFabricIndex),
ConcreteAttributePath(kRandomEndpointId, kRandomClusterId, kRandomAttributeId), kRandomDataVersion,
@@ -85,11 +80,11 @@
{
TLVType ignored;
CHIP_ERROR err = writer.StartContainer(AnonymousTag(), kTLVType_Structure, ignored);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
{
CHIP_ERROR err = builder.Init(&writer, 1);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
}
@@ -103,11 +98,11 @@
// Macro so we get better error reporting in terms of which test failed, because
// the reporting uses __LINE__.
-#define VERIFY_BUFFER_STATE(aSuite, aSetup, aExpected) \
+#define VERIFY_BUFFER_STATE(aSetup, aExpected) \
do \
{ \
- NL_TEST_ASSERT(aSuite, aSetup.writer.GetLengthWritten() == sizeof(aExpected)); \
- NL_TEST_ASSERT(aSuite, memcmp(aSetup.buf, aExpected, sizeof(aExpected)) == 0); \
+ EXPECT_EQ(aSetup.writer.GetLengthWritten(), sizeof(aExpected)); \
+ EXPECT_EQ(memcmp(aSetup.buf, aExpected, sizeof(aExpected)), 0); \
if (aSetup.writer.GetLengthWritten() != sizeof(aExpected) || memcmp(aSetup.buf, aExpected, sizeof(aExpected)) != 0) \
{ \
printf("Encoded: \n"); \
@@ -125,19 +120,19 @@
} \
} while (0)
-void TestEncodeNothing(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeNothing)
{
- TestSetup test(aSuite);
+ TestSetup test{};
// Just have an anonymous struct marker, and the AttributeReportIBs opened.
const uint8_t expected[] = { 0x15, 0x36, 0x01 };
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
-void TestEncodeBool(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeBool)
{
- TestSetup test(aSuite);
+ TestSetup test{};
CHIP_ERROR err = test.encoder.Encode(true);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
0x15, 0x36, 0x01, // Test overhead, Start Anonymous struct + Start 1 byte Tag Array + Tag (01)
@@ -154,15 +149,15 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
-void TestEncodeListOfBools1(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeListOfBools1)
{
- TestSetup test(aSuite);
+ TestSetup test{};
bool list[] = { true, false };
CHIP_ERROR err = test.encoder.Encode(DataModel::List<bool>(list));
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
0x15, 0x36, 0x01, // Test overhead, Start Anonymous struct + Start 1 byte Tag Array + Tag (01)
@@ -182,12 +177,12 @@
0x18, // End of attribute structure
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
-void TestEncodeListOfBools2(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeListOfBools2)
{
- TestSetup test(aSuite);
+ TestSetup test{};
bool list[] = { true, false };
CHIP_ERROR err = test.encoder.EncodeList([&list](const auto & encoder) -> CHIP_ERROR {
for (auto & item : list)
@@ -196,7 +191,7 @@
}
return CHIP_NO_ERROR;
});
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
0x15, 0x36, 0x01, // Test overhead, Start Anonymous struct + Start 1 byte Tag Array + Tag (01)
@@ -216,7 +211,7 @@
0x18, // End of attribute structure
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
constexpr uint8_t emptyListExpected[] = {
@@ -238,25 +233,25 @@
// clang-format on
};
-void TestEncodeEmptyList1(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeEmptyList1)
{
- TestSetup test(aSuite);
+ TestSetup test{};
CHIP_ERROR err = test.encoder.EncodeList([](const auto & encoder) -> CHIP_ERROR { return CHIP_NO_ERROR; });
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
- VERIFY_BUFFER_STATE(aSuite, test, emptyListExpected);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ VERIFY_BUFFER_STATE(test, emptyListExpected);
}
-void TestEncodeEmptyList2(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeEmptyList2)
{
- TestSetup test(aSuite);
+ TestSetup test{};
CHIP_ERROR err = test.encoder.EncodeEmptyList();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
- VERIFY_BUFFER_STATE(aSuite, test, emptyListExpected);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ VERIFY_BUFFER_STATE(test, emptyListExpected);
}
-void TestEncodeFabricScoped(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeFabricScoped)
{
- TestSetup test(aSuite, kTestFabricIndex);
+ TestSetup test(kTestFabricIndex);
Clusters::AccessControl::Structs::AccessControlExtensionStruct::Type items[3];
items[0].fabricIndex = 1;
items[1].fabricIndex = 2;
@@ -270,7 +265,7 @@
}
return CHIP_NO_ERROR;
});
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
0x15, 0x36, 0x01, // Test overhead, Start Anonymous struct + Start 1 byte Tag Array + Tag (01)
@@ -292,10 +287,10 @@
0x18, // End of attribute structure
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
-void TestEncodeListChunking(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeListChunking)
{
AttributeEncodeState state;
@@ -316,9 +311,9 @@
// corresponding to the "test overhead" container starts. But TLVWriter automatically
// reserves space when containers are opened, so we have to have enough space to have
// encoded those last two close containers.
- LimitedTestSetup<30> test1(aSuite, kTestFabricIndex);
+ LimitedTestSetup<30> test1(kTestFabricIndex);
CHIP_ERROR err = test1.encoder.EncodeList(listEncoder);
- NL_TEST_ASSERT(aSuite, err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_TRUE(err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
state = test1.encoder.GetState();
const uint8_t expected[] = {
@@ -340,14 +335,14 @@
0x18, // End of attribute structure
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test1, expected);
+ VERIFY_BUFFER_STATE(test1, expected);
}
{
// Use 30 bytes buffer to force chunking after the second "false". The kTestFabricIndex is
// not effective in this test.
- LimitedTestSetup<30> test2(aSuite, 0, state);
+ LimitedTestSetup<30> test2(0, state);
CHIP_ERROR err = test2.encoder.EncodeList(listEncoder);
- NL_TEST_ASSERT(aSuite, err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_TRUE(err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
state = test2.encoder.GetState();
const uint8_t expected[] = {
@@ -367,13 +362,13 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test2, expected);
+ VERIFY_BUFFER_STATE(test2, expected);
}
{
// Allow encoding everything else. The kTestFabricIndex is not effective in this test.
- TestSetup test3(aSuite, 0, state);
+ TestSetup test3(0, state);
CHIP_ERROR err = test3.encoder.EncodeList(listEncoder);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
@@ -416,11 +411,11 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test3, expected);
+ VERIFY_BUFFER_STATE(test3, expected);
}
}
-void TestEncodeListChunking2(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeListChunking2)
{
AttributeEncodeState state;
@@ -441,9 +436,9 @@
// corresponding to the "test overhead" container starts. But TLVWriter automatically
// reserves space when containers are opened, so we have to have enough space to have
// encoded those last two close containers.
- LimitedTestSetup<28> test1(aSuite, kTestFabricIndex);
+ LimitedTestSetup<28> test1(kTestFabricIndex);
CHIP_ERROR err = test1.encoder.EncodeList(listEncoder);
- NL_TEST_ASSERT(aSuite, err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_TRUE(err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
state = test1.encoder.GetState();
const uint8_t expected[] = {
@@ -463,14 +458,14 @@
0x18, // End of attribute structure
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test1, expected);
+ VERIFY_BUFFER_STATE(test1, expected);
}
{
// Use 30 bytes buffer to force chunking after the first "true". The kTestFabricIndex is not
// effective in this test.
- LimitedTestSetup<30> test2(aSuite, 0, state);
+ LimitedTestSetup<30> test2(0, state);
CHIP_ERROR err = test2.encoder.EncodeList(listEncoder);
- NL_TEST_ASSERT(aSuite, err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_TRUE(err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
state = test2.encoder.GetState();
const uint8_t expected[] = {
@@ -490,14 +485,14 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test2, expected);
+ VERIFY_BUFFER_STATE(test2, expected);
}
{
// Use 60 bytes buffer to force chunking after the second "false". The kTestFabricIndex is not
// effective in this test.
- LimitedTestSetup<60> test3(aSuite, 0, state);
+ LimitedTestSetup<60> test3(0, state);
CHIP_ERROR err = test3.encoder.EncodeList(listEncoder);
- NL_TEST_ASSERT(aSuite, err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
+ EXPECT_TRUE(err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL);
state = test3.encoder.GetState();
const uint8_t expected[] = {
@@ -529,13 +524,13 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test3, expected);
+ VERIFY_BUFFER_STATE(test3, expected);
}
{
// Allow encoding everything else. The kTestFabricIndex is not effective in this test.
- TestSetup test4(aSuite, 0, state);
+ TestSetup test4(0, state);
CHIP_ERROR err = test4.encoder.EncodeList(listEncoder);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
@@ -578,27 +573,27 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test4, expected);
+ VERIFY_BUFFER_STATE(test4, expected);
}
}
-void TestEncodePreEncoded(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodePreEncoded)
{
- TestSetup test(aSuite);
+ TestSetup test{};
uint8_t buffer[128];
TLV::TLVWriter writer;
writer.Init(buffer);
// Use a random tag that is not the right tag.
CHIP_ERROR err = writer.PutString(TLV::ProfileTag(0x1234abcd, 0x5678fedc), "hello");
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Finalize();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
ByteSpan value(buffer, writer.GetLengthWritten());
err = test.encoder.Encode(DataModel::PreEncodedValue(value));
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
@@ -616,12 +611,12 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
-void TestEncodeListOfPreEncoded(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeListOfPreEncoded)
{
- TestSetup test(aSuite);
+ TestSetup test{};
uint8_t buffers[2][128];
std::optional<DataModel::PreEncodedValue> values[2];
@@ -631,10 +626,10 @@
writer.Init(buffers[0]);
// Use a random tag that is not the right tag.
CHIP_ERROR err = writer.PutString(TLV::ProfileTag(0x1234abcd, 0x5678fedc), "hello");
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Finalize();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
values[0].emplace(ByteSpan(buffers[0], writer.GetLengthWritten()));
}
@@ -644,10 +639,10 @@
writer.Init(buffers[1]);
// Use a random tag that is not the right tag.
CHIP_ERROR err = writer.PutString(TLV::ProfileTag(0x1234abcd, 0x00010002), "bye");
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Finalize();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
values[1].emplace(ByteSpan(buffers[1], writer.GetLengthWritten()));
}
@@ -659,7 +654,7 @@
}
return CHIP_NO_ERROR;
});
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
@@ -680,12 +675,12 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
-void TestEncodeListOfFabricScopedPreEncoded(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeListOfFabricScopedPreEncoded)
{
- TestSetup test(aSuite);
+ TestSetup test{};
uint8_t buffers[2][128];
std::optional<DataModel::FabricScopedPreEncodedValue> values[2];
@@ -697,19 +692,19 @@
TLV::TLVType outerContainerType;
CHIP_ERROR err =
writer.StartContainer(TLV::ProfileTag(0x1234abcd, 0x5678fedc), TLV::kTLVType_Structure, outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.PutString(TLV::ContextTag(7), "hello");
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Put(kFabricIndexTag, kTestFabricIndex);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.EndContainer(outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Finalize();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
values[0].emplace(ByteSpan(buffers[0], writer.GetLengthWritten()));
}
@@ -721,19 +716,19 @@
TLV::TLVType outerContainerType;
CHIP_ERROR err =
writer.StartContainer(TLV::ProfileTag(0x1234abcd, 0x00010002), TLV::kTLVType_Structure, outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.PutString(TLV::ContextTag(7), "bye");
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Put(kFabricIndexTag, static_cast<FabricIndex>(kTestFabricIndex + 1));
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.EndContainer(outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Finalize();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
values[1].emplace(ByteSpan(buffers[1], writer.GetLengthWritten()));
}
@@ -745,7 +740,7 @@
}
return CHIP_NO_ERROR;
});
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
@@ -772,12 +767,12 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
-void TestEncodeFabricFilteredListOfPreEncoded(nlTestSuite * aSuite, void * aContext)
+TEST(TestAttributeValueEncoder, TestEncodeFabricFilteredListOfPreEncoded)
{
- TestSetup test(aSuite, kTestFabricIndex);
+ TestSetup test(kTestFabricIndex);
uint8_t buffers[2][128];
std::optional<DataModel::FabricScopedPreEncodedValue> values[2];
@@ -789,19 +784,19 @@
TLV::TLVType outerContainerType;
CHIP_ERROR err =
writer.StartContainer(TLV::ProfileTag(0x1234abcd, 0x5678fedc), TLV::kTLVType_Structure, outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.PutString(TLV::ContextTag(7), "hello");
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Put(kFabricIndexTag, kTestFabricIndex);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.EndContainer(outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Finalize();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
values[0].emplace(ByteSpan(buffers[0], writer.GetLengthWritten()));
}
@@ -813,19 +808,19 @@
TLV::TLVType outerContainerType;
CHIP_ERROR err =
writer.StartContainer(TLV::ProfileTag(0x1234abcd, 0x00010002), TLV::kTLVType_Structure, outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.PutString(TLV::ContextTag(7), "bye");
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Put(kFabricIndexTag, static_cast<FabricIndex>(kTestFabricIndex + 1));
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.EndContainer(outerContainerType);
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writer.Finalize();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
values[1].emplace(ByteSpan(buffers[1], writer.GetLengthWritten()));
}
@@ -837,7 +832,7 @@
}
return CHIP_NO_ERROR;
});
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const uint8_t expected[] = {
// clang-format off
@@ -861,42 +856,9 @@
0x18, // End of container
// clang-format on
};
- VERIFY_BUFFER_STATE(aSuite, test, expected);
+ VERIFY_BUFFER_STATE(test, expected);
}
#undef VERIFY_BUFFER_STATE
} // anonymous namespace
-
-namespace {
-const nlTest sTests[] = {
- // clang-format off
- NL_TEST_DEF("TestEncodeNothing", TestEncodeNothing),
- NL_TEST_DEF("TestEncodeBool", TestEncodeBool),
- NL_TEST_DEF("TestEncodeEmptyList1", TestEncodeEmptyList1),
- NL_TEST_DEF("TestEncodeEmptyList2", TestEncodeEmptyList2),
- NL_TEST_DEF("TestEncodeListOfBools1", TestEncodeListOfBools1),
- NL_TEST_DEF("TestEncodeListOfBools2", TestEncodeListOfBools2),
- NL_TEST_DEF("TestEncodeListChunking", TestEncodeListChunking),
- NL_TEST_DEF("TestEncodeListChunking2", TestEncodeListChunking2),
- NL_TEST_DEF("TestEncodeFabricScoped", TestEncodeFabricScoped),
- NL_TEST_DEF("TestEncodePreEncoded", TestEncodePreEncoded),
- NL_TEST_DEF("TestEncodeListOfPreEncoded", TestEncodeListOfPreEncoded),
- NL_TEST_DEF("TestEncodeListFabricScopedPreEncoded", TestEncodeListOfPreEncoded),
- NL_TEST_DEF("TestEncodeListOfFabricScopedPreEncoded", TestEncodeListOfFabricScopedPreEncoded),
- NL_TEST_DEF("TestEncodeFabricFilteredListOfPreEncoded", TestEncodeFabricFilteredListOfPreEncoded),
- NL_TEST_SENTINEL()
- // clang-format on
-};
-}
-
-int TestAttributeValueEncoder()
-{
- nlTestSuite theSuite = { "AttributeValueEncoder", &sTests[0], nullptr, nullptr };
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestAttributeValueEncoder)
diff --git a/src/app/tests/TestBindingTable.cpp b/src/app/tests/TestBindingTable.cpp
index db95408..a4d5d0e 100644
--- a/src/app/tests/TestBindingTable.cpp
+++ b/src/app/tests/TestBindingTable.cpp
@@ -15,122 +15,122 @@
* limitations under the License.
*/
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
+
#include <app/util/binding-table.h>
#include <app/util/config.h>
#include <lib/support/DefaultStorageKeyAllocator.h>
#include <lib/support/TestPersistentStorageDelegate.h>
#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
using chip::BindingTable;
namespace {
-void TestEmptyBindingTable(nlTestSuite * aSuite, void * aContext)
+void VerifyTableSame(BindingTable & table, const std::vector<EmberBindingTableEntry> & expected)
+{
+ ASSERT_EQ(table.Size(), expected.size());
+ auto iter1 = table.begin();
+ auto iter2 = expected.begin();
+ while (iter2 != expected.end())
+ {
+ EXPECT_EQ(*iter1, *iter2);
+ ++iter1;
+ ++iter2;
+ }
+ EXPECT_EQ(iter1, table.end());
+}
+
+void VerifyRestored(chip::TestPersistentStorageDelegate & storage, const std::vector<EmberBindingTableEntry> & expected)
+{
+ BindingTable restoredTable;
+ restoredTable.SetPersistentStorage(&storage);
+ EXPECT_EQ(restoredTable.LoadFromStorage(), CHIP_NO_ERROR);
+ VerifyTableSame(restoredTable, expected);
+}
+
+TEST(TestBindingTable, TestEmptyBindingTable)
{
BindingTable table;
chip::TestPersistentStorageDelegate testStorage;
table.SetPersistentStorage(&testStorage);
- NL_TEST_ASSERT(aSuite, table.Size() == 0);
- NL_TEST_ASSERT(aSuite, table.begin() == table.end());
+ EXPECT_EQ(table.Size(), 0u);
+ EXPECT_EQ(table.begin(), table.end());
}
-void TestAdd(nlTestSuite * aSuite, void * aContext)
+TEST(TestBindingTable, TestAdd)
{
BindingTable table;
chip::TestPersistentStorageDelegate testStorage;
table.SetPersistentStorage(&testStorage);
EmberBindingTableEntry unusedEntry;
unusedEntry.type = MATTER_UNUSED_BINDING;
- NL_TEST_ASSERT(aSuite, table.Add(unusedEntry) == CHIP_ERROR_INVALID_ARGUMENT);
+ EXPECT_EQ(table.Add(unusedEntry), CHIP_ERROR_INVALID_ARGUMENT);
for (uint8_t i = 0; i < MATTER_BINDING_TABLE_SIZE; i++)
{
- NL_TEST_ASSERT(aSuite, table.Add(EmberBindingTableEntry::ForNode(0, i, 0, 0, std::nullopt)) == CHIP_NO_ERROR);
+ EXPECT_EQ(table.Add(EmberBindingTableEntry::ForNode(0, i, 0, 0, std::nullopt)), CHIP_NO_ERROR);
}
- NL_TEST_ASSERT(aSuite, table.Add(EmberBindingTableEntry::ForNode(0, 0, 0, 0, std::nullopt)) == CHIP_ERROR_NO_MEMORY);
- NL_TEST_ASSERT(aSuite, table.Size() == MATTER_BINDING_TABLE_SIZE);
+ EXPECT_EQ(table.Add(EmberBindingTableEntry::ForNode(0, 0, 0, 0, std::nullopt)), CHIP_ERROR_NO_MEMORY);
+ EXPECT_EQ(table.Size(), MATTER_BINDING_TABLE_SIZE);
auto iter = table.begin();
for (uint8_t i = 0; i < MATTER_BINDING_TABLE_SIZE; i++)
{
- NL_TEST_ASSERT(aSuite, iter != table.end());
- NL_TEST_ASSERT(aSuite, iter->nodeId == i);
- NL_TEST_ASSERT(aSuite, iter.GetIndex() == i);
+ EXPECT_NE(iter, table.end());
+ EXPECT_EQ(iter->nodeId, i);
+ EXPECT_EQ(iter.GetIndex(), i);
++iter;
}
- NL_TEST_ASSERT(aSuite, iter == table.end());
+ EXPECT_EQ(iter, table.end());
}
-void TestRemoveThenAdd(nlTestSuite * aSuite, void * aContext)
+TEST(TestBindingTable, TestRemoveThenAdd)
{
BindingTable table;
chip::TestPersistentStorageDelegate testStorage;
table.SetPersistentStorage(&testStorage);
- NL_TEST_ASSERT(aSuite, table.Add(EmberBindingTableEntry::ForNode(0, 0, 0, 0, std::nullopt)) == CHIP_NO_ERROR);
+ EXPECT_EQ(table.Add(EmberBindingTableEntry::ForNode(0, 0, 0, 0, std::nullopt)), CHIP_NO_ERROR);
auto iter = table.begin();
- NL_TEST_ASSERT(aSuite, table.RemoveAt(iter) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, iter == table.end());
- NL_TEST_ASSERT(aSuite, table.Size() == 0);
- NL_TEST_ASSERT(aSuite, table.begin() == table.end());
+ EXPECT_EQ(table.RemoveAt(iter), CHIP_NO_ERROR);
+ EXPECT_EQ(iter, table.end());
+ EXPECT_EQ(table.Size(), 0u);
+ EXPECT_EQ(table.begin(), table.end());
for (uint8_t i = 0; i < MATTER_BINDING_TABLE_SIZE; i++)
{
- NL_TEST_ASSERT(aSuite, table.Add(EmberBindingTableEntry::ForNode(0, i, 0, 0, std::nullopt)) == CHIP_NO_ERROR);
+ EXPECT_EQ(table.Add(EmberBindingTableEntry::ForNode(0, i, 0, 0, std::nullopt)), CHIP_NO_ERROR);
}
iter = table.begin();
++iter;
- NL_TEST_ASSERT(aSuite, table.RemoveAt(iter) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, table.Size() == MATTER_BINDING_TABLE_SIZE - 1);
- NL_TEST_ASSERT(aSuite, iter->nodeId == 2);
- NL_TEST_ASSERT(aSuite, iter.GetIndex() == 2);
+ EXPECT_EQ(table.RemoveAt(iter), CHIP_NO_ERROR);
+ EXPECT_EQ(table.Size(), MATTER_BINDING_TABLE_SIZE - 1);
+ EXPECT_EQ(iter->nodeId, 2u);
+ EXPECT_EQ(iter.GetIndex(), 2u);
auto iterCheck = table.begin();
++iterCheck;
- NL_TEST_ASSERT(aSuite, iter == iterCheck);
+ EXPECT_EQ(iter, iterCheck);
- NL_TEST_ASSERT(aSuite, table.Add(EmberBindingTableEntry::ForNode(0, 1, 0, 0, std::nullopt)) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, table.Size() == MATTER_BINDING_TABLE_SIZE);
+ EXPECT_EQ(table.Add(EmberBindingTableEntry::ForNode(0, 1, 0, 0, std::nullopt)), CHIP_NO_ERROR);
+ EXPECT_EQ(table.Size(), MATTER_BINDING_TABLE_SIZE);
iter = table.begin();
for (uint8_t i = 0; i < MATTER_BINDING_TABLE_SIZE - 1; i++)
{
++iter;
}
- NL_TEST_ASSERT(aSuite, iter->nodeId == 1);
- NL_TEST_ASSERT(aSuite, iter.GetIndex() == 1);
+ EXPECT_EQ(iter->nodeId, 1u);
+ EXPECT_EQ(iter.GetIndex(), 1u);
++iter;
- NL_TEST_ASSERT(aSuite, iter == table.end());
+ EXPECT_EQ(iter, table.end());
iter = table.begin();
- NL_TEST_ASSERT(aSuite, table.RemoveAt(iter) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, table.Size() == MATTER_BINDING_TABLE_SIZE - 1);
- NL_TEST_ASSERT(aSuite, iter == table.begin());
- NL_TEST_ASSERT(aSuite, iter.GetIndex() == 2);
- NL_TEST_ASSERT(aSuite, iter->nodeId == 2);
- NL_TEST_ASSERT(aSuite, table.GetAt(0).type == MATTER_UNUSED_BINDING);
+ EXPECT_EQ(table.RemoveAt(iter), CHIP_NO_ERROR);
+ EXPECT_EQ(table.Size(), MATTER_BINDING_TABLE_SIZE - 1);
+ EXPECT_EQ(iter, table.begin());
+ EXPECT_EQ(iter.GetIndex(), 2u);
+ EXPECT_EQ(iter->nodeId, 2u);
+ EXPECT_EQ(table.GetAt(0).type, MATTER_UNUSED_BINDING);
}
-void VerifyTableSame(nlTestSuite * aSuite, BindingTable & table, const std::vector<EmberBindingTableEntry> & expected)
-{
- NL_TEST_ASSERT(aSuite, table.Size() == expected.size());
- auto iter1 = table.begin();
- auto iter2 = expected.begin();
- while (iter2 != expected.end())
- {
- NL_TEST_ASSERT(aSuite, iter1 != table.end());
- NL_TEST_ASSERT(aSuite, *iter1 == *iter2);
- ++iter1;
- ++iter2;
- }
- NL_TEST_ASSERT(aSuite, iter1 == table.end());
-}
-
-void VerifyRestored(nlTestSuite * aSuite, chip::TestPersistentStorageDelegate & storage,
- const std::vector<EmberBindingTableEntry> & expected)
-{
- BindingTable restoredTable;
- restoredTable.SetPersistentStorage(&storage);
- NL_TEST_ASSERT(aSuite, restoredTable.LoadFromStorage() == CHIP_NO_ERROR);
- VerifyTableSame(aSuite, restoredTable, expected);
-}
-
-void TestPersistentStorage(nlTestSuite * aSuite, void * aContext)
+TEST(TestBindingTable, TestPersistentStorage)
{
chip::TestPersistentStorageDelegate testStorage;
BindingTable table;
@@ -142,68 +142,46 @@
EmberBindingTableEntry::ForGroup(3, 3, 0, cluster.std_optional()),
};
table.SetPersistentStorage(&testStorage);
- NL_TEST_ASSERT(aSuite, table.Add(expected[0]) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, table.Add(expected[1]) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, table.Add(expected[2]) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, table.Add(expected[3]) == CHIP_NO_ERROR);
- VerifyRestored(aSuite, testStorage, expected);
+ EXPECT_EQ(table.Add(expected[0]), CHIP_NO_ERROR);
+ EXPECT_EQ(table.Add(expected[1]), CHIP_NO_ERROR);
+ EXPECT_EQ(table.Add(expected[2]), CHIP_NO_ERROR);
+ EXPECT_EQ(table.Add(expected[3]), CHIP_NO_ERROR);
+ VerifyRestored(testStorage, expected);
// Verify storage untouched if add fails
testStorage.AddPoisonKey(chip::DefaultStorageKeyAllocator::BindingTableEntry(4).KeyName());
- NL_TEST_ASSERT(aSuite, table.Add(EmberBindingTableEntry::ForNode(4, 4, 0, 0, std::nullopt)) != CHIP_NO_ERROR);
- VerifyRestored(aSuite, testStorage, expected);
+ EXPECT_NE(table.Add(EmberBindingTableEntry::ForNode(4, 4, 0, 0, std::nullopt)), CHIP_NO_ERROR);
+ VerifyRestored(testStorage, expected);
testStorage.ClearPoisonKeys();
// Verify storage untouched if removing head fails
testStorage.AddPoisonKey(chip::DefaultStorageKeyAllocator::BindingTable().KeyName());
auto iter = table.begin();
- NL_TEST_ASSERT(aSuite, table.RemoveAt(iter) != CHIP_NO_ERROR);
- VerifyTableSame(aSuite, table, expected);
+ EXPECT_NE(table.RemoveAt(iter), CHIP_NO_ERROR);
+ VerifyTableSame(table, expected);
testStorage.ClearPoisonKeys();
- VerifyRestored(aSuite, testStorage, expected);
+ VerifyRestored(testStorage, expected);
// Verify storage untouched if removing other nodes fails
testStorage.AddPoisonKey(chip::DefaultStorageKeyAllocator::BindingTableEntry(0).KeyName());
iter = table.begin();
++iter;
- NL_TEST_ASSERT(aSuite, table.RemoveAt(iter) != CHIP_NO_ERROR);
- VerifyTableSame(aSuite, table, expected);
+ EXPECT_NE(table.RemoveAt(iter), CHIP_NO_ERROR);
+ VerifyTableSame(table, expected);
testStorage.ClearPoisonKeys();
- VerifyRestored(aSuite, testStorage, expected);
+ VerifyRestored(testStorage, expected);
// Verify removing head
iter = table.begin();
- NL_TEST_ASSERT(aSuite, table.RemoveAt(iter) == CHIP_NO_ERROR);
- VerifyTableSame(aSuite, table, { expected[1], expected[2], expected[3] });
- VerifyRestored(aSuite, testStorage, { expected[1], expected[2], expected[3] });
+ EXPECT_EQ(table.RemoveAt(iter), CHIP_NO_ERROR);
+ VerifyTableSame(table, { expected[1], expected[2], expected[3] });
+ VerifyRestored(testStorage, { expected[1], expected[2], expected[3] });
// Verify removing other nodes
++iter;
- NL_TEST_ASSERT(aSuite, table.RemoveAt(iter) == CHIP_NO_ERROR);
- VerifyTableSame(aSuite, table, { expected[1], expected[3] });
- VerifyRestored(aSuite, testStorage, { expected[1], expected[3] });
+ EXPECT_EQ(table.RemoveAt(iter), CHIP_NO_ERROR);
+ VerifyTableSame(table, { expected[1], expected[3] });
+ VerifyRestored(testStorage, { expected[1], expected[3] });
}
} // namespace
-
-int TestBindingTable()
-{
- static nlTest sTests[] = {
- NL_TEST_DEF("TestEmptyBindingTable", TestEmptyBindingTable),
- NL_TEST_DEF("TestAdd", TestAdd),
- NL_TEST_DEF("TestRemoveThenAdd", TestRemoveThenAdd),
- NL_TEST_DEF("TestPersistentStorage", TestPersistentStorage),
- NL_TEST_SENTINEL(),
- };
-
- nlTestSuite theSuite = {
- "BindingTable",
- &sTests[0],
- nullptr,
- nullptr,
- };
- nlTestRunner(&theSuite, nullptr);
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestBindingTable)
diff --git a/src/app/tests/TestBuilderParser.cpp b/src/app/tests/TestBuilderParser.cpp
index 314353e..b59042c 100644
--- a/src/app/tests/TestBuilderParser.cpp
+++ b/src/app/tests/TestBuilderParser.cpp
@@ -25,23 +25,30 @@
#include <app/MessageDef/StructParser.h>
#include <lib/core/CHIPError.h>
#include <lib/support/CHIPMem.h>
-#include <lib/support/UnitTestRegistration.h>
#include <system/TLVPacketBufferBackingStore.h>
-#include <nlunit-test.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
namespace {
using namespace chip::app;
-void ListTest(nlTestSuite * apSuite, void * apContext)
+class TestBuilderParser : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
+
+TEST_F(TestBuilderParser, TestList)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
ListBuilder listBuilder;
- NL_TEST_ASSERT(apSuite, listBuilder.Init(&writer) == CHIP_NO_ERROR);
+ EXPECT_EQ(listBuilder.Init(&writer), CHIP_NO_ERROR);
listBuilder.EndOfContainer();
chip::System::PacketBufferHandle buf;
@@ -50,18 +57,18 @@
ListParser listParser;
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, listParser.Init(reader) == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(listParser.Init(reader), CHIP_NO_ERROR);
}
-void StructTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestBuilderParser, TestStruct)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
StructBuilder structBuilder;
- NL_TEST_ASSERT(apSuite, structBuilder.Init(&writer) == CHIP_NO_ERROR);
+ EXPECT_EQ(structBuilder.Init(&writer), CHIP_NO_ERROR);
structBuilder.EndOfContainer();
chip::System::PacketBufferHandle buf;
@@ -71,17 +78,17 @@
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, structParser.Init(reader) == CHIP_NO_ERROR);
+ EXPECT_EQ(structParser.Init(reader), CHIP_NO_ERROR);
}
-void ArrayTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestBuilderParser, TestArray)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
ArrayBuilder arrayBuilder;
- NL_TEST_ASSERT(apSuite, arrayBuilder.Init(&writer) == CHIP_NO_ERROR);
+ EXPECT_EQ(arrayBuilder.Init(&writer), CHIP_NO_ERROR);
arrayBuilder.EndOfContainer();
chip::System::PacketBufferHandle buf;
@@ -91,55 +98,7 @@
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, arrayParser.Init(reader) == CHIP_NO_ERROR);
+ EXPECT_EQ(arrayParser.Init(reader), CHIP_NO_ERROR);
}
-// clang-format off
-const nlTest sTests[] =
- {
- NL_TEST_DEF("ListTest", ListTest),
- NL_TEST_DEF("StructTest", StructTest),
- NL_TEST_DEF("ArrayTest", ArrayTest),
- NL_TEST_SENTINEL()
- };
-// clang-format on
} // namespace
-
-/**
- * Set up the test suite.
- */
-static int TestSetup(void * inContext)
-{
- CHIP_ERROR error = chip::Platform::MemoryInit();
- if (error != CHIP_NO_ERROR)
- return FAILURE;
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-static int TestTeardown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
-
-int TestBuilderParser()
-{
- // clang-format off
- nlTestSuite theSuite =
- {
- "TestBuilderParser",
- &sTests[0],
- TestSetup,
- TestTeardown,
- };
- // clang-format on
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestBuilderParser)
diff --git a/src/app/tests/TestDefaultICDClientStorage.cpp b/src/app/tests/TestDefaultICDClientStorage.cpp
index 62787a2..8cf4c8d 100644
--- a/src/app/tests/TestDefaultICDClientStorage.cpp
+++ b/src/app/tests/TestDefaultICDClientStorage.cpp
@@ -15,9 +15,9 @@
* limitations under the License.
*/
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/support/Span.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
+#include <pw_unit_test/framework.h>
#include <system/SystemPacketBuffer.h>
#include <app/icd/client/DefaultICDClientStorage.h>
@@ -55,7 +55,14 @@
}
};
-void TestClientInfoCount(nlTestSuite * apSuite, void * apContext)
+class TestDefaultICDClientStorage : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
+
+TEST_F(TestDefaultICDClientStorage, TestClientInfoCount)
{
CHIP_ERROR err = CHIP_NO_ERROR;
FabricIndex fabricId = 1;
@@ -67,9 +74,9 @@
{
DefaultICDClientStorage manager;
err = manager.Init(&clientInfoStorage, &keystore);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.UpdateFabricList(fabricId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Write some ClientInfos and see the counts are correct
ICDClientInfo clientInfo1;
clientInfo1.peer_node = ScopedNodeId(nodeId1, fabricId);
@@ -78,38 +85,38 @@
ICDClientInfo clientInfo3;
clientInfo3.peer_node = ScopedNodeId(nodeId1, fabricId);
err = manager.SetKey(clientInfo1, ByteSpan(kKeyBuffer1));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.StoreEntry(clientInfo1);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.SetKey(clientInfo2, ByteSpan(kKeyBuffer2));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.StoreEntry(clientInfo2);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.SetKey(clientInfo3, ByteSpan(kKeyBuffer3));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.StoreEntry(clientInfo3);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
ICDClientInfo clientInfo;
// Make sure iterator counts correctly
auto * iterator = manager.IterateICDClientInfo();
// same nodeId for clientInfo2 and clientInfo3, so the new one replace old one
- NL_TEST_ASSERT(apSuite, iterator->Count() == 2);
+ EXPECT_EQ(iterator->Count(), 2u);
- NL_TEST_ASSERT(apSuite, iterator->Next(clientInfo));
- NL_TEST_ASSERT(apSuite, clientInfo.peer_node.GetNodeId() == nodeId2);
- NL_TEST_ASSERT(apSuite, iterator->Next(clientInfo));
- NL_TEST_ASSERT(apSuite, clientInfo.peer_node.GetNodeId() == nodeId1);
+ EXPECT_TRUE(iterator->Next(clientInfo));
+ EXPECT_EQ(clientInfo.peer_node.GetNodeId(), nodeId2);
+ EXPECT_TRUE(iterator->Next(clientInfo));
+ EXPECT_EQ(clientInfo.peer_node.GetNodeId(), nodeId1);
iterator->Release();
// Delete all and verify iterator counts 0
err = manager.DeleteAllEntries(fabricId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
iterator = manager.IterateICDClientInfo();
- NL_TEST_ASSERT(apSuite, iterator->Count() == 0);
+ EXPECT_EQ(iterator->Count(), 0u);
// Verify ClientInfos manually count correctly
size_t count = 0;
@@ -118,19 +125,19 @@
count++;
}
iterator->Release();
- NL_TEST_ASSERT(apSuite, count == 0);
+ EXPECT_EQ(count, 0u);
}
{
DefaultICDClientStorage manager;
err = manager.Init(&clientInfoStorage, &keystore);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.UpdateFabricList(fabricId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
}
-void TestClientInfoCountMultipleFabric(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestDefaultICDClientStorage, TestClientInfoCountMultipleFabric)
{
CHIP_ERROR err = CHIP_NO_ERROR;
FabricIndex fabricId1 = 1;
@@ -142,11 +149,11 @@
TestPersistentStorageDelegate clientInfoStorage;
TestSessionKeystoreImpl keystore;
err = manager.Init(&clientInfoStorage, &keystore);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.UpdateFabricList(fabricId1);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.UpdateFabricList(fabricId2);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Write some ClientInfos and see the counts are correct
ICDClientInfo clientInfo1;
@@ -157,39 +164,39 @@
clientInfo3.peer_node = ScopedNodeId(nodeId3, fabricId2);
err = manager.SetKey(clientInfo1, ByteSpan(kKeyBuffer1));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.StoreEntry(clientInfo1);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.SetKey(clientInfo2, ByteSpan(kKeyBuffer2));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.StoreEntry(clientInfo2);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.SetKey(clientInfo3, ByteSpan(kKeyBuffer3));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.StoreEntry(clientInfo3);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Make sure iterator counts correctly
auto * iterator = manager.IterateICDClientInfo();
- NL_TEST_ASSERT(apSuite, iterator->Count() == 3);
+ EXPECT_EQ(iterator->Count(), 3u);
iterator->Release();
// Delete all and verify iterator counts 0
err = manager.DeleteEntry(ScopedNodeId(nodeId1, fabricId1));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
iterator = manager.IterateICDClientInfo();
- NL_TEST_ASSERT(apSuite, iterator != nullptr);
+ ASSERT_NE(iterator, nullptr);
DefaultICDClientStorage::ICDClientInfoIteratorWrapper clientInfoIteratorWrapper(iterator);
- NL_TEST_ASSERT(apSuite, iterator->Count() == 2);
+ EXPECT_EQ(iterator->Count(), 2u);
err = manager.DeleteEntry(ScopedNodeId(nodeId2, fabricId1));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, iterator->Count() == 1);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(iterator->Count(), 1u);
err = manager.DeleteEntry(ScopedNodeId(nodeId3, fabricId2));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, iterator->Count() == 0);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(iterator->Count(), 0u);
// Verify ClientInfos manually count correctly
size_t count = 0;
@@ -199,10 +206,10 @@
count++;
}
- NL_TEST_ASSERT(apSuite, count == 0);
+ EXPECT_FALSE(count);
}
-void TestProcessCheckInPayload(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestDefaultICDClientStorage, TestProcessCheckInPayload)
{
CHIP_ERROR err = CHIP_NO_ERROR;
FabricIndex fabricId = 1;
@@ -212,98 +219,41 @@
DefaultICDClientStorage manager;
err = manager.Init(&clientInfoStorage, &keystore);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.UpdateFabricList(fabricId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Populate clientInfo
ICDClientInfo clientInfo;
clientInfo.peer_node = ScopedNodeId(nodeId, fabricId);
err = manager.SetKey(clientInfo, ByteSpan(kKeyBuffer1));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = manager.StoreEntry(clientInfo);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t counter = 1;
System::PacketBufferHandle buffer = MessagePacketBuffer::New(chip::Protocols::SecureChannel::CheckinMessage::kMinPayloadSize);
MutableByteSpan output{ buffer->Start(), buffer->MaxDataLength() };
err = chip::Protocols::SecureChannel::CheckinMessage::GenerateCheckinMessagePayload(
clientInfo.aes_key_handle, clientInfo.hmac_key_handle, counter, ByteSpan(), output);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
buffer->SetDataLength(static_cast<uint16_t>(output.size()));
ICDClientInfo decodeClientInfo;
uint32_t checkInCounter = 0;
ByteSpan payload{ buffer->Start(), buffer->DataLength() };
err = manager.ProcessCheckInPayload(payload, decodeClientInfo, checkInCounter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// 2. Use a key not available in the storage for encoding
err = manager.SetKey(clientInfo, ByteSpan(kKeyBuffer2));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = chip::Protocols::SecureChannel::CheckinMessage::GenerateCheckinMessagePayload(
clientInfo.aes_key_handle, clientInfo.hmac_key_handle, counter, ByteSpan(), output);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
buffer->SetDataLength(static_cast<uint16_t>(output.size()));
ByteSpan payload1{ buffer->Start(), buffer->DataLength() };
err = manager.ProcessCheckInPayload(payload1, decodeClientInfo, checkInCounter);
- NL_TEST_ASSERT(apSuite, err == CHIP_ERROR_NOT_FOUND);
+ EXPECT_EQ(err, CHIP_ERROR_NOT_FOUND);
}
-
-/**
- * Set up the test suite.
- */
-int TestClientInfo_Setup(void * apContext)
-{
- VerifyOrReturnError(CHIP_NO_ERROR == Platform::MemoryInit(), FAILURE);
-
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-int TestClientInfo_Teardown(void * apContext)
-{
- Platform::MemoryShutdown();
- return SUCCESS;
-}
-
-// Test Suite
-
-/**
- * Test Suite that lists all the test functions.
- */
-// clang-format off
-static const nlTest sTests[] =
-{
- NL_TEST_DEF("TestClientInfoCount", TestClientInfoCount),
- NL_TEST_DEF("TestClientInfoCountMultipleFabric", TestClientInfoCountMultipleFabric),
- NL_TEST_DEF("TestProcessCheckInPayload", TestProcessCheckInPayload),
-
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
-// clang-format off
-static nlTestSuite sSuite =
-{
- "TestDefaultICDClientStorage",
- &sTests[0],
- &TestClientInfo_Setup, &TestClientInfo_Teardown
-};
-// clang-format on
-
-/**
- * Main
- */
-int TestDefaultICDClientStorage()
-{
- // Run test suit against one context
- nlTestRunner(&sSuite, nullptr);
-
- return (nlTestRunnerStats(&sSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestDefaultICDClientStorage)
diff --git a/src/app/tests/TestFailSafeContext.cpp b/src/app/tests/TestFailSafeContext.cpp
index 2d2b9fa..96868ff 100644
--- a/src/app/tests/TestFailSafeContext.cpp
+++ b/src/app/tests/TestFailSafeContext.cpp
@@ -28,11 +28,11 @@
#include <stdlib.h>
#include <string.h>
+#include <pw_unit_test/framework.h>
+
#include <app/FailSafeContext.h>
#include <lib/support/CHIPMem.h>
#include <lib/support/CodeUtils.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
#include <platform/CHIPDeviceLayer.h>
using namespace chip;
@@ -44,100 +44,62 @@
constexpr FabricIndex kTestAccessingFabricIndex1 = 1;
constexpr FabricIndex kTestAccessingFabricIndex2 = 2;
+class TestFailSafeContext : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite()
+ {
+ ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR);
+ ASSERT_EQ(PlatformMgr().InitChipStack(), CHIP_NO_ERROR);
+ }
+ static void TearDownTestSuite()
+ {
+ PlatformMgr().Shutdown();
+ chip::Platform::MemoryShutdown();
+ }
+};
+
// =================================
// Unit tests
// =================================
-static void TestPlatformMgr_Init(nlTestSuite * inSuite, void * inContext)
-{
- CHIP_ERROR err = PlatformMgr().InitChipStack();
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
-}
-
-static void TestFailSafeContext_ArmFailSafe(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestFailSafeContext, TestFailSafeContext_ArmFailSafe)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::app::FailSafeContext failSafeContext;
err = failSafeContext.ArmFailSafe(kTestAccessingFabricIndex1, System::Clock::Seconds16(1));
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, failSafeContext.IsFailSafeArmed() == true);
- NL_TEST_ASSERT(inSuite, failSafeContext.GetFabricIndex() == kTestAccessingFabricIndex1);
- NL_TEST_ASSERT(inSuite, failSafeContext.IsFailSafeArmed(kTestAccessingFabricIndex1) == true);
- NL_TEST_ASSERT(inSuite, failSafeContext.IsFailSafeArmed(kTestAccessingFabricIndex2) == false);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(failSafeContext.IsFailSafeArmed());
+ EXPECT_EQ(failSafeContext.GetFabricIndex(), kTestAccessingFabricIndex1);
+ EXPECT_TRUE(failSafeContext.IsFailSafeArmed(kTestAccessingFabricIndex1));
+ EXPECT_FALSE(failSafeContext.IsFailSafeArmed(kTestAccessingFabricIndex2));
failSafeContext.DisarmFailSafe();
- NL_TEST_ASSERT(inSuite, failSafeContext.IsFailSafeArmed() == false);
+ EXPECT_FALSE(failSafeContext.IsFailSafeArmed());
}
-static void TestFailSafeContext_NocCommandInvoked(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestFailSafeContext, TestFailSafeContext_NocCommandInvoked)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::app::FailSafeContext failSafeContext;
err = failSafeContext.ArmFailSafe(kTestAccessingFabricIndex1, System::Clock::Seconds16(1));
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, failSafeContext.GetFabricIndex() == kTestAccessingFabricIndex1);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(failSafeContext.GetFabricIndex(), kTestAccessingFabricIndex1);
failSafeContext.SetAddNocCommandInvoked(kTestAccessingFabricIndex2);
- NL_TEST_ASSERT(inSuite, failSafeContext.NocCommandHasBeenInvoked() == true);
- NL_TEST_ASSERT(inSuite, failSafeContext.AddNocCommandHasBeenInvoked() == true);
- NL_TEST_ASSERT(inSuite, failSafeContext.GetFabricIndex() == kTestAccessingFabricIndex2);
+ EXPECT_TRUE(failSafeContext.NocCommandHasBeenInvoked());
+ EXPECT_TRUE(failSafeContext.AddNocCommandHasBeenInvoked());
+ EXPECT_EQ(failSafeContext.GetFabricIndex(), kTestAccessingFabricIndex2);
failSafeContext.SetUpdateNocCommandInvoked();
- NL_TEST_ASSERT(inSuite, failSafeContext.NocCommandHasBeenInvoked() == true);
- NL_TEST_ASSERT(inSuite, failSafeContext.UpdateNocCommandHasBeenInvoked() == true);
+ EXPECT_TRUE(failSafeContext.NocCommandHasBeenInvoked());
+ EXPECT_TRUE(failSafeContext.UpdateNocCommandHasBeenInvoked());
failSafeContext.DisarmFailSafe();
}
-/**
- * Test Suite. It lists all the test functions.
- */
-static const nlTest sTests[] = {
-
- NL_TEST_DEF("Test PlatformMgr::Init", TestPlatformMgr_Init),
- NL_TEST_DEF("Test FailSafeContext::ArmFailSafe", TestFailSafeContext_ArmFailSafe),
- NL_TEST_DEF("Test FailSafeContext::NocCommandInvoked", TestFailSafeContext_NocCommandInvoked),
-
- NL_TEST_SENTINEL()
-};
-
-/**
- * Set up the test suite.
- */
-int TestFailSafeContext_Setup(void * inContext)
-{
- CHIP_ERROR error = chip::Platform::MemoryInit();
- if (error != CHIP_NO_ERROR)
- return FAILURE;
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-int TestFailSafeContext_Teardown(void * inContext)
-{
- PlatformMgr().Shutdown();
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
-
} // namespace
-
-/**
- * Main
- */
-int TestFailSafeContext()
-{
- nlTestSuite theSuite = { "FailSafeContext tests", &sTests[0], TestFailSafeContext_Setup, TestFailSafeContext_Teardown };
-
- // Run test suite against one context.
- nlTestRunner(&theSuite, nullptr);
- return nlTestRunnerStats(&theSuite);
-}
-
-CHIP_REGISTER_TEST_SUITE(TestFailSafeContext)
diff --git a/src/app/tests/TestMessageDef.cpp b/src/app/tests/TestMessageDef.cpp
index 10417fa..01f3acb 100644
--- a/src/app/tests/TestMessageDef.cpp
+++ b/src/app/tests/TestMessageDef.cpp
@@ -16,12 +16,6 @@
* limitations under the License.
*/
-/**
- * @file
- * This file implements a test for CHIP Interaction Model Message Def
- *
- */
-
#include <app/AppConfig.h>
#include <app/MessageDef/EventFilterIBs.h>
#include <app/MessageDef/EventStatusIB.h>
@@ -38,16 +32,23 @@
#include <lib/core/TLVDebug.h>
#include <lib/support/CHIPMem.h>
#include <lib/support/EnforceFormat.h>
-#include <lib/support/UnitTestRegistration.h>
#include <lib/support/logging/Constants.h>
#include <system/TLVPacketBufferBackingStore.h>
-#include <nlunit-test.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
namespace {
using namespace chip::app;
+class TestMessageDef : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
+
void ENFORCE_FORMAT(1, 2) TLVPrettyPrinter(const char * aFormat, ...)
{
va_list args;
@@ -75,7 +76,7 @@
return err;
}
-void BuildStatusIB(nlTestSuite * apSuite, StatusIB::Builder & aStatusIBBuilder)
+void BuildStatusIB(StatusIB::Builder & aStatusIBBuilder)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -83,10 +84,10 @@
statusIB.mStatus = chip::Protocols::InteractionModel::Status::InvalidSubscription;
aStatusIBBuilder.EncodeStatusIB(statusIB);
err = aStatusIBBuilder.GetError();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void ParseStatusIB(nlTestSuite * apSuite, StatusIB::Parser & aStatusIBParser)
+void ParseStatusIB(StatusIB::Parser & aStatusIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
StatusIB::Parser StatusIBParser;
@@ -96,20 +97,20 @@
aStatusIBParser.PrettyPrint();
#endif
err = aStatusIBParser.DecodeStatusIB(statusIB);
- NL_TEST_ASSERT(apSuite,
- err == CHIP_NO_ERROR && statusIB.mStatus == chip::Protocols::InteractionModel::Status::InvalidSubscription &&
- !statusIB.mClusterStatus.HasValue());
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(statusIB.mStatus, chip::Protocols::InteractionModel::Status::InvalidSubscription);
+ EXPECT_FALSE(statusIB.mClusterStatus.HasValue());
}
-void BuildClusterPathIB(nlTestSuite * apSuite, ClusterPathIB::Builder & aClusterPathBuilder)
+void BuildClusterPathIB(ClusterPathIB::Builder & aClusterPathBuilder)
{
CHIP_ERROR err = CHIP_NO_ERROR;
aClusterPathBuilder.Node(1).Endpoint(2).Cluster(3).EndOfClusterPathIB();
err = aClusterPathBuilder.GetError();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void ParseClusterPathIB(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseClusterPathIB(chip::TLV::TLVReader & aReader)
{
ClusterPathIB::Parser clusterPathParser;
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -118,31 +119,34 @@
chip::ClusterId cluster = 0;
err = clusterPathParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
clusterPathParser.PrettyPrint();
#endif
err = clusterPathParser.GetNode(&node);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && node == 1);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(node, 1u);
err = clusterPathParser.GetEndpoint(&endpoint);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && endpoint == 2);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(endpoint, 2u);
err = clusterPathParser.GetCluster(&cluster);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && cluster == 3);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(cluster, 3u);
}
-void BuildDataVersionFilterIB(nlTestSuite * apSuite, DataVersionFilterIB::Builder & aDataVersionFilterIBBuilder)
+void BuildDataVersionFilterIB(DataVersionFilterIB::Builder & aDataVersionFilterIBBuilder)
{
ClusterPathIB::Builder & clusterPathBuilder = aDataVersionFilterIBBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, clusterPathBuilder.GetError() == CHIP_NO_ERROR);
- BuildClusterPathIB(apSuite, clusterPathBuilder);
+ EXPECT_EQ(clusterPathBuilder.GetError(), CHIP_NO_ERROR);
+ BuildClusterPathIB(clusterPathBuilder);
aDataVersionFilterIBBuilder.DataVersion(2).EndOfDataVersionFilterIB();
- NL_TEST_ASSERT(apSuite, aDataVersionFilterIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aDataVersionFilterIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseDataVersionFilterIB(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseDataVersionFilterIB(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
DataVersionFilterIB::Parser dataVersionFilterIBParser;
@@ -150,46 +154,47 @@
chip::DataVersion dataVersion = 2;
err = dataVersionFilterIBParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
dataVersionFilterIBParser.PrettyPrint();
#endif
err = dataVersionFilterIBParser.GetPath(&clusterPath);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = dataVersionFilterIBParser.GetDataVersion(&dataVersion);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && dataVersion == 2);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(dataVersion, 2u);
}
-void BuildDataVersionFilterIBs(nlTestSuite * apSuite, DataVersionFilterIBs::Builder & aDataVersionFilterIBsBuilder)
+void BuildDataVersionFilterIBs(DataVersionFilterIBs::Builder & aDataVersionFilterIBsBuilder)
{
DataVersionFilterIB::Builder & dataVersionFilterIBBuilder = aDataVersionFilterIBsBuilder.CreateDataVersionFilter();
- NL_TEST_ASSERT(apSuite, aDataVersionFilterIBsBuilder.GetError() == CHIP_NO_ERROR);
- BuildDataVersionFilterIB(apSuite, dataVersionFilterIBBuilder);
+ EXPECT_EQ(aDataVersionFilterIBsBuilder.GetError(), CHIP_NO_ERROR);
+ BuildDataVersionFilterIB(dataVersionFilterIBBuilder);
aDataVersionFilterIBsBuilder.EndOfDataVersionFilterIBs();
- NL_TEST_ASSERT(apSuite, aDataVersionFilterIBsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aDataVersionFilterIBsBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseDataVersionFilterIBs(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseDataVersionFilterIBs(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
DataVersionFilterIBs::Parser dataVersionFilterIBsParser;
err = dataVersionFilterIBsParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
dataVersionFilterIBsParser.PrettyPrint();
#endif
}
-void BuildEventFilterIB(nlTestSuite * apSuite, EventFilterIB::Builder & aEventFilterIBBuilder)
+void BuildEventFilterIB(EventFilterIB::Builder & aEventFilterIBBuilder)
{
aEventFilterIBBuilder.Node(1).EventMin(2).EndOfEventFilterIB();
- NL_TEST_ASSERT(apSuite, aEventFilterIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aEventFilterIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseEventFilterIB(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseEventFilterIB(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventFilterIB::Parser eventFilterIBParser;
@@ -197,39 +202,41 @@
uint64_t eventMin = 2;
err = eventFilterIBParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
eventFilterIBParser.PrettyPrint();
#endif
err = eventFilterIBParser.GetNode(&node);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && node == 1);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+
+ EXPECT_EQ(node, 1u);
err = eventFilterIBParser.GetEventMin(&eventMin);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && eventMin == 2);
+ EXPECT_EQ(eventMin, 2u);
}
-void BuildEventFilters(nlTestSuite * apSuite, EventFilterIBs::Builder & aEventFiltersBuilder)
+void BuildEventFilters(EventFilterIBs::Builder & aEventFiltersBuilder)
{
EventFilterIB::Builder & eventFilterBuilder = aEventFiltersBuilder.CreateEventFilter();
- NL_TEST_ASSERT(apSuite, aEventFiltersBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventFilterIB(apSuite, eventFilterBuilder);
+ EXPECT_EQ(aEventFiltersBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventFilterIB(eventFilterBuilder);
aEventFiltersBuilder.EndOfEventFilters();
- NL_TEST_ASSERT(apSuite, aEventFiltersBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aEventFiltersBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseEventFilters(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseEventFilters(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventFilterIBs::Parser eventFiltersParser;
err = eventFiltersParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
eventFiltersParser.PrettyPrint();
#endif
}
-void BuildAttributePathIB(nlTestSuite * apSuite, AttributePathIB::Builder & aAttributePathBuilder)
+void BuildAttributePathIB(AttributePathIB::Builder & aAttributePathBuilder)
{
CHIP_ERROR err = CHIP_NO_ERROR;
err = aAttributePathBuilder.EnableTagCompression(false)
@@ -239,10 +246,10 @@
.Attribute(4)
.ListIndex(5)
.EndOfAttributePathIB();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void ParseAttributePathIB(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseAttributePathIB(chip::TLV::TLVReader & aReader)
{
AttributePathIB::Parser attributePathParser;
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -254,63 +261,69 @@
chip::ListIndex listIndex = 5;
err = attributePathParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
attributePathParser.PrettyPrint();
#endif
err = attributePathParser.GetEnableTagCompression(&enableTagCompression);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && enableTagCompression == false);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_FALSE(enableTagCompression);
err = attributePathParser.GetNode(&node);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && node == 1);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(node, 1u);
err = attributePathParser.GetEndpoint(&endpoint);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && endpoint == 2);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(endpoint, 2u);
err = attributePathParser.GetCluster(&cluster);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && cluster == 3);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(cluster, 3u);
err = attributePathParser.GetAttribute(&attribute);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && attribute == 4);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(attribute, 4u);
err = attributePathParser.GetListIndex(&listIndex);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && listIndex == 5);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(listIndex, 5u);
}
-void BuildAttributePathList(nlTestSuite * apSuite, AttributePathIBs::Builder & aAttributePathListBuilder)
+void BuildAttributePathList(AttributePathIBs::Builder & aAttributePathListBuilder)
{
AttributePathIB::Builder & attributePathBuilder = aAttributePathListBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, attributePathBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributePathIB(apSuite, attributePathBuilder);
+ EXPECT_EQ(attributePathBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributePathIB(attributePathBuilder);
aAttributePathListBuilder.EndOfAttributePathIBs();
- NL_TEST_ASSERT(apSuite, aAttributePathListBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aAttributePathListBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseAttributePathList(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseAttributePathList(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributePathIBs::Parser attributePathListParser;
AttributePathIB::Parser attributePathParser;
err = attributePathListParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
attributePathListParser.PrettyPrint();
#endif
}
-void BuildEventPath(nlTestSuite * apSuite, EventPathIB::Builder & aEventPathBuilder)
+void BuildEventPath(EventPathIB::Builder & aEventPathBuilder)
{
CHIP_ERROR err = CHIP_NO_ERROR;
aEventPathBuilder.Node(1).Endpoint(2).Cluster(3).Event(4).IsUrgent(true).EndOfEventPathIB();
err = aEventPathBuilder.GetError();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void ParseEventPath(nlTestSuite * apSuite, EventPathIB::Parser & aEventPathParser)
+void ParseEventPath(EventPathIB::Parser & aEventPathParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::NodeId node = 1;
@@ -323,50 +336,55 @@
aEventPathParser.PrettyPrint();
#endif
err = aEventPathParser.GetNode(&node);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && node == 1);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(node, 1u);
err = aEventPathParser.GetEndpoint(&endpoint);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && endpoint == 2);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(endpoint, 2u);
err = aEventPathParser.GetCluster(&cluster);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && cluster == 3);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(cluster, 3u);
err = aEventPathParser.GetEvent(&event);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && event == 4);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(event, 4u);
err = aEventPathParser.GetIsUrgent(&isUrgent);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && isUrgent == true);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(isUrgent);
}
-void BuildEventPaths(nlTestSuite * apSuite, EventPathIBs::Builder & aEventPathsBuilder)
+void BuildEventPaths(EventPathIBs::Builder & aEventPathsBuilder)
{
EventPathIB::Builder & eventPathBuilder = aEventPathsBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, eventPathBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventPath(apSuite, eventPathBuilder);
+ EXPECT_EQ(eventPathBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventPath(eventPathBuilder);
aEventPathsBuilder.EndOfEventPaths();
- NL_TEST_ASSERT(apSuite, aEventPathsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aEventPathsBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseEventPaths(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseEventPaths(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventPathIBs::Parser eventPathListParser;
err = eventPathListParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
eventPathListParser.PrettyPrint();
#endif
}
-void BuildCommandPath(nlTestSuite * apSuite, CommandPathIB::Builder & aCommandPathBuilder)
+void BuildCommandPath(CommandPathIB::Builder & aCommandPathBuilder)
{
aCommandPathBuilder.EndpointId(1).ClusterId(3).CommandId(4).EndOfCommandPathIB();
- NL_TEST_ASSERT(apSuite, aCommandPathBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aCommandPathBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseCommandPath(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseCommandPath(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandPathIB::Parser commandPathParser;
@@ -375,52 +393,55 @@
chip::CommandId commandId = 0;
err = commandPathParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
commandPathParser.PrettyPrint();
#endif
err = commandPathParser.GetEndpointId(&endpointId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && endpointId == 1);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(endpointId, 1u);
err = commandPathParser.GetClusterId(&clusterId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && clusterId == 3);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(clusterId, 3u);
err = commandPathParser.GetCommandId(&commandId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && commandId == 4);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(commandId, 4u);
}
-void BuildEventDataIB(nlTestSuite * apSuite, EventDataIB::Builder & aEventDataIBBuilder)
+void BuildEventDataIB(EventDataIB::Builder & aEventDataIBBuilder)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventPathIB::Builder & eventPathBuilder = aEventDataIBBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, eventPathBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventPath(apSuite, eventPathBuilder);
+ EXPECT_EQ(eventPathBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventPath(eventPathBuilder);
aEventDataIBBuilder.EventNumber(2).Priority(3).EpochTimestamp(4).SystemTimestamp(5).DeltaEpochTimestamp(6).DeltaSystemTimestamp(
7);
err = aEventDataIBBuilder.GetError();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Construct test event data
{
chip::TLV::TLVWriter * pWriter = aEventDataIBBuilder.GetWriter();
chip::TLV::TLVType dummyType = chip::TLV::kTLVType_NotSpecified;
err = pWriter->StartContainer(chip::TLV::ContextTag(chip::to_underlying(EventDataIB::Tag::kData)),
chip::TLV::kTLVType_Structure, dummyType);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = pWriter->PutBoolean(chip::TLV::ContextTag(1), true);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = pWriter->EndContainer(dummyType);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
aEventDataIBBuilder.EndOfEventDataIB();
}
-void ParseEventDataIB(nlTestSuite * apSuite, EventDataIB::Parser & aEventDataIBParser)
+void ParseEventDataIB(EventDataIB::Parser & aEventDataIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
uint8_t priorityLevel = 0;
@@ -437,20 +458,31 @@
{
EventPathIB::Parser eventPath;
err = aEventDataIBParser.GetPath(&eventPath);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
err = aEventDataIBParser.GetEventNumber(&number);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && number == 2);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(number, 2u);
+
err = aEventDataIBParser.GetPriority(&priorityLevel);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && priorityLevel == 3);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(priorityLevel, 3u);
+
err = aEventDataIBParser.GetEpochTimestamp(&EpochTimestamp);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && EpochTimestamp == 4);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(EpochTimestamp, 4u);
+
err = aEventDataIBParser.GetSystemTimestamp(&systemTimestamp);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && systemTimestamp == 5);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(systemTimestamp, 5u);
+
err = aEventDataIBParser.GetDeltaEpochTimestamp(&deltaUTCTimestamp);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && deltaUTCTimestamp == 6);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(deltaUTCTimestamp, 6u);
+
err = aEventDataIBParser.GetDeltaSystemTimestamp(&deltaSystemTimestamp);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && deltaSystemTimestamp == 7);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(deltaSystemTimestamp, 7u);
{
chip::TLV::TLVReader reader;
@@ -458,35 +490,36 @@
chip::TLV::TLVType container;
aEventDataIBParser.GetData(&reader);
err = reader.EnterContainer(container);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Get(val);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && val);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(val);
err = reader.ExitContainer(container);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
}
}
-void BuildEventStatusIB(nlTestSuite * apSuite, EventStatusIB::Builder & aEventStatusIBBuilder)
+void BuildEventStatusIB(EventStatusIB::Builder & aEventStatusIBBuilder)
{
EventPathIB::Builder & eventPathBuilder = aEventStatusIBBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, aEventStatusIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventPath(apSuite, eventPathBuilder);
+ EXPECT_EQ(aEventStatusIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventPath(eventPathBuilder);
StatusIB::Builder & statusIBBuilder = aEventStatusIBBuilder.CreateErrorStatus();
- NL_TEST_ASSERT(apSuite, statusIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildStatusIB(apSuite, statusIBBuilder);
+ EXPECT_EQ(statusIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildStatusIB(statusIBBuilder);
aEventStatusIBBuilder.EndOfEventStatusIB();
- NL_TEST_ASSERT(apSuite, aEventStatusIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aEventStatusIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseEventStatusIB(nlTestSuite * apSuite, EventStatusIB::Parser & aEventStatusIBParser)
+void ParseEventStatusIB(EventStatusIB::Parser & aEventStatusIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventPathIB::Parser eventPathParser;
@@ -495,23 +528,23 @@
aEventStatusIBParser.PrettyPrint();
#endif
err = aEventStatusIBParser.GetPath(&eventPathParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = aEventStatusIBParser.GetErrorStatus(&statusParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void BuildEventReportIB(nlTestSuite * apSuite, EventReportIB::Builder & aEventReportIBBuilder)
+void BuildEventReportIB(EventReportIB::Builder & aEventReportIBBuilder)
{
EventDataIB::Builder & eventDataIBBuilder = aEventReportIBBuilder.CreateEventData();
- NL_TEST_ASSERT(apSuite, aEventReportIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventDataIB(apSuite, eventDataIBBuilder);
+ EXPECT_EQ(aEventReportIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventDataIB(eventDataIBBuilder);
aEventReportIBBuilder.EndOfEventReportIB();
- NL_TEST_ASSERT(apSuite, aEventReportIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aEventReportIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseEventReportIB(nlTestSuite * apSuite, EventReportIB::Parser & aEventReportIBParser)
+void ParseEventReportIB(EventReportIB::Parser & aEventReportIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventStatusIB::Parser eventStatusParser;
@@ -522,45 +555,45 @@
#endif
err = aEventReportIBParser.GetEventData(&eventDataParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void BuildEventReports(nlTestSuite * apSuite, EventReportIBs::Builder & aEventReportsBuilder)
+void BuildEventReports(EventReportIBs::Builder & aEventReportsBuilder)
{
EventReportIB::Builder & eventReportIBBuilder = aEventReportsBuilder.CreateEventReport();
- NL_TEST_ASSERT(apSuite, aEventReportsBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventReportIB(apSuite, eventReportIBBuilder);
+ EXPECT_EQ(aEventReportsBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventReportIB(eventReportIBBuilder);
aEventReportsBuilder.EndOfEventReports();
- NL_TEST_ASSERT(apSuite, aEventReportsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aEventReportsBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseEventReports(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseEventReports(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventReportIBs::Parser eventReportsParser;
err = eventReportsParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
eventReportsParser.PrettyPrint();
#endif
}
-void BuildAttributeStatusIB(nlTestSuite * apSuite, AttributeStatusIB::Builder & aAttributeStatusIBBuilder)
+void BuildAttributeStatusIB(AttributeStatusIB::Builder & aAttributeStatusIBBuilder)
{
AttributePathIB::Builder & attributePathBuilder = aAttributeStatusIBBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, attributePathBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributePathIB(apSuite, attributePathBuilder);
+ EXPECT_EQ(attributePathBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributePathIB(attributePathBuilder);
StatusIB::Builder & statusIBBuilder = aAttributeStatusIBBuilder.CreateErrorStatus();
- NL_TEST_ASSERT(apSuite, statusIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildStatusIB(apSuite, statusIBBuilder);
+ EXPECT_EQ(statusIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildStatusIB(statusIBBuilder);
aAttributeStatusIBBuilder.EndOfAttributeStatusIB();
- NL_TEST_ASSERT(apSuite, aAttributeStatusIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aAttributeStatusIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseAttributeStatusIB(nlTestSuite * apSuite, AttributeStatusIB::Parser & aAttributeStatusIBParser)
+void ParseAttributeStatusIB(AttributeStatusIB::Parser & aAttributeStatusIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributePathIB::Parser attributePathParser;
@@ -570,43 +603,43 @@
aAttributeStatusIBParser.PrettyPrint();
#endif
err = aAttributeStatusIBParser.GetPath(&attributePathParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = aAttributeStatusIBParser.GetErrorStatus(&StatusIBParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void BuildAttributeStatuses(nlTestSuite * apSuite, AttributeStatusIBs::Builder & aAttributeStatusesBuilder)
+void BuildAttributeStatuses(AttributeStatusIBs::Builder & aAttributeStatusesBuilder)
{
AttributeStatusIB::Builder & aAttributeStatusIBBuilder = aAttributeStatusesBuilder.CreateAttributeStatus();
- NL_TEST_ASSERT(apSuite, aAttributeStatusesBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeStatusIB(apSuite, aAttributeStatusIBBuilder);
+ EXPECT_EQ(aAttributeStatusesBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeStatusIB(aAttributeStatusIBBuilder);
aAttributeStatusesBuilder.EndOfAttributeStatuses();
- NL_TEST_ASSERT(apSuite, aAttributeStatusesBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aAttributeStatusesBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseAttributeStatuses(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseAttributeStatuses(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributeStatusIBs::Parser attributeStatusParser;
err = attributeStatusParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
attributeStatusParser.PrettyPrint();
#endif
}
-void BuildAttributeDataIB(nlTestSuite * apSuite, AttributeDataIB::Builder & aAttributeDataIBBuilder)
+void BuildAttributeDataIB(AttributeDataIB::Builder & aAttributeDataIBBuilder)
{
CHIP_ERROR err = CHIP_NO_ERROR;
aAttributeDataIBBuilder.DataVersion(2);
AttributePathIB::Builder & attributePathBuilder = aAttributeDataIBBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, aAttributeDataIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributePathIB(apSuite, attributePathBuilder);
+ EXPECT_EQ(aAttributeDataIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributePathIB(attributePathBuilder);
// Construct attribute data
{
@@ -614,22 +647,22 @@
chip::TLV::TLVType dummyType = chip::TLV::kTLVType_NotSpecified;
err = pWriter->StartContainer(chip::TLV::ContextTag(chip::to_underlying(AttributeDataIB::Tag::kData)),
chip::TLV::kTLVType_Structure, dummyType);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = pWriter->PutBoolean(chip::TLV::ContextTag(1), true);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = pWriter->EndContainer(dummyType);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
err = aAttributeDataIBBuilder.GetError();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
aAttributeDataIBBuilder.EndOfAttributeDataIB();
- NL_TEST_ASSERT(apSuite, aAttributeDataIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aAttributeDataIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseAttributeDataIB(nlTestSuite * apSuite, AttributeDataIB::Parser & aAttributeDataIBParser)
+void ParseAttributeDataIB(AttributeDataIB::Parser & aAttributeDataIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributePathIB::Parser attributePathParser;
@@ -638,10 +671,11 @@
aAttributeDataIBParser.PrettyPrint();
#endif
err = aAttributeDataIBParser.GetPath(&attributePathParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = aAttributeDataIBParser.GetDataVersion(&version);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && version == 2);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(version, 2u);
{
chip::TLV::TLVReader reader;
@@ -649,52 +683,53 @@
chip::TLV::TLVType container;
aAttributeDataIBParser.GetData(&reader);
err = reader.EnterContainer(container);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Get(val);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && val);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(val);
err = reader.ExitContainer(container);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
}
-void BuildAttributeDataIBs(nlTestSuite * apSuite, AttributeDataIBs::Builder & aAttributeDataIBsBuilder)
+void BuildAttributeDataIBs(AttributeDataIBs::Builder & aAttributeDataIBsBuilder)
{
AttributeDataIB::Builder & attributeDataIBBuilder = aAttributeDataIBsBuilder.CreateAttributeDataIBBuilder();
- NL_TEST_ASSERT(apSuite, aAttributeDataIBsBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeDataIB(apSuite, attributeDataIBBuilder);
+ EXPECT_EQ(aAttributeDataIBsBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeDataIB(attributeDataIBBuilder);
aAttributeDataIBsBuilder.EndOfAttributeDataIBs();
- NL_TEST_ASSERT(apSuite, aAttributeDataIBsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aAttributeDataIBsBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseAttributeDataIBs(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseAttributeDataIBs(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributeDataIBs::Parser AttributeDataIBsParser;
err = AttributeDataIBsParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
AttributeDataIBsParser.PrettyPrint();
#endif
}
-void BuildAttributeReportIB(nlTestSuite * apSuite, AttributeReportIB::Builder & aAttributeReportIBBuilder)
+void BuildAttributeReportIB(AttributeReportIB::Builder & aAttributeReportIBBuilder)
{
AttributeDataIB::Builder & attributeDataIBBuilder = aAttributeReportIBBuilder.CreateAttributeData();
- NL_TEST_ASSERT(apSuite, aAttributeReportIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeDataIB(apSuite, attributeDataIBBuilder);
+ EXPECT_EQ(aAttributeReportIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeDataIB(attributeDataIBBuilder);
aAttributeReportIBBuilder.EndOfAttributeReportIB();
- NL_TEST_ASSERT(apSuite, aAttributeReportIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aAttributeReportIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseAttributeReportIB(nlTestSuite * apSuite, AttributeReportIB::Parser & aAttributeReportIBParser)
+void ParseAttributeReportIB(AttributeReportIB::Parser & aAttributeReportIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributeStatusIB::Parser attributeStatusParser;
@@ -704,38 +739,38 @@
aAttributeReportIBParser.PrettyPrint();
#endif
err = aAttributeReportIBParser.GetAttributeData(&attributeDataParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void BuildAttributeReportIBs(nlTestSuite * apSuite, AttributeReportIBs::Builder & aAttributeReportIBsBuilder)
+void BuildAttributeReportIBs(AttributeReportIBs::Builder & aAttributeReportIBsBuilder)
{
AttributeReportIB::Builder & attributeReportIBBuilder = aAttributeReportIBsBuilder.CreateAttributeReport();
- NL_TEST_ASSERT(apSuite, aAttributeReportIBsBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeReportIB(apSuite, attributeReportIBBuilder);
+ EXPECT_EQ(aAttributeReportIBsBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeReportIB(attributeReportIBBuilder);
aAttributeReportIBsBuilder.EndOfAttributeReportIBs();
- NL_TEST_ASSERT(apSuite, aAttributeReportIBsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aAttributeReportIBsBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseAttributeReportIBs(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseAttributeReportIBs(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributeReportIBs::Parser attributeReportIBsParser;
err = attributeReportIBsParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
attributeReportIBsParser.PrettyPrint();
#endif
}
-void BuildCommandDataIB(nlTestSuite * apSuite, CommandDataIB::Builder & aCommandDataIBBuilder)
+void BuildCommandDataIB(CommandDataIB::Builder & aCommandDataIBBuilder)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandPathIB::Builder & commandPathBuilder = aCommandDataIBBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, aCommandDataIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildCommandPath(apSuite, commandPathBuilder);
+ EXPECT_EQ(aCommandDataIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildCommandPath(commandPathBuilder);
// Construct command data
{
@@ -743,20 +778,20 @@
chip::TLV::TLVType dummyType = chip::TLV::kTLVType_NotSpecified;
err = pWriter->StartContainer(chip::TLV::ContextTag(chip::to_underlying(CommandDataIB::Tag::kFields)),
chip::TLV::kTLVType_Structure, dummyType);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = pWriter->PutBoolean(chip::TLV::ContextTag(1), true);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = pWriter->EndContainer(dummyType);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
aCommandDataIBBuilder.EndOfCommandDataIB();
- NL_TEST_ASSERT(apSuite, aCommandDataIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aCommandDataIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseCommandDataIB(nlTestSuite * apSuite, CommandDataIB::Parser & aCommandDataIBParser)
+void ParseCommandDataIB(CommandDataIB::Parser & aCommandDataIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandPathIB::Parser commandPathParser;
@@ -764,7 +799,7 @@
aCommandDataIBParser.PrettyPrint();
#endif
err = aCommandDataIBParser.GetPath(&commandPathParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
{
chip::TLV::TLVReader reader;
@@ -772,34 +807,35 @@
chip::TLV::TLVType container;
aCommandDataIBParser.GetFields(&reader);
err = reader.EnterContainer(container);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reader.Get(val);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && val);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(val);
err = reader.ExitContainer(container);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
}
-void BuildCommandStatusIB(nlTestSuite * apSuite, CommandStatusIB::Builder & aCommandStatusIBBuilder)
+void BuildCommandStatusIB(CommandStatusIB::Builder & aCommandStatusIBBuilder)
{
CommandPathIB::Builder & commandPathBuilder = aCommandStatusIBBuilder.CreatePath();
- NL_TEST_ASSERT(apSuite, aCommandStatusIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildCommandPath(apSuite, commandPathBuilder);
+ EXPECT_EQ(aCommandStatusIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildCommandPath(commandPathBuilder);
StatusIB::Builder & statusIBBuilder = aCommandStatusIBBuilder.CreateErrorStatus();
- NL_TEST_ASSERT(apSuite, statusIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildStatusIB(apSuite, statusIBBuilder);
+ EXPECT_EQ(statusIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildStatusIB(statusIBBuilder);
aCommandStatusIBBuilder.EndOfCommandStatusIB();
- NL_TEST_ASSERT(apSuite, aCommandStatusIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aCommandStatusIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseCommandStatusIB(nlTestSuite * apSuite, CommandStatusIB::Parser & aCommandStatusIBParser)
+void ParseCommandStatusIB(CommandStatusIB::Parser & aCommandStatusIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandPathIB::Parser commandPathParser;
@@ -808,37 +844,37 @@
aCommandStatusIBParser.PrettyPrint();
#endif
err = aCommandStatusIBParser.GetPath(&commandPathParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = aCommandStatusIBParser.GetErrorStatus(&statusParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void BuildWrongInvokeResponseIB(nlTestSuite * apSuite, InvokeResponseIB::Builder & aInvokeResponseIBBuilder)
+void BuildWrongInvokeResponseIB(InvokeResponseIB::Builder & aInvokeResponseIBBuilder)
{
aInvokeResponseIBBuilder.CreateCommand();
- NL_TEST_ASSERT(apSuite, aInvokeResponseIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aInvokeResponseIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void BuildInvokeResponseIBWithCommandDataIB(nlTestSuite * apSuite, InvokeResponseIB::Builder & aInvokeResponseIBBuilder)
+void BuildInvokeResponseIBWithCommandDataIB(InvokeResponseIB::Builder & aInvokeResponseIBBuilder)
{
CommandDataIB::Builder & commandDataBuilder = aInvokeResponseIBBuilder.CreateCommand();
- NL_TEST_ASSERT(apSuite, aInvokeResponseIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildCommandDataIB(apSuite, commandDataBuilder);
+ EXPECT_EQ(aInvokeResponseIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildCommandDataIB(commandDataBuilder);
aInvokeResponseIBBuilder.EndOfInvokeResponseIB();
- NL_TEST_ASSERT(apSuite, aInvokeResponseIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aInvokeResponseIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void BuildInvokeResponseIBWithCommandStatusIB(nlTestSuite * apSuite, InvokeResponseIB::Builder & aInvokeResponseIBBuilder)
+void BuildInvokeResponseIBWithCommandStatusIB(InvokeResponseIB::Builder & aInvokeResponseIBBuilder)
{
CommandStatusIB::Builder & commandStatusBuilder = aInvokeResponseIBBuilder.CreateStatus();
- NL_TEST_ASSERT(apSuite, aInvokeResponseIBBuilder.GetError() == CHIP_NO_ERROR);
- BuildCommandStatusIB(apSuite, commandStatusBuilder);
+ EXPECT_EQ(aInvokeResponseIBBuilder.GetError(), CHIP_NO_ERROR);
+ BuildCommandStatusIB(commandStatusBuilder);
aInvokeResponseIBBuilder.EndOfInvokeResponseIB();
- NL_TEST_ASSERT(apSuite, aInvokeResponseIBBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aInvokeResponseIBBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseInvokeResponseIBWithCommandDataIB(nlTestSuite * apSuite, InvokeResponseIB::Parser & aInvokeResponseIBParser)
+void ParseInvokeResponseIBWithCommandDataIB(InvokeResponseIB::Parser & aInvokeResponseIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandDataIB::Parser commandDataParser;
@@ -847,10 +883,10 @@
aInvokeResponseIBParser.PrettyPrint();
#endif
err = aInvokeResponseIBParser.GetCommand(&commandDataParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void ParseInvokeResponseIBWithCommandStatusIB(nlTestSuite * apSuite, InvokeResponseIB::Parser & aInvokeResponseIBParser)
+void ParseInvokeResponseIBWithCommandStatusIB(InvokeResponseIB::Parser & aInvokeResponseIBParser)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandDataIB::Parser commandDataParser;
@@ -859,90 +895,90 @@
aInvokeResponseIBParser.PrettyPrint();
#endif
err = aInvokeResponseIBParser.GetStatus(&statusIBParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
}
-void BuildInvokeRequests(nlTestSuite * apSuite, InvokeRequests::Builder & aInvokeRequestsBuilder)
+void BuildInvokeRequests(InvokeRequests::Builder & aInvokeRequestsBuilder)
{
CommandDataIB::Builder & aCommandDataIBBuilder = aInvokeRequestsBuilder.CreateCommandData();
- NL_TEST_ASSERT(apSuite, aInvokeRequestsBuilder.GetError() == CHIP_NO_ERROR);
- BuildCommandDataIB(apSuite, aCommandDataIBBuilder);
+ EXPECT_EQ(aInvokeRequestsBuilder.GetError(), CHIP_NO_ERROR);
+ BuildCommandDataIB(aCommandDataIBBuilder);
aInvokeRequestsBuilder.EndOfInvokeRequests();
- NL_TEST_ASSERT(apSuite, aInvokeRequestsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aInvokeRequestsBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseInvokeRequests(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseInvokeRequests(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeRequests::Parser invokeRequestsParser;
err = invokeRequestsParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
invokeRequestsParser.PrettyPrint();
#endif
}
-void BuildInvokeResponses(nlTestSuite * apSuite, InvokeResponseIBs::Builder & aInvokeResponsesBuilder)
+void BuildInvokeResponses(InvokeResponseIBs::Builder & aInvokeResponsesBuilder)
{
InvokeResponseIB::Builder & invokeResponseIBBuilder = aInvokeResponsesBuilder.CreateInvokeResponse();
- NL_TEST_ASSERT(apSuite, aInvokeResponsesBuilder.GetError() == CHIP_NO_ERROR);
- BuildInvokeResponseIBWithCommandDataIB(apSuite, invokeResponseIBBuilder);
+ EXPECT_EQ(aInvokeResponsesBuilder.GetError(), CHIP_NO_ERROR);
+ BuildInvokeResponseIBWithCommandDataIB(invokeResponseIBBuilder);
aInvokeResponsesBuilder.EndOfInvokeResponses();
- NL_TEST_ASSERT(apSuite, aInvokeResponsesBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(aInvokeResponsesBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseInvokeResponses(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseInvokeResponses(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeResponseIBs::Parser invokeResponsesParser;
err = invokeResponsesParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
invokeResponsesParser.PrettyPrint();
#endif
}
-void BuildInvokeRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildInvokeRequestMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeRequestMessage::Builder invokeRequestMessageBuilder;
err = invokeRequestMessageBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
invokeRequestMessageBuilder.SuppressResponse(true);
invokeRequestMessageBuilder.TimedRequest(true);
InvokeRequests::Builder & invokeRequestsBuilder = invokeRequestMessageBuilder.CreateInvokeRequests();
- NL_TEST_ASSERT(apSuite, invokeRequestsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeRequestsBuilder.GetError(), CHIP_NO_ERROR);
- BuildInvokeRequests(apSuite, invokeRequestsBuilder);
+ BuildInvokeRequests(invokeRequestsBuilder);
invokeRequestMessageBuilder.EndOfInvokeRequestMessage();
- NL_TEST_ASSERT(apSuite, invokeRequestMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeRequestMessageBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseInvokeRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseInvokeRequestMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeRequestMessage::Parser invokeRequestMessageParser;
err = invokeRequestMessageParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
bool suppressResponse = false;
bool timedRequest = false;
invokeRequestMessageParser.GetSuppressResponse(&suppressResponse);
invokeRequestMessageParser.GetTimedRequest(&timedRequest);
- NL_TEST_ASSERT(apSuite, suppressResponse == true);
- NL_TEST_ASSERT(apSuite, timedRequest == true);
+ EXPECT_TRUE(suppressResponse);
+ EXPECT_TRUE(timedRequest);
#if CHIP_CONFIG_IM_PRETTY_PRINT
invokeRequestMessageParser.PrettyPrint();
#endif
- NL_TEST_ASSERT(apSuite, invokeRequestMessageParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeRequestMessageParser.ExitContainer(), CHIP_NO_ERROR);
}
-void BuildInvokeResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildInvokeResponseMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeResponseMessage::Builder invokeResponseMessageBuilder;
@@ -950,67 +986,67 @@
invokeResponseMessageBuilder.SuppressResponse(true);
InvokeResponseIBs::Builder & invokeResponsesBuilder = invokeResponseMessageBuilder.CreateInvokeResponses();
- NL_TEST_ASSERT(apSuite, invokeResponseMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeResponseMessageBuilder.GetError(), CHIP_NO_ERROR);
- BuildInvokeResponses(apSuite, invokeResponsesBuilder);
+ BuildInvokeResponses(invokeResponsesBuilder);
invokeResponseMessageBuilder.MoreChunkedMessages(true);
- NL_TEST_ASSERT(apSuite, invokeResponseMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeResponseMessageBuilder.GetError(), CHIP_NO_ERROR);
invokeResponseMessageBuilder.EndOfInvokeResponseMessage();
- NL_TEST_ASSERT(apSuite, invokeResponseMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeResponseMessageBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseInvokeResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseInvokeResponseMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeResponseMessage::Parser invokeResponseMessageParser;
err = invokeResponseMessageParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
bool suppressResponse = false;
err = invokeResponseMessageParser.GetSuppressResponse(&suppressResponse);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, suppressResponse == true);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(suppressResponse);
bool moreChunkedMessages = true;
err = invokeResponseMessageParser.GetMoreChunkedMessages(&suppressResponse);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, moreChunkedMessages == true);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(moreChunkedMessages);
#if CHIP_CONFIG_IM_PRETTY_PRINT
invokeResponseMessageParser.PrettyPrint();
#endif
- NL_TEST_ASSERT(apSuite, invokeResponseMessageParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeResponseMessageParser.ExitContainer(), CHIP_NO_ERROR);
}
-void BuildReportDataMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildReportDataMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
ReportDataMessage::Builder reportDataMessageBuilder;
err = reportDataMessageBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
reportDataMessageBuilder.SubscriptionId(2);
- NL_TEST_ASSERT(apSuite, reportDataMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(reportDataMessageBuilder.GetError(), CHIP_NO_ERROR);
AttributeReportIBs::Builder & attributeReportIBs = reportDataMessageBuilder.CreateAttributeReportIBs();
- NL_TEST_ASSERT(apSuite, reportDataMessageBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeReportIBs(apSuite, attributeReportIBs);
+ EXPECT_EQ(reportDataMessageBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeReportIBs(attributeReportIBs);
EventReportIBs::Builder & eventReportIBs = reportDataMessageBuilder.CreateEventReports();
- NL_TEST_ASSERT(apSuite, reportDataMessageBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventReports(apSuite, eventReportIBs);
+ EXPECT_EQ(reportDataMessageBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventReports(eventReportIBs);
reportDataMessageBuilder.MoreChunkedMessages(true).SuppressResponse(true);
- NL_TEST_ASSERT(apSuite, reportDataMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(reportDataMessageBuilder.GetError(), CHIP_NO_ERROR);
reportDataMessageBuilder.EndOfReportDataMessage();
- NL_TEST_ASSERT(apSuite, reportDataMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(reportDataMessageBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseReportDataMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseReportDataMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
ReportDataMessage::Parser reportDataParser;
@@ -1026,55 +1062,58 @@
reportDataParser.PrettyPrint();
#endif
err = reportDataParser.GetSuppressResponse(&suppressResponse);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && suppressResponse);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(suppressResponse);
err = reportDataParser.GetSubscriptionId(&subscriptionId);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && subscriptionId == 2);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(subscriptionId, 2u);
err = reportDataParser.GetAttributeReportIBs(&attributeReportIBsParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reportDataParser.GetEventReports(&eventReportsParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = reportDataParser.GetMoreChunkedMessages(&moreChunkedMessages);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && moreChunkedMessages);
- NL_TEST_ASSERT(apSuite, reportDataParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(moreChunkedMessages);
+ EXPECT_EQ(reportDataParser.ExitContainer(), CHIP_NO_ERROR);
}
-void BuildReadRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildReadRequestMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
ReadRequestMessage::Builder readRequestBuilder;
err = readRequestBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
AttributePathIBs::Builder & attributePathIBs = readRequestBuilder.CreateAttributeRequests();
- NL_TEST_ASSERT(apSuite, readRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributePathList(apSuite, attributePathIBs);
+ EXPECT_EQ(readRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributePathList(attributePathIBs);
EventPathIBs::Builder & eventPathList = readRequestBuilder.CreateEventRequests();
- NL_TEST_ASSERT(apSuite, readRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventPaths(apSuite, eventPathList);
+ EXPECT_EQ(readRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventPaths(eventPathList);
EventFilterIBs::Builder & eventFilters = readRequestBuilder.CreateEventFilters();
- NL_TEST_ASSERT(apSuite, readRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventFilters(apSuite, eventFilters);
+ EXPECT_EQ(readRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventFilters(eventFilters);
readRequestBuilder.IsFabricFiltered(true);
- NL_TEST_ASSERT(apSuite, readRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(readRequestBuilder.GetError(), CHIP_NO_ERROR);
DataVersionFilterIBs::Builder & dataVersionFilters = readRequestBuilder.CreateDataVersionFilters();
- NL_TEST_ASSERT(apSuite, readRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildDataVersionFilterIBs(apSuite, dataVersionFilters);
+ EXPECT_EQ(readRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildDataVersionFilterIBs(dataVersionFilters);
readRequestBuilder.EndOfReadRequestMessage();
- NL_TEST_ASSERT(apSuite, readRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(readRequestBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseReadRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseReadRequestMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -1086,53 +1125,54 @@
bool isFabricFiltered = false;
err = readRequestParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
readRequestParser.PrettyPrint();
#endif
err = readRequestParser.GetAttributeRequests(&attributePathListParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = readRequestParser.GetDataVersionFilters(&dataVersionFilterIBsParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = readRequestParser.GetEventRequests(&eventPathListParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = readRequestParser.GetEventFilters(&eventFiltersParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = readRequestParser.GetIsFabricFiltered(&isFabricFiltered);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && isFabricFiltered);
- NL_TEST_ASSERT(apSuite, readRequestParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(isFabricFiltered);
+ EXPECT_EQ(readRequestParser.ExitContainer(), CHIP_NO_ERROR);
}
-void BuildWriteRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildWriteRequestMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
WriteRequestMessage::Builder writeRequestBuilder;
err = writeRequestBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
writeRequestBuilder.SuppressResponse(true);
- NL_TEST_ASSERT(apSuite, writeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(writeRequestBuilder.GetError(), CHIP_NO_ERROR);
writeRequestBuilder.TimedRequest(true);
- NL_TEST_ASSERT(apSuite, writeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(writeRequestBuilder.GetError(), CHIP_NO_ERROR);
AttributeDataIBs::Builder & attributeDataIBs = writeRequestBuilder.CreateWriteRequests();
- NL_TEST_ASSERT(apSuite, writeRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeDataIBs(apSuite, attributeDataIBs);
+ EXPECT_EQ(writeRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeDataIBs(attributeDataIBs);
writeRequestBuilder.MoreChunkedMessages(true);
- NL_TEST_ASSERT(apSuite, writeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(writeRequestBuilder.GetError(), CHIP_NO_ERROR);
writeRequestBuilder.EndOfWriteRequestMessage();
- NL_TEST_ASSERT(apSuite, writeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(writeRequestBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseWriteRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseWriteRequestMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -1143,97 +1183,100 @@
bool moreChunkedMessages = false;
err = writeRequestParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
writeRequestParser.PrettyPrint();
#endif
err = writeRequestParser.GetSuppressResponse(&suppressResponse);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && suppressResponse);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(suppressResponse);
err = writeRequestParser.GetTimedRequest(&timeRequest);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && timeRequest);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(timeRequest);
err = writeRequestParser.GetWriteRequests(&writeRequests);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = writeRequestParser.GetMoreChunkedMessages(&moreChunkedMessages);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR && moreChunkedMessages);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_TRUE(moreChunkedMessages);
}
-void BuildWriteResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildWriteResponseMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
WriteResponseMessage::Builder writeResponseBuilder;
err = writeResponseBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
AttributeStatusIBs::Builder & attributeStatuses = writeResponseBuilder.CreateWriteResponses();
- NL_TEST_ASSERT(apSuite, writeResponseBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeStatuses(apSuite, attributeStatuses);
+ EXPECT_EQ(writeResponseBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeStatuses(attributeStatuses);
writeResponseBuilder.EndOfWriteResponseMessage();
- NL_TEST_ASSERT(apSuite, writeResponseBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(writeResponseBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseWriteResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseWriteResponseMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
WriteResponseMessage::Parser writeResponseParser;
AttributeStatusIBs::Parser attributeStatusesParser;
err = writeResponseParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
writeResponseParser.PrettyPrint();
#endif
err = writeResponseParser.GetWriteResponses(&attributeStatusesParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, writeResponseParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(writeResponseParser.ExitContainer(), CHIP_NO_ERROR);
}
-void BuildSubscribeRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildSubscribeRequestMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
SubscribeRequestMessage::Builder subscribeRequestBuilder;
err = subscribeRequestBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
subscribeRequestBuilder.KeepSubscriptions(true);
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
subscribeRequestBuilder.MinIntervalFloorSeconds(2);
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
subscribeRequestBuilder.MaxIntervalCeilingSeconds(3);
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
AttributePathIBs::Builder & attributePathIBs = subscribeRequestBuilder.CreateAttributeRequests();
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributePathList(apSuite, attributePathIBs);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributePathList(attributePathIBs);
EventPathIBs::Builder & eventPathList = subscribeRequestBuilder.CreateEventRequests();
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventPaths(apSuite, eventPathList);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventPaths(eventPathList);
EventFilterIBs::Builder & eventFilters = subscribeRequestBuilder.CreateEventFilters();
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildEventFilters(apSuite, eventFilters);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildEventFilters(eventFilters);
subscribeRequestBuilder.IsFabricFiltered(true);
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
DataVersionFilterIBs::Builder & dataVersionFilters = subscribeRequestBuilder.CreateDataVersionFilters();
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
- BuildDataVersionFilterIBs(apSuite, dataVersionFilters);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
+ BuildDataVersionFilterIBs(dataVersionFilters);
subscribeRequestBuilder.EndOfSubscribeRequestMessage();
- NL_TEST_ASSERT(apSuite, subscribeRequestBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeRequestBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseSubscribeRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseSubscribeRequestMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -1248,55 +1291,57 @@
bool isFabricFiltered = false;
err = subscribeRequestParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
subscribeRequestParser.PrettyPrint();
#endif
err = subscribeRequestParser.GetAttributeRequests(&attributePathListParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = subscribeRequestParser.GetDataVersionFilters(&dataVersionFilterIBsParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = subscribeRequestParser.GetEventRequests(&eventPathListParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = subscribeRequestParser.GetEventFilters(&eventFiltersParser);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = subscribeRequestParser.GetMinIntervalFloorSeconds(&minIntervalFloorSeconds);
- NL_TEST_ASSERT(apSuite, minIntervalFloorSeconds == 2 && err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(minIntervalFloorSeconds, 2u);
err = subscribeRequestParser.GetMaxIntervalCeilingSeconds(&maxIntervalCeilingSeconds);
- NL_TEST_ASSERT(apSuite, maxIntervalCeilingSeconds == 3 && err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(maxIntervalCeilingSeconds, 3u);
err = subscribeRequestParser.GetKeepSubscriptions(&keepExistingSubscription);
- NL_TEST_ASSERT(apSuite, keepExistingSubscription && err == CHIP_NO_ERROR);
+ EXPECT_TRUE(keepExistingSubscription);
err = subscribeRequestParser.GetIsFabricFiltered(&isFabricFiltered);
- NL_TEST_ASSERT(apSuite, isFabricFiltered && err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, subscribeRequestParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_TRUE(isFabricFiltered);
+ EXPECT_EQ(subscribeRequestParser.ExitContainer(), CHIP_NO_ERROR);
}
-void BuildSubscribeResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildSubscribeResponseMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
SubscribeResponseMessage::Builder subscribeResponseBuilder;
err = subscribeResponseBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
subscribeResponseBuilder.SubscriptionId(1);
- NL_TEST_ASSERT(apSuite, subscribeResponseBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeResponseBuilder.GetError(), CHIP_NO_ERROR);
subscribeResponseBuilder.MaxInterval(2);
- NL_TEST_ASSERT(apSuite, subscribeResponseBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeResponseBuilder.GetError(), CHIP_NO_ERROR);
subscribeResponseBuilder.EndOfSubscribeResponseMessage();
- NL_TEST_ASSERT(apSuite, subscribeResponseBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeResponseBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseSubscribeResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseSubscribeResponseMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -1304,32 +1349,34 @@
chip::SubscriptionId subscriptionId = 0;
uint16_t maxInterval = 0;
err = subscribeResponseParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
subscribeResponseParser.PrettyPrint();
#endif
err = subscribeResponseParser.GetSubscriptionId(&subscriptionId);
- NL_TEST_ASSERT(apSuite, subscriptionId == 1 && err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(subscriptionId, 1u);
err = subscribeResponseParser.GetMaxInterval(&maxInterval);
- NL_TEST_ASSERT(apSuite, maxInterval == 2 && err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(maxInterval, 2u);
- NL_TEST_ASSERT(apSuite, subscribeResponseParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_EQ(subscribeResponseParser.ExitContainer(), CHIP_NO_ERROR);
}
-void BuildTimedRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+void BuildTimedRequestMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
TimedRequestMessage::Builder TimedRequestMessageBuilder;
err = TimedRequestMessageBuilder.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
TimedRequestMessageBuilder.TimeoutMs(1);
- NL_TEST_ASSERT(apSuite, TimedRequestMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(TimedRequestMessageBuilder.GetError(), CHIP_NO_ERROR);
}
-void ParseTimedRequestMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader)
+void ParseTimedRequestMessage(chip::TLV::TLVReader & aReader)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -1337,17 +1384,19 @@
uint16_t timeout = 0;
err = timedRequestMessageParser.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
timedRequestMessageParser.PrettyPrint();
#endif
err = timedRequestMessageParser.GetTimeoutMs(&timeout);
- NL_TEST_ASSERT(apSuite, timeout == 1 && err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- NL_TEST_ASSERT(apSuite, timedRequestMessageParser.ExitContainer() == CHIP_NO_ERROR);
+ EXPECT_EQ(timeout, 1u);
+
+ EXPECT_EQ(timedRequestMessageParser.ExitContainer(), CHIP_NO_ERROR);
}
-void DataVersionFilterIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestDataVersionFilterIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
DataVersionFilterIB::Builder dataVersionFilterIBBuilder;
@@ -1355,20 +1404,20 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
dataVersionFilterIBBuilder.Init(&writer);
- BuildDataVersionFilterIB(apSuite, dataVersionFilterIBBuilder);
+ BuildDataVersionFilterIB(dataVersionFilterIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseDataVersionFilterIB(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseDataVersionFilterIB(reader);
}
-void DataVersionFilterIBsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestDataVersionFilterIBs)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1377,22 +1426,22 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
err = dataVersionFilterIBsBuilder.Init(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- BuildDataVersionFilterIBs(apSuite, dataVersionFilterIBsBuilder);
+ BuildDataVersionFilterIBs(dataVersionFilterIBsBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseDataVersionFilterIBs(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseDataVersionFilterIBs(reader);
}
-void EventFilterTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventFilter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventFilterIB::Builder eventFilterBuilder;
@@ -1400,20 +1449,20 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
eventFilterBuilder.Init(&writer);
- BuildEventFilterIB(apSuite, eventFilterBuilder);
+ BuildEventFilterIB(eventFilterBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseEventFilterIB(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseEventFilterIB(reader);
}
-void EventFiltersTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventFilters)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1423,22 +1472,22 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
err = eventFiltersBuilder.Init(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- BuildEventFilters(apSuite, eventFiltersBuilder);
+ BuildEventFilters(eventFiltersBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseEventFilters(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseEventFilters(reader);
}
-void ClusterPathIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestClusterPathIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
ClusterPathIB::Builder clusterPathBuilder;
@@ -1446,21 +1495,21 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
clusterPathBuilder.Init(&writer);
- BuildClusterPathIB(apSuite, clusterPathBuilder);
+ BuildClusterPathIB(clusterPathBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- ParseClusterPathIB(apSuite, reader);
+ ParseClusterPathIB(reader);
}
-void AttributePathTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributePath)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributePathIB::Builder attributePathBuilder;
@@ -1468,21 +1517,21 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
attributePathBuilder.Init(&writer);
- BuildAttributePathIB(apSuite, attributePathBuilder);
+ BuildAttributePathIB(attributePathBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- ParseAttributePathIB(apSuite, reader);
+ ParseAttributePathIB(reader);
}
-void AttributePathListTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributePathList)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1492,22 +1541,22 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
err = attributePathListBuilder.Init(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- BuildAttributePathList(apSuite, attributePathListBuilder);
+ BuildAttributePathList(attributePathListBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseAttributePathList(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseAttributePathList(reader);
}
-void EventPathTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventPath)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventPathIB::Parser eventPathParser;
@@ -1516,22 +1565,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
eventPathBuilder.Init(&writer);
- BuildEventPath(apSuite, eventPathBuilder);
+ BuildEventPath(eventPathBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
eventPathParser.Init(reader);
- ParseEventPath(apSuite, eventPathParser);
+ ParseEventPath(eventPathParser);
}
-void EventPathsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventPaths)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1541,22 +1590,22 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
err = eventPathListBuilder.Init(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- BuildEventPaths(apSuite, eventPathListBuilder);
+ BuildEventPaths(eventPathListBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseEventPaths(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseEventPaths(reader);
}
-void CommandPathIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestCommandPathIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1564,24 +1613,24 @@
CommandPathIB::Builder commandPathBuilder;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
err = commandPathBuilder.Init(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- BuildCommandPath(apSuite, commandPathBuilder);
+ BuildCommandPath(commandPathBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
- ParseCommandPath(apSuite, reader);
+ ParseCommandPath(reader);
}
-void EventDataIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventDataIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventDataIB::Builder eventDataIBBuilder;
@@ -1590,22 +1639,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
eventDataIBBuilder.Init(&writer);
- BuildEventDataIB(apSuite, eventDataIBBuilder);
+ BuildEventDataIB(eventDataIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
eventDataIBParser.Init(reader);
- ParseEventDataIB(apSuite, eventDataIBParser);
+ ParseEventDataIB(eventDataIBParser);
}
-void EventReportIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventReportIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventReportIB::Builder eventReportIBBuilder;
@@ -1614,22 +1663,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
eventReportIBBuilder.Init(&writer);
- BuildEventReportIB(apSuite, eventReportIBBuilder);
+ BuildEventReportIB(eventReportIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
eventReportIBParser.Init(reader);
- ParseEventReportIB(apSuite, eventReportIBParser);
+ ParseEventReportIB(eventReportIBParser);
}
-void EventReportsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventReports)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1637,20 +1686,20 @@
EventReportIBs::Builder eventReportsBuilder;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
eventReportsBuilder.Init(&writer);
- BuildEventReports(apSuite, eventReportsBuilder);
+ BuildEventReports(eventReportsBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseEventReports(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseEventReports(reader);
}
-void EmptyEventReportsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEmptyEventReports)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1659,20 +1708,20 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
eventReportsBuilder.Init(&writer);
eventReportsBuilder.EndOfEventReports();
- NL_TEST_ASSERT(apSuite, eventReportsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(eventReportsBuilder.GetError(), CHIP_NO_ERROR);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseEventReports(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseEventReports(reader);
}
-void AttributeReportIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributeReportIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributeReportIB::Builder attributeReportIBBuilder;
@@ -1681,22 +1730,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
attributeReportIBBuilder.Init(&writer);
- BuildAttributeReportIB(apSuite, attributeReportIBBuilder);
+ BuildAttributeReportIB(attributeReportIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
attributeReportIBParser.Init(reader);
- ParseAttributeReportIB(apSuite, attributeReportIBParser);
+ ParseAttributeReportIB(attributeReportIBParser);
}
-void AttributeReportIBsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributeReportIBs)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1704,20 +1753,20 @@
AttributeReportIBs::Builder attributeReportIBsBuilder;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
attributeReportIBsBuilder.Init(&writer);
- BuildAttributeReportIBs(apSuite, attributeReportIBsBuilder);
+ BuildAttributeReportIBs(attributeReportIBsBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseAttributeReportIBs(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseAttributeReportIBs(reader);
}
-void EmptyAttributeReportIBsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEmptyAttributeReportIBs)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1726,20 +1775,20 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
attributeReportIBsBuilder.Init(&writer);
attributeReportIBsBuilder.EndOfAttributeReportIBs();
- NL_TEST_ASSERT(apSuite, attributeReportIBsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(attributeReportIBsBuilder.GetError(), CHIP_NO_ERROR);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseAttributeReportIBs(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseAttributeReportIBs(reader);
}
-void StatusIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestStatusIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
StatusIB::Builder statusIBBuilder;
@@ -1748,22 +1797,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
statusIBBuilder.Init(&writer);
- BuildStatusIB(apSuite, statusIBBuilder);
+ BuildStatusIB(statusIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
StatusIBParser.Init(reader);
- ParseStatusIB(apSuite, StatusIBParser);
+ ParseStatusIB(StatusIBParser);
}
-void EventStatusIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestEventStatusIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
EventStatusIB::Builder eventStatusIBBuilder;
@@ -1772,22 +1821,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
eventStatusIBBuilder.Init(&writer);
- BuildEventStatusIB(apSuite, eventStatusIBBuilder);
+ BuildEventStatusIB(eventStatusIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
eventStatusIBParser.Init(reader);
- ParseEventStatusIB(apSuite, eventStatusIBParser);
+ ParseEventStatusIB(eventStatusIBParser);
}
-void AttributeStatusIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributeStatusIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributeStatusIB::Builder attributeStatusIBBuilder;
@@ -1796,22 +1845,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
attributeStatusIBBuilder.Init(&writer);
- BuildAttributeStatusIB(apSuite, attributeStatusIBBuilder);
+ BuildAttributeStatusIB(attributeStatusIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
attributeStatusIBParser.Init(reader);
- ParseAttributeStatusIB(apSuite, attributeStatusIBParser);
+ ParseAttributeStatusIB(attributeStatusIBParser);
}
-void AttributeStatusesTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributeStatuses)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1819,21 +1868,21 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
AttributeStatusIBs::Builder attributeStatusesBuilder;
err = attributeStatusesBuilder.Init(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- BuildAttributeStatuses(apSuite, attributeStatusesBuilder);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ BuildAttributeStatuses(attributeStatusesBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseAttributeStatuses(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseAttributeStatuses(reader);
}
-void AttributeDataIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributeDataIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
AttributeDataIB::Builder AttributeDataIBBuilder;
@@ -1842,22 +1891,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
AttributeDataIBBuilder.Init(&writer);
- BuildAttributeDataIB(apSuite, AttributeDataIBBuilder);
+ BuildAttributeDataIB(AttributeDataIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
AttributeDataIBParser.Init(reader);
- ParseAttributeDataIB(apSuite, AttributeDataIBParser);
+ ParseAttributeDataIB(AttributeDataIBParser);
}
-void AttributeDataIBsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestAttributeDataIBs)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -1865,20 +1914,20 @@
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
AttributeDataIBs::Builder AttributeDataIBsBuilder;
AttributeDataIBsBuilder.Init(&writer);
- BuildAttributeDataIBs(apSuite, AttributeDataIBsBuilder);
+ BuildAttributeDataIBs(AttributeDataIBsBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseAttributeDataIBs(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseAttributeDataIBs(reader);
}
-void CommandDataIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestCommandDataIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandDataIB::Builder commandDataIBBuilder;
@@ -1887,22 +1936,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
commandDataIBBuilder.Init(&writer);
- BuildCommandDataIB(apSuite, commandDataIBBuilder);
+ BuildCommandDataIB(commandDataIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
commandDataIBParser.Init(reader);
- ParseCommandDataIB(apSuite, commandDataIBParser);
+ ParseCommandDataIB(commandDataIBParser);
}
-void CommandStatusIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestCommandStatusIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
CommandStatusIB::Builder commandStatusIBBuilder;
@@ -1911,22 +1960,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
commandStatusIBBuilder.Init(&writer);
- BuildCommandStatusIB(apSuite, commandStatusIBBuilder);
+ BuildCommandStatusIB(commandStatusIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
commandStatusIBParser.Init(reader);
- ParseCommandStatusIB(apSuite, commandStatusIBParser);
+ ParseCommandStatusIB(commandStatusIBParser);
}
-void InvokeResponseIBWithCommandDataIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeResponseIBWithCommandDataIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeResponseIB::Builder invokeResponseIBBuilder;
@@ -1935,22 +1984,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
invokeResponseIBBuilder.Init(&writer);
- BuildInvokeResponseIBWithCommandDataIB(apSuite, invokeResponseIBBuilder);
+ BuildInvokeResponseIBWithCommandDataIB(invokeResponseIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
invokeResponseIBParser.Init(reader);
- ParseInvokeResponseIBWithCommandDataIB(apSuite, invokeResponseIBParser);
+ ParseInvokeResponseIBWithCommandDataIB(invokeResponseIBParser);
}
-void InvokeResponseIBWithCommandStatusIBTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeResponseIBWithCommandStatusIB)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeResponseIB::Builder invokeResponseIBBuilder;
@@ -1959,22 +2008,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
invokeResponseIBBuilder.Init(&writer);
- BuildInvokeResponseIBWithCommandStatusIB(apSuite, invokeResponseIBBuilder);
+ BuildInvokeResponseIBWithCommandStatusIB(invokeResponseIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
invokeResponseIBParser.Init(reader);
- ParseInvokeResponseIBWithCommandStatusIB(apSuite, invokeResponseIBParser);
+ ParseInvokeResponseIBWithCommandStatusIB(invokeResponseIBParser);
}
-void InvokeResponseIBWithMalformDataTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeResponseIBWithMalformData)
{
CHIP_ERROR err = CHIP_NO_ERROR;
InvokeResponseIB::Builder invokeResponseIBBuilder;
@@ -1983,22 +2032,22 @@
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
invokeResponseIBBuilder.Init(&writer);
- BuildWrongInvokeResponseIB(apSuite, invokeResponseIBBuilder);
+ BuildWrongInvokeResponseIB(invokeResponseIBBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = invokeResponseIBParser.Init(reader);
- NL_TEST_ASSERT(apSuite, err != CHIP_NO_ERROR);
+ EXPECT_NE(err, CHIP_NO_ERROR);
}
-void InvokeRequestsTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeRequests)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -2006,20 +2055,20 @@
InvokeRequests::Builder invokeRequestsBuilder;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
invokeRequestsBuilder.Init(&writer);
- BuildInvokeRequests(apSuite, invokeRequestsBuilder);
+ BuildInvokeRequests(invokeRequestsBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseInvokeRequests(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseInvokeRequests(reader);
}
-void InvokeResponsesTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeResponses)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -2027,37 +2076,37 @@
InvokeResponseIBs::Builder invokeResponsesBuilder;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
invokeResponsesBuilder.Init(&writer);
- BuildInvokeResponses(apSuite, invokeResponsesBuilder);
+ BuildInvokeResponses(invokeResponsesBuilder);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
- ParseInvokeResponses(apSuite, reader);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ ParseInvokeResponses(reader);
}
-void InvokeInvokeRequestMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeInvokeRequestMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildInvokeRequestMessage(apSuite, writer);
+ BuildInvokeRequestMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseInvokeRequestMessage(apSuite, reader);
+ ParseInvokeRequestMessage(reader);
}
-void InvokeRequestMessageEndOfMessageReservationTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeRequestMessageEndOfMessageReservation)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -2065,18 +2114,18 @@
const uint32_t kSmallBufferSize = 100;
writer.Init(chip::System::PacketBufferHandle::New(kSmallBufferSize, /* aReservedSize = */ 0), /* useChainedBuffers = */ false);
err = invokeRequestMessageBuilder.InitWithEndBufferReserved(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAfterInitWithReservation = writer.GetRemainingFreeLength();
err = invokeRequestMessageBuilder.EndOfInvokeRequestMessage();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAfterEndingInvokeRequestMessage = writer.GetRemainingFreeLength();
- NL_TEST_ASSERT(apSuite, remainingLengthAfterInitWithReservation == remainingLengthAfterEndingInvokeRequestMessage);
+ EXPECT_EQ(remainingLengthAfterInitWithReservation, remainingLengthAfterEndingInvokeRequestMessage);
}
-void InvokeRequestsEndOfRequestReservationTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeRequestsEndOfRequestReservation)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -2084,41 +2133,41 @@
const uint32_t kSmallBufferSize = 100;
writer.Init(chip::System::PacketBufferHandle::New(kSmallBufferSize, /* aReservedSize = */ 0), /* useChainedBuffers = */ false);
err = invokeRequestMessageBuilder.InitWithEndBufferReserved(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
invokeRequestMessageBuilder.CreateInvokeRequests(/* aReserveEndBuffer = */ true);
InvokeRequests::Builder & invokeRequestsBuilder = invokeRequestMessageBuilder.GetInvokeRequests();
err = invokeRequestsBuilder.GetError();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
auto * invokeRequestsWriter = invokeRequestsBuilder.GetWriter();
uint32_t remainingLengthAfterInitWithReservation = invokeRequestsWriter->GetRemainingFreeLength();
err = invokeRequestsBuilder.EndOfInvokeRequests();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAfterEndingInvokeRequests = invokeRequestsWriter->GetRemainingFreeLength();
- NL_TEST_ASSERT(apSuite, remainingLengthAfterInitWithReservation == remainingLengthAfterEndingInvokeRequests);
+ EXPECT_EQ(remainingLengthAfterInitWithReservation, remainingLengthAfterEndingInvokeRequests);
}
-void InvokeInvokeResponseMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeInvokeResponseMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildInvokeResponseMessage(apSuite, writer);
+ BuildInvokeResponseMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseInvokeResponseMessage(apSuite, reader);
+ ParseInvokeResponseMessage(reader);
}
-void InvokeResponseMessageEndOfMessageReservationTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeResponseMessageEndOfMessageReservation)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -2126,17 +2175,17 @@
const uint32_t kSmallBufferSize = 100;
writer.Init(chip::System::PacketBufferHandle::New(kSmallBufferSize, /* aReservedSize = */ 0), /* useChainedBuffers = */ false);
err = invokeResponseMessageBuilder.InitWithEndBufferReserved(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAfterInitWithReservation = writer.GetRemainingFreeLength();
err = invokeResponseMessageBuilder.EndOfInvokeResponseMessage();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAfterEndingInvokeResponseMessage = writer.GetRemainingFreeLength();
- NL_TEST_ASSERT(apSuite, remainingLengthAfterInitWithReservation == remainingLengthAfterEndingInvokeResponseMessage);
+ EXPECT_EQ(remainingLengthAfterInitWithReservation, remainingLengthAfterEndingInvokeResponseMessage);
}
-void InvokeResponseMessageReservationForEndandMoreChunkTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeResponseMessageReservationForEndandMoreChunk)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -2144,22 +2193,22 @@
const uint32_t kSmallBufferSize = 100;
writer.Init(chip::System::PacketBufferHandle::New(kSmallBufferSize, /* aReservedSize = */ 0), /* useChainedBuffers = */ false);
err = invokeResponseMessageBuilder.InitWithEndBufferReserved(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = invokeResponseMessageBuilder.ReserveSpaceForMoreChunkedMessages();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAllReservations = writer.GetRemainingFreeLength();
invokeResponseMessageBuilder.MoreChunkedMessages(/* aMoreChunkedMessages = */ true);
- NL_TEST_ASSERT(apSuite, invokeResponseMessageBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(invokeResponseMessageBuilder.GetError(), CHIP_NO_ERROR);
err = invokeResponseMessageBuilder.EndOfInvokeResponseMessage();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAfterEndingInvokeResponseMessage = writer.GetRemainingFreeLength();
- NL_TEST_ASSERT(apSuite, remainingLengthAllReservations == remainingLengthAfterEndingInvokeResponseMessage);
+ EXPECT_EQ(remainingLengthAllReservations, remainingLengthAfterEndingInvokeResponseMessage);
}
-void InvokeResponsesEndOfResponseReservationTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestInvokeResponsesEndOfResponseReservation)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
@@ -2167,142 +2216,142 @@
const uint32_t kSmallBufferSize = 100;
writer.Init(chip::System::PacketBufferHandle::New(kSmallBufferSize, /* aReservedSize = */ 0), /* useChainedBuffers = */ false);
err = invokeResponseMessageBuilder.InitWithEndBufferReserved(&writer);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
invokeResponseMessageBuilder.CreateInvokeResponses(/* aReserveEndBuffer = */ true);
InvokeResponseIBs::Builder & invokeResponsesBuilder = invokeResponseMessageBuilder.GetInvokeResponses();
err = invokeResponsesBuilder.GetError();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
auto * invokeResponsesWriter = invokeResponsesBuilder.GetWriter();
uint32_t remainingLengthAfterInitWithReservation = invokeResponsesWriter->GetRemainingFreeLength();
err = invokeResponsesBuilder.EndOfInvokeResponses();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
uint32_t remainingLengthAfterEndingInvokeResponses = invokeResponsesWriter->GetRemainingFreeLength();
- NL_TEST_ASSERT(apSuite, remainingLengthAfterInitWithReservation == remainingLengthAfterEndingInvokeResponses);
+ EXPECT_EQ(remainingLengthAfterInitWithReservation, remainingLengthAfterEndingInvokeResponses);
}
-void ReportDataMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestReportDataMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildReportDataMessage(apSuite, writer);
+ BuildReportDataMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseReportDataMessage(apSuite, reader);
+ ParseReportDataMessage(reader);
}
-void ReadRequestMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestReadRequestMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildReadRequestMessage(apSuite, writer);
+ BuildReadRequestMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseReadRequestMessage(apSuite, reader);
+ ParseReadRequestMessage(reader);
}
-void WriteRequestMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestWriteRequestMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildWriteRequestMessage(apSuite, writer);
+ BuildWriteRequestMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseWriteRequestMessage(apSuite, reader);
+ ParseWriteRequestMessage(reader);
}
-void WriteResponseMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestWriteResponseMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildWriteResponseMessage(apSuite, writer);
+ BuildWriteResponseMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseWriteResponseMessage(apSuite, reader);
+ ParseWriteResponseMessage(reader);
}
-void SubscribeRequestMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestSubscribeRequestMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildSubscribeRequestMessage(apSuite, writer);
+ BuildSubscribeRequestMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseSubscribeRequestMessage(apSuite, reader);
+ ParseSubscribeRequestMessage(reader);
}
-void SubscribeResponseMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestSubscribeResponseMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildSubscribeResponseMessage(apSuite, writer);
+ BuildSubscribeResponseMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseSubscribeResponseMessage(apSuite, reader);
+ ParseSubscribeResponseMessage(reader);
}
-void TimedRequestMessageTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestTimedRequestMessage)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildTimedRequestMessage(apSuite, writer);
+ BuildTimedRequestMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
- ParseTimedRequestMessage(apSuite, reader);
+ ParseTimedRequestMessage(reader);
}
-void CheckPointRollbackTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestMessageDef, TestCheckPointRollback)
{
CHIP_ERROR err = CHIP_NO_ERROR;
size_t NumDataElement = 0;
@@ -2316,32 +2365,32 @@
// encode one attribute element
AttributeDataIB::Builder & attributeDataIBBuilder1 = attributeDataIBsBuilder.CreateAttributeDataIBBuilder();
- NL_TEST_ASSERT(apSuite, attributeDataIBsBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeDataIB(apSuite, attributeDataIBBuilder1);
+ EXPECT_EQ(attributeDataIBsBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeDataIB(attributeDataIBBuilder1);
// checkpoint
attributeDataIBsBuilder.Checkpoint(checkpoint);
// encode another attribute element
AttributeDataIB::Builder & attributeDataIBBuilder2 = attributeDataIBsBuilder.CreateAttributeDataIBBuilder();
- NL_TEST_ASSERT(apSuite, attributeDataIBsBuilder.GetError() == CHIP_NO_ERROR);
- BuildAttributeDataIB(apSuite, attributeDataIBBuilder2);
+ EXPECT_EQ(attributeDataIBsBuilder.GetError(), CHIP_NO_ERROR);
+ BuildAttributeDataIB(attributeDataIBBuilder2);
// rollback to previous checkpoint
attributeDataIBsBuilder.Rollback(checkpoint);
attributeDataIBsBuilder.EndOfAttributeDataIBs();
- NL_TEST_ASSERT(apSuite, attributeDataIBsBuilder.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(attributeDataIBsBuilder.GetError(), CHIP_NO_ERROR);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
DebugPrettyPrint(buf);
reader.Init(std::move(buf));
err = reader.Next();
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = AttributeDataIBsParser.Init(reader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
AttributeDataIBsParser.PrettyPrint();
@@ -2351,101 +2400,7 @@
++NumDataElement;
}
- NL_TEST_ASSERT(apSuite, NumDataElement == 1);
+ EXPECT_EQ(NumDataElement, 1u);
}
-/**
- * Test Suite. It lists all the test functions.
- */
-
-// clang-format off
-const nlTest sTests[] =
- {
- NL_TEST_DEF("ClusterPathIBTest", ClusterPathIBTest),
- NL_TEST_DEF("DataVersionFilterIBTest", DataVersionFilterIBTest),
- NL_TEST_DEF("DataVersionFilterIBsTest", DataVersionFilterIBsTest),
- NL_TEST_DEF("EventFilterTest", EventFilterTest),
- NL_TEST_DEF("EventFiltersTest", EventFiltersTest),
- NL_TEST_DEF("AttributePathTest", AttributePathTest),
- NL_TEST_DEF("AttributePathListTest", AttributePathListTest),
- NL_TEST_DEF("AttributeStatusIBTest", AttributeStatusIBTest),
- NL_TEST_DEF("AttributeStatusesTest", AttributeStatusesTest),
- NL_TEST_DEF("AttributeDataIBTest", AttributeDataIBTest),
- NL_TEST_DEF("AttributeDataIBsTest", AttributeDataIBsTest),
- NL_TEST_DEF("AttributeReportIBTest", AttributeReportIBTest),
- NL_TEST_DEF("AttributeReportIBsTest", AttributeReportIBsTest),
- NL_TEST_DEF("EmptyAttributeReportIBsTest", EmptyAttributeReportIBsTest),
- NL_TEST_DEF("EventPathTest", EventPathTest),
- NL_TEST_DEF("EventPathsTest", EventPathsTest),
- NL_TEST_DEF("EventDataIBTest", EventDataIBTest),
- NL_TEST_DEF("EventReportIBTest", EventReportIBTest),
- NL_TEST_DEF("EventReportsTest", EventReportsTest),
- NL_TEST_DEF("EmptyEventReportsTest", EmptyEventReportsTest),
- NL_TEST_DEF("StatusIBTest", StatusIBTest),
- NL_TEST_DEF("EventStatusIBTest", EventStatusIBTest),
- NL_TEST_DEF("CommandPathIBTest", CommandPathIBTest),
- NL_TEST_DEF("CommandDataIBTest", CommandDataIBTest),
- NL_TEST_DEF("CommandStatusIBTest", CommandStatusIBTest),
- NL_TEST_DEF("InvokeResponseIBWithCommandDataIBTest", InvokeResponseIBWithCommandDataIBTest),
- NL_TEST_DEF("InvokeResponseIBWithCommandStatusIBTest", InvokeResponseIBWithCommandStatusIBTest),
- NL_TEST_DEF("InvokeResponseIBWithMalformDataTest", InvokeResponseIBWithMalformDataTest),
- NL_TEST_DEF("InvokeRequestsTest", InvokeRequestsTest),
- NL_TEST_DEF("InvokeResponsesTest", InvokeResponsesTest),
- NL_TEST_DEF("InvokeInvokeRequestMessageTest", InvokeInvokeRequestMessageTest),
- NL_TEST_DEF("InvokeRequestMessageEndOfMessageReservationTest", InvokeRequestMessageEndOfMessageReservationTest),
- NL_TEST_DEF("InvokeRequestsEndOfRequestReservationTest", InvokeRequestsEndOfRequestReservationTest),
- NL_TEST_DEF("InvokeInvokeResponseMessageTest", InvokeInvokeResponseMessageTest),
- NL_TEST_DEF("InvokeResponseMessageEndOfMessageReservationTest", InvokeResponseMessageEndOfMessageReservationTest),
- NL_TEST_DEF("InvokeResponseMessageReservationForEndandMoreChunkTest", InvokeResponseMessageReservationForEndandMoreChunkTest),
- NL_TEST_DEF("InvokeResponsesEndOfResponseReservationTest", InvokeResponsesEndOfResponseReservationTest),
- NL_TEST_DEF("ReportDataMessageTest", ReportDataMessageTest),
- NL_TEST_DEF("ReadRequestMessageTest", ReadRequestMessageTest),
- NL_TEST_DEF("WriteRequestMessageTest", WriteRequestMessageTest),
- NL_TEST_DEF("WriteResponseMessageTest", WriteResponseMessageTest),
- NL_TEST_DEF("SubscribeRequestMessageTest", SubscribeRequestMessageTest),
- NL_TEST_DEF("SubscribeResponseMessageTest", SubscribeResponseMessageTest),
- NL_TEST_DEF("TimedRequestMessageTest", TimedRequestMessageTest),
- NL_TEST_DEF("CheckPointRollbackTest", CheckPointRollbackTest),
- NL_TEST_SENTINEL()
- };
-// clang-format on
} // namespace
-
-/**
- * Set up the test suite.
- */
-static int TestSetup(void * inContext)
-{
- CHIP_ERROR error = chip::Platform::MemoryInit();
- if (error != CHIP_NO_ERROR)
- return FAILURE;
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-static int TestTeardown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
-
-int TestMessageDef()
-{
- // clang-format off
- nlTestSuite theSuite =
- {
- "MessageDef",
- &sTests[0],
- TestSetup,
- TestTeardown,
- };
- // clang-format on
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestMessageDef)
diff --git a/src/app/tests/TestNullable.cpp b/src/app/tests/TestNullable.cpp
index 6600373..9a8104f 100644
--- a/src/app/tests/TestNullable.cpp
+++ b/src/app/tests/TestNullable.cpp
@@ -21,10 +21,11 @@
#include <stdint.h>
#include <string.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
+
#include <app/data-model/Nullable.h>
#include <lib/support/Span.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
using namespace chip;
using namespace chip::app::DataModel;
@@ -79,7 +80,7 @@
} // namespace
-static void TestBasic(nlTestSuite * inSuite, void * inContext)
+TEST(TestNullable, TestBasic)
{
// Set up our test CtorDtorCounter objects, which will mess with counts, before we reset the
// counts.
@@ -89,109 +90,109 @@
{
auto testNullable = MakeNullable<CtorDtorCounter>(100);
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 0);
- NL_TEST_ASSERT(inSuite, !testNullable.IsNull() && testNullable.Value().m == 100);
- NL_TEST_ASSERT(inSuite, testNullable == c100);
- NL_TEST_ASSERT(inSuite, testNullable != c101);
- NL_TEST_ASSERT(inSuite, testNullable != c102);
+ EXPECT_TRUE(CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 0);
+ EXPECT_TRUE(!testNullable.IsNull() && testNullable.Value().m == 100);
+ EXPECT_EQ(testNullable, c100);
+ EXPECT_NE(testNullable, c101);
+ EXPECT_NE(testNullable, c102);
testNullable.SetNull();
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 1);
- NL_TEST_ASSERT(inSuite, !!testNullable.IsNull());
- NL_TEST_ASSERT(inSuite, testNullable != c100);
- NL_TEST_ASSERT(inSuite, testNullable != c101);
- NL_TEST_ASSERT(inSuite, testNullable != c102);
+ EXPECT_TRUE(CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 1);
+ EXPECT_TRUE(testNullable.IsNull());
+ EXPECT_NE(testNullable, c100);
+ EXPECT_NE(testNullable, c101);
+ EXPECT_NE(testNullable, c102);
testNullable.SetNonNull(CtorDtorCounter(101));
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 2);
- NL_TEST_ASSERT(inSuite, !testNullable.IsNull() && testNullable.Value().m == 101);
- NL_TEST_ASSERT(inSuite, testNullable != c100);
- NL_TEST_ASSERT(inSuite, testNullable == c101);
- NL_TEST_ASSERT(inSuite, testNullable != c102);
+ EXPECT_TRUE(CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 2);
+ EXPECT_TRUE(!testNullable.IsNull() && testNullable.Value().m == 101);
+ EXPECT_NE(testNullable, c100);
+ EXPECT_EQ(testNullable, c101);
+ EXPECT_NE(testNullable, c102);
testNullable.SetNonNull(102);
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 4 && CtorDtorCounter::destroyed == 3);
- NL_TEST_ASSERT(inSuite, !testNullable.IsNull() && testNullable.Value().m == 102);
- NL_TEST_ASSERT(inSuite, testNullable != c100);
- NL_TEST_ASSERT(inSuite, testNullable != c101);
- NL_TEST_ASSERT(inSuite, testNullable == c102);
+ EXPECT_TRUE(CtorDtorCounter::created == 4 && CtorDtorCounter::destroyed == 3);
+ EXPECT_TRUE(!testNullable.IsNull() && testNullable.Value().m == 102);
+ EXPECT_NE(testNullable, c100);
+ EXPECT_NE(testNullable, c101);
+ EXPECT_EQ(testNullable, c102);
}
// Our test CtorDtorCounter objects are still in scope here.
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 4 && CtorDtorCounter::destroyed == 4);
+ EXPECT_TRUE(CtorDtorCounter::created == 4 && CtorDtorCounter::destroyed == 4);
}
-static void TestMake(nlTestSuite * inSuite, void * inContext)
+TEST(TestNullable, TestMake)
{
CtorDtorCounter::ResetCounter();
{
auto testNullable = MakeNullable<CtorDtorCounter>(200);
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 0);
- NL_TEST_ASSERT(inSuite, !testNullable.IsNull() && testNullable.Value().m == 200);
+ EXPECT_TRUE(CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 0);
+ EXPECT_TRUE(!testNullable.IsNull() && testNullable.Value().m == 200);
}
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 1);
+ EXPECT_TRUE(CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 1);
}
-static void TestCopy(nlTestSuite * inSuite, void * inContext)
+TEST(TestNullable, TestCopy)
{
CtorDtorCounter::ResetCounter();
{
auto testSrc = MakeNullable<CtorDtorCounter>(300);
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 0);
- NL_TEST_ASSERT(inSuite, !testSrc.IsNull() && testSrc.Value().m == 300);
+ EXPECT_TRUE(CtorDtorCounter::created == 1 && CtorDtorCounter::destroyed == 0);
+ EXPECT_TRUE(!testSrc.IsNull() && testSrc.Value().m == 300);
{
Nullable<CtorDtorCounter> testDst(testSrc);
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 0);
- NL_TEST_ASSERT(inSuite, !testDst.IsNull() && testDst.Value().m == 300);
+ EXPECT_TRUE(CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 0);
+ EXPECT_TRUE(!testDst.IsNull() && testDst.Value().m == 300);
}
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 1);
+ EXPECT_TRUE(CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 1);
{
Nullable<CtorDtorCounter> testDst;
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 1);
- NL_TEST_ASSERT(inSuite, !!testDst.IsNull());
+ EXPECT_TRUE(CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 1);
+ EXPECT_TRUE(testDst.IsNull());
testDst = testSrc;
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 1);
- NL_TEST_ASSERT(inSuite, !testDst.IsNull() && testDst.Value().m == 300);
+ EXPECT_TRUE(CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 1);
+ EXPECT_TRUE(!testDst.IsNull() && testDst.Value().m == 300);
}
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 2);
+ EXPECT_TRUE(CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 2);
}
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 3);
+ EXPECT_TRUE(CtorDtorCounter::created == 3 && CtorDtorCounter::destroyed == 3);
}
-static void TestMove(nlTestSuite * inSuite, void * inContext)
+TEST(TestNullable, TestMove)
{
CtorDtorCounter::ResetCounter();
{
auto testSrc = MakeNullable<MovableCtorDtorCounter>(400); // construct
Nullable<MovableCtorDtorCounter> testDst(std::move(testSrc)); // move construct
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 0);
- NL_TEST_ASSERT(inSuite, !testDst.IsNull() && testDst.Value().m == 400);
+ EXPECT_TRUE(CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 0);
+ EXPECT_TRUE(!testDst.IsNull() && testDst.Value().m == 400);
// destroy both testsSrc and testDst
}
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 2);
+ EXPECT_TRUE(CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 2);
CtorDtorCounter::ResetCounter();
{
Nullable<MovableCtorDtorCounter> testDst; // no object construction
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 0 && CtorDtorCounter::destroyed == 0);
- NL_TEST_ASSERT(inSuite, !!testDst.IsNull());
+ EXPECT_TRUE(CtorDtorCounter::created == 0 && CtorDtorCounter::destroyed == 0);
+ EXPECT_TRUE(testDst.IsNull());
auto testSrc = MakeNullable<MovableCtorDtorCounter>(401); // construct object
testDst = std::move(testSrc); // construct a copy
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 0);
- NL_TEST_ASSERT(inSuite, !testDst.IsNull() && testDst.Value().m == 401);
+ EXPECT_TRUE(CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 0);
+ EXPECT_TRUE(!testDst.IsNull() && testDst.Value().m == 401);
}
- NL_TEST_ASSERT(inSuite, CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 2);
+ EXPECT_TRUE(CtorDtorCounter::created == 2 && CtorDtorCounter::destroyed == 2);
}
-static void TestUpdate(nlTestSuite * inSuite, void * inContext)
+TEST(TestNullable, TestUpdate)
{
using SmallArray = std::array<uint8_t, 3>;
// Arrays
@@ -199,19 +200,19 @@
auto nullable1 = MakeNullable<SmallArray>({ 1, 2, 3 });
auto nullable2 = MakeNullable<SmallArray>({ 1, 2, 3 });
- NL_TEST_ASSERT(inSuite, !nullable1.IsNull());
- NL_TEST_ASSERT(inSuite, !nullable2.IsNull());
- NL_TEST_ASSERT(inSuite, nullable1 == nullable2);
+ EXPECT_FALSE(nullable1.IsNull());
+ EXPECT_FALSE(nullable2.IsNull());
+ EXPECT_EQ(nullable1, nullable2);
// No-op on change to same.
- NL_TEST_ASSERT(inSuite, nullable1.Update(nullable2) == false);
- NL_TEST_ASSERT(inSuite, nullable1 == nullable2);
+ EXPECT_FALSE(nullable1.Update(nullable2));
+ EXPECT_EQ(nullable1, nullable2);
nullable1.Value()[0] = 100;
- NL_TEST_ASSERT(inSuite, nullable1 != nullable2);
- NL_TEST_ASSERT(inSuite, nullable2.Update(nullable1) == true);
- NL_TEST_ASSERT(inSuite, nullable1 == nullable2);
+ EXPECT_NE(nullable1, nullable2);
+ EXPECT_TRUE(nullable2.Update(nullable1));
+ EXPECT_EQ(nullable1, nullable2);
}
// Structs
@@ -227,83 +228,52 @@
auto nullable1 = MakeNullable<SomeObject>({ 1, 2 });
auto nullable2 = MakeNullable<SomeObject>({ 1, 2 });
- NL_TEST_ASSERT(inSuite, !nullable1.IsNull());
- NL_TEST_ASSERT(inSuite, !nullable2.IsNull());
- NL_TEST_ASSERT(inSuite, nullable1 == nullable2);
+ EXPECT_FALSE(nullable1.IsNull());
+ EXPECT_FALSE(nullable2.IsNull());
+ EXPECT_EQ(nullable1, nullable2);
// No-op on change to same.
- NL_TEST_ASSERT(inSuite, nullable1.Update(nullable2) == false);
- NL_TEST_ASSERT(inSuite, nullable1 == nullable2);
+ EXPECT_FALSE(nullable1.Update(nullable2));
+ EXPECT_EQ(nullable1, nullable2);
nullable1.Value().a = 100;
- NL_TEST_ASSERT(inSuite, nullable1 != nullable2);
- NL_TEST_ASSERT(inSuite, nullable2.Update(nullable1) == true);
- NL_TEST_ASSERT(inSuite, nullable1 == nullable2);
+ EXPECT_NE(nullable1, nullable2);
+ EXPECT_TRUE(nullable2.Update(nullable1));
+ EXPECT_EQ(nullable1, nullable2);
}
// Scalar cases
{
auto nullable1 = MakeNullable(static_cast<uint8_t>(1));
- NL_TEST_ASSERT(inSuite, !nullable1.IsNull());
+ EXPECT_FALSE(nullable1.IsNull());
// Non-null to non-null same value
- NL_TEST_ASSERT(inSuite, nullable1.Update(nullable1) == false);
- NL_TEST_ASSERT(inSuite, !nullable1.IsNull());
+ EXPECT_FALSE(nullable1.Update(nullable1));
+ EXPECT_FALSE(nullable1.IsNull());
// Non-null to null
- NL_TEST_ASSERT(inSuite, nullable1.Update(NullNullable) == true);
- NL_TEST_ASSERT(inSuite, nullable1.IsNull());
+ EXPECT_TRUE(nullable1.Update(NullNullable));
+ EXPECT_TRUE(nullable1.IsNull());
// Null to null
- NL_TEST_ASSERT(inSuite, nullable1.Update(NullNullable) == false);
- NL_TEST_ASSERT(inSuite, nullable1.IsNull());
+ EXPECT_FALSE(nullable1.Update(NullNullable));
+ EXPECT_TRUE(nullable1.IsNull());
// Null to non-null
- NL_TEST_ASSERT(inSuite, nullable1.Update(MakeNullable(static_cast<uint8_t>(1))) == true);
- NL_TEST_ASSERT(inSuite, !nullable1.IsNull());
- NL_TEST_ASSERT(inSuite, nullable1.Value() == 1);
+ EXPECT_TRUE(nullable1.Update(MakeNullable(static_cast<uint8_t>(1))));
+ EXPECT_FALSE(nullable1.IsNull());
+ EXPECT_EQ(nullable1.Value(), 1);
// Non-null to non-null different value
- NL_TEST_ASSERT(inSuite, nullable1.Update(MakeNullable(static_cast<uint8_t>(2))) == true);
- NL_TEST_ASSERT(inSuite, !nullable1.IsNull());
- NL_TEST_ASSERT(inSuite, nullable1.Value() == 2);
+ EXPECT_TRUE(nullable1.Update(MakeNullable(static_cast<uint8_t>(2))));
+ EXPECT_FALSE(nullable1.IsNull());
+ EXPECT_EQ(nullable1.Value(), 2);
// Non-null to extent of range --> changes to "invalid" value in range.
- NL_TEST_ASSERT(inSuite, nullable1.Update(MakeNullable(static_cast<uint8_t>(255))) == true);
- NL_TEST_ASSERT(inSuite, !nullable1.IsNull());
- NL_TEST_ASSERT(inSuite, nullable1.Value() == 255);
+ EXPECT_TRUE(nullable1.Update(MakeNullable(static_cast<uint8_t>(255))));
+ EXPECT_FALSE(nullable1.IsNull());
+ EXPECT_EQ(nullable1.Value(), 255);
}
}
-
-// clang-format off
-static const nlTest sTests[] =
-{
- NL_TEST_DEF("NullableBasic", TestBasic),
- NL_TEST_DEF("NullableMake", TestMake),
- NL_TEST_DEF("NullableCopy", TestCopy),
- NL_TEST_DEF("NullableMove", TestMove),
- NL_TEST_DEF("Nullable Update operation", TestUpdate),
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
-int TestNullable()
-{
- // clang-format off
- nlTestSuite theSuite =
- {
- "Test for Nullable abstraction",
- &sTests[0],
- nullptr,
- nullptr
- };
- // clang-format on
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestNullable)
diff --git a/src/app/tests/TestNumericAttributeTraits.cpp b/src/app/tests/TestNumericAttributeTraits.cpp
index a88f392..6d6c357 100644
--- a/src/app/tests/TestNumericAttributeTraits.cpp
+++ b/src/app/tests/TestNumericAttributeTraits.cpp
@@ -27,8 +27,8 @@
*
*/
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
// We are testing the odd-sized-integers.h module
#include <app/util/odd-sized-integers.h>
@@ -38,7 +38,7 @@
namespace {
-void Test_UINT8(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT8)
{
// Unsigned 8-bit Integer : 1 byte, endianness does not matter.
using IntType = NumericAttributeTraits<uint8_t>;
@@ -53,8 +53,8 @@
const WorkingType workingTestUnsignedNullValue = 0xFF;
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 1);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 1);
+ EXPECT_EQ(sizeof(sValue), 1u);
+ EXPECT_GE(sizeof(wValue), 1u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, &storageTestData, sizeof(sValue));
@@ -63,7 +63,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 17);
+ EXPECT_EQ(wValue, 17u);
StorageType sNewValue;
@@ -71,22 +71,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(&storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(&storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_SINT8(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT8)
{
// Signed 8-bit Integer : 1 byte, endianness does not matter.
using IntType = NumericAttributeTraits<int8_t>;
@@ -101,8 +101,8 @@
const WorkingType workingTestUnsignedNullValue = -128; // 0x80
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 1);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 1);
+ EXPECT_EQ(sizeof(sValue), 1u);
+ EXPECT_GE(sizeof(wValue), 1u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, &storageTestData, sizeof(sValue));
@@ -111,7 +111,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 17);
+ EXPECT_EQ(wValue, 17);
StorageType sNewValue;
@@ -119,19 +119,19 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(&storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(&storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
enum class SimpleEnum : uint8_t
@@ -140,7 +140,7 @@
kOne = 1,
};
-void Test_SimpleEnum(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SimpleEnum)
{
// Unsigned 8-bit Integer : 1 byte, endianness does not matter.
using IntType = NumericAttributeTraits<SimpleEnum>;
@@ -155,8 +155,8 @@
const WorkingType workingTestUnsignedNullValue = static_cast<SimpleEnum>(0xFF);
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 1);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 1);
+ EXPECT_EQ(sizeof(sValue), 1u);
+ EXPECT_GE(sizeof(wValue), 1u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, &storageTestData, sizeof(sValue));
@@ -165,7 +165,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == SimpleEnum::kOne);
+ EXPECT_EQ(wValue, SimpleEnum::kOne);
StorageType sNewValue;
@@ -173,19 +173,19 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(&storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(&storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
////////////////////////////////////////////////////////////
@@ -200,7 +200,7 @@
// $$$$$$$$/ $$/ $$$$$$$/ $$$$$$/ $$/ //
// //
////////////////////////////////////////////////////////////
-void Test_UINT24_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT24_LE)
{
// Unsigned 24-bit Integer : 3 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<3, false>, false>;
@@ -215,8 +215,8 @@
const WorkingType workingTestUnsignedNullValue = 16777215; // 0xFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 3);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 3);
+ EXPECT_EQ(sizeof(sValue), 3u);
+ EXPECT_GE(sizeof(wValue), 3u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -225,7 +225,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456);
+ EXPECT_EQ(wValue, 0x123456u);
StorageType sNewValue;
@@ -233,22 +233,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_UINT24_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT24_BE)
{
// Unsigned 24-bit Integer : 3 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<3, false>, true>;
@@ -263,8 +263,8 @@
const WorkingType workingTestUnsignedNullValue = 16777215; // 0xFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 3);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 3);
+ EXPECT_EQ(sizeof(sValue), 3u);
+ EXPECT_GE(sizeof(wValue), 3u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -273,7 +273,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456);
+ EXPECT_EQ(wValue, 0x123456u);
StorageType sNewValue;
@@ -281,22 +281,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_SINT24_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT24_LE)
{
// Signed 24-bit Integer : 3 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<3, true>, false>;
@@ -315,10 +315,10 @@
const WorkingType workingTestSignedNullValue = -8388608; // -0x800000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 3);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 3);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 3);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 3);
+ EXPECT_EQ(sizeof(sValuePos), 3u);
+ EXPECT_GE(sizeof(wValuePos), 3u);
+ EXPECT_EQ(sizeof(sValueNeg), 3u);
+ EXPECT_GE(sizeof(wValueNeg), 3u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -329,8 +329,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -340,8 +340,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -349,19 +349,19 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
-void Test_SINT24_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT24_BE)
{
// Signed 24-bit Integer : 3 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<3, true>, true>;
@@ -380,10 +380,10 @@
const WorkingType workingTestSignedNullValue = -8388608; // -0x800000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 3);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 3);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 3);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 3);
+ EXPECT_EQ(sizeof(sValuePos), 3u);
+ EXPECT_GE(sizeof(wValuePos), 3u);
+ EXPECT_EQ(sizeof(sValueNeg), 3u);
+ EXPECT_GE(sizeof(wValueNeg), 3u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -394,8 +394,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -405,8 +405,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -414,16 +414,16 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
////////////////////////////////////////////////////////////
@@ -438,7 +438,7 @@
// $$/ $$$$$$/ $$$$$$$/ $$$$$$/ $$/ //
// //
////////////////////////////////////////////////////////////
-void Test_UINT40_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT40_LE)
{
// Unsigned 40-bit Integer : 5 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<5, false>, false>;
@@ -453,8 +453,8 @@
const WorkingType workingTestUnsignedNullValue = 1099511627775; // 0xFFFFFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 5);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 5);
+ EXPECT_EQ(sizeof(sValue), 5u);
+ EXPECT_GE(sizeof(wValue), 5u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -463,7 +463,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456789A);
+ EXPECT_EQ(wValue, 0x123456789Au);
StorageType sNewValue;
@@ -471,22 +471,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_UINT40_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT40_BE)
{
// Unsigned 40-bit Integer : 5 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<5, false>, true>;
@@ -500,8 +500,8 @@
const StorageType storageTestData = { 0x12, 0x34, 0x56, 0x78, 0x9A };
const WorkingType workingTestUnsignedNullValue = 1099511627775; // 0xFFFFFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 5);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 5);
+ EXPECT_EQ(sizeof(sValue), 5u);
+ EXPECT_GE(sizeof(wValue), 5u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -510,7 +510,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456789A);
+ EXPECT_EQ(wValue, 0x123456789Au);
StorageType sNewValue;
@@ -518,22 +518,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_SINT40_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT40_LE)
{
// Signed 40-bit Integer : 5 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<5, true>, false>;
@@ -552,10 +552,10 @@
const WorkingType workingTestSignedNullValue = -549755813888; // -0x8000000000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 5);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 5);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 5);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 5);
+ EXPECT_EQ(sizeof(sValuePos), 5u);
+ EXPECT_GE(sizeof(wValuePos), 5u);
+ EXPECT_EQ(sizeof(sValueNeg), 5u);
+ EXPECT_GE(sizeof(wValueNeg), 5u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -566,8 +566,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -577,8 +577,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -586,19 +586,19 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
-void Test_SINT40_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT40_BE)
{
// Signed 40-bit Integer : 5 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<5, true>, true>;
@@ -617,10 +617,10 @@
const WorkingType workingTestSignedNullValue = -549755813888; // -0x8000000000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 5);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 5);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 5);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 5);
+ EXPECT_EQ(sizeof(sValuePos), 5u);
+ EXPECT_GE(sizeof(wValuePos), 5u);
+ EXPECT_EQ(sizeof(sValueNeg), 5u);
+ EXPECT_GE(sizeof(wValueNeg), 5u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -631,8 +631,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -642,8 +642,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -651,16 +651,16 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
////////////////////////////////////////////////////////////
@@ -675,7 +675,7 @@
// $$/ $$$$$$/ $$$$$$$/ $$$$$$/ $$/ //
// //
////////////////////////////////////////////////////////////
-void Test_UINT48_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT48_LE)
{
// Unsigned 48-bit Integer : 6 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<6, false>, false>;
@@ -690,8 +690,8 @@
const WorkingType workingTestUnsignedNullValue = 281474976710655; // 0xFFFFFFFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 6);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 6);
+ EXPECT_EQ(sizeof(sValue), 6u);
+ EXPECT_GE(sizeof(wValue), 6u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -700,7 +700,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456789ABC);
+ EXPECT_EQ(wValue, 0x123456789ABCu);
StorageType sNewValue;
@@ -708,22 +708,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_UINT48_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT48_BE)
{
// Unsigned 48-bit Integer : 6 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<6, false>, true>;
@@ -738,8 +738,8 @@
const WorkingType workingTestUnsignedNullValue = 281474976710655; // 0xFFFFFFFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 6);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 6);
+ EXPECT_EQ(sizeof(sValue), 6u);
+ EXPECT_GE(sizeof(wValue), 6u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -748,7 +748,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456789ABC);
+ EXPECT_EQ(wValue, 0x123456789ABCu);
StorageType sNewValue;
@@ -756,22 +756,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_SINT48_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT48_LE)
{
// Signed 48-bit Integer : 6 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<6, true>, false>;
@@ -790,10 +790,10 @@
const WorkingType workingTestSignedNullValue = -140737488355328; // -0x800000000000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 6);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 6);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 6);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 6);
+ EXPECT_EQ(sizeof(sValuePos), 6u);
+ EXPECT_GE(sizeof(wValuePos), 6u);
+ EXPECT_EQ(sizeof(sValueNeg), 6u);
+ EXPECT_GE(sizeof(wValueNeg), 6u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -804,8 +804,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -815,8 +815,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -824,19 +824,19 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
-void Test_SINT48_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT48_BE)
{
// Signed 48-bit Integer : 6 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<6, true>, true>;
@@ -855,10 +855,10 @@
const WorkingType workingTestSignedNullValue = -140737488355328; // -0x800000000000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 6);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 6);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 6);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 6);
+ EXPECT_EQ(sizeof(sValuePos), 6u);
+ EXPECT_GE(sizeof(wValuePos), 6u);
+ EXPECT_EQ(sizeof(sValueNeg), 6u);
+ EXPECT_GE(sizeof(wValueNeg), 6u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -869,8 +869,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -880,8 +880,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -889,16 +889,16 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
////////////////////////////////////////////////////////////
@@ -913,7 +913,7 @@
// $$$$$$/ $$$$$$/ $$$$$$$/ $$$$$$/ $$/ //
// //
////////////////////////////////////////////////////////////
-void Test_UINT56_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT56_LE)
{
// Unsigned 56-bit Integer : 7 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<7, false>, false>;
@@ -928,8 +928,8 @@
const WorkingType workingTestUnsignedNullValue = 72057594037927935; // 0xFFFFFFFFFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 7);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 7);
+ EXPECT_EQ(sizeof(sValue), 7u);
+ EXPECT_GE(sizeof(wValue), 7u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -938,7 +938,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456789ABCDE);
+ EXPECT_EQ(wValue, 0x123456789ABCDEu);
StorageType sNewValue;
@@ -946,22 +946,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_UINT56_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_UINT56_BE)
{
// Unsigned 56-bit Integer : 7 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<7, false>, true>;
@@ -976,8 +976,8 @@
const WorkingType workingTestUnsignedNullValue = 72057594037927935; // 0xFFFFFFFFFFFFFF
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValue) == 7);
- NL_TEST_ASSERT(apSuite, sizeof(wValue) >= 7);
+ EXPECT_EQ(sizeof(sValue), 7u);
+ EXPECT_GE(sizeof(wValue), 7u);
// Initialize the Storage Value with the test-buffer
memcpy(&sValue, storageTestData, sizeof(sValue));
@@ -986,7 +986,7 @@
wValue = IntType::StorageToWorking(sValue);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValue == 0x123456789ABCDE);
+ EXPECT_EQ(wValue, 0x123456789ABCDEu);
StorageType sNewValue;
@@ -994,22 +994,22 @@
IntType::WorkingToStorage(wValue, sNewValue);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestData, &sNewValue, sizeof(sNewValue)) == 0);
+ EXPECT_EQ(memcmp(storageTestData, &sNewValue, sizeof(sNewValue)), 0);
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestUnsignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestUnsignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
}
-void Test_SINT56_LE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT56_LE)
{
// Signed 56-bit Integer : 6 bytes - little-endian
using IntType = NumericAttributeTraits<OddSizedInteger<7, true>, false>;
@@ -1028,10 +1028,10 @@
const WorkingType workingTestSignedNullValue = -36028797018963968; // -0x80000000000000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 7);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 7);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 7);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 7);
+ EXPECT_EQ(sizeof(sValuePos), 7u);
+ EXPECT_GE(sizeof(wValuePos), 7u);
+ EXPECT_EQ(sizeof(sValueNeg), 7u);
+ EXPECT_GE(sizeof(wValueNeg), 7u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -1042,8 +1042,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -1053,8 +1053,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -1062,19 +1062,19 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
-void Test_SINT56_BE(nlTestSuite * apSuite, void * apContext)
+TEST(TestNumericAttributeTraits, Test_SINT56_BE)
{
// Signed 56-bit Integer : 7 bytes - big-endian
using IntType = NumericAttributeTraits<OddSizedInteger<7, true>, true>;
@@ -1093,10 +1093,10 @@
const WorkingType workingTestSignedNullValue = -36028797018963968; // -0x80000000000000
// 1) Verify the size of the types
- NL_TEST_ASSERT(apSuite, sizeof(sValuePos) == 7);
- NL_TEST_ASSERT(apSuite, sizeof(wValuePos) >= 7);
- NL_TEST_ASSERT(apSuite, sizeof(sValueNeg) == 7);
- NL_TEST_ASSERT(apSuite, sizeof(wValueNeg) >= 7);
+ EXPECT_EQ(sizeof(sValuePos), 7u);
+ EXPECT_GE(sizeof(wValuePos), 7u);
+ EXPECT_EQ(sizeof(sValueNeg), 7u);
+ EXPECT_GE(sizeof(wValueNeg), 7u);
// Initialize the Storage Values with the test-buffer
memcpy(&sValuePos, storageTestDataPos, sizeof(sValuePos));
@@ -1107,8 +1107,8 @@
wValueNeg = IntType::StorageToWorking(sValueNeg);
// 2) Verify that the correct storage format has been used
- NL_TEST_ASSERT(apSuite, wValuePos == workingDataPos);
- NL_TEST_ASSERT(apSuite, wValueNeg == workingDataNeg);
+ EXPECT_EQ(wValuePos, workingDataPos);
+ EXPECT_EQ(wValueNeg, workingDataNeg);
StorageType sNewValuePos;
StorageType sNewValueNeg;
@@ -1118,8 +1118,8 @@
IntType::WorkingToStorage(wValueNeg, sNewValueNeg);
// 3) Verify that the bytes are located as intended
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)) == 0);
- NL_TEST_ASSERT(apSuite, memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)) == 0);
+ EXPECT_EQ(memcmp(storageTestDataPos, &sNewValuePos, sizeof(sNewValuePos)), 0);
+ EXPECT_EQ(memcmp(storageTestDataNeg, &sNewValueNeg, sizeof(sNewValueNeg)), 0);
StorageType sNullValue;
WorkingType wNullValue;
@@ -1127,82 +1127,16 @@
// Set Storage value to Null
IntType::SetNull(sNullValue);
wNullValue = IntType::StorageToWorking(sNullValue);
- NL_TEST_ASSERT(apSuite, wNullValue == workingTestSignedNullValue);
- NL_TEST_ASSERT(apSuite, (IntType::IsNullValue(sNullValue) == true));
+ EXPECT_EQ(wNullValue, workingTestSignedNullValue);
+ EXPECT_TRUE(IntType::IsNullValue(sNullValue));
// Verify that null values can fit into not nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, sNullValue) == true));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(false, wNullValue) == true));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, sNullValue));
+ EXPECT_TRUE(IntType::CanRepresentValue(false, wNullValue));
// Verify that null values can't fit into nullable
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, sNullValue) == false));
- NL_TEST_ASSERT(apSuite, (IntType::CanRepresentValue(true, wNullValue) == false));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, sNullValue));
+ EXPECT_FALSE(IntType::CanRepresentValue(true, wNullValue));
}
-static int TestSetup(void * inContext)
-{
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-static int TestTeardown(void * inContext)
-{
- return SUCCESS;
-}
-
-/**
- * Test Suite. It lists all the test functions.
- */
-
-// clang-format off
-const nlTest sTests[] =
-{
- NL_TEST_DEF("Test_UINT8", Test_UINT8),
- NL_TEST_DEF("Test_SINT8", Test_SINT8),
- NL_TEST_DEF("Test_SimpleEnum", Test_SimpleEnum),
-
- NL_TEST_DEF("Test_UINT24_LE",Test_UINT24_LE),
- NL_TEST_DEF("Test_SINT24_LE",Test_SINT24_LE),
- NL_TEST_DEF("Test_UINT24_BE",Test_UINT24_BE),
- NL_TEST_DEF("Test_SINT24_BE",Test_SINT24_BE),
-
- NL_TEST_DEF("Test_UINT40_LE",Test_UINT40_LE),
- NL_TEST_DEF("Test_SINT40_LE",Test_SINT40_LE),
- NL_TEST_DEF("Test_UINT40_BE",Test_UINT40_BE),
- NL_TEST_DEF("Test_SINT40_BE",Test_SINT40_BE),
-
- NL_TEST_DEF("Test_UINT48_LE",Test_UINT48_LE),
- NL_TEST_DEF("Test_SINT48_LE",Test_SINT48_LE),
- NL_TEST_DEF("Test_UINT48_BE",Test_UINT48_BE),
- NL_TEST_DEF("Test_SINT48_BE",Test_SINT48_BE),
-
- NL_TEST_DEF("Test_UINT56_LE",Test_UINT56_LE),
- NL_TEST_DEF("Test_SINT56_LE",Test_SINT56_LE),
- NL_TEST_DEF("Test_UINT56_BE",Test_UINT56_BE),
- NL_TEST_DEF("Test_SINT56_BE",Test_SINT56_BE),
-
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
-// clang-format off
-nlTestSuite theSuite =
-{
- "TestNumericAttributeTraits",
- &sTests[0],
- TestSetup,
- TestTeardown
-};
-// clang-format on
-
} // namespace
-
-int TestNumericAttributeTraits()
-{
- nlTestRunner(&theSuite, nullptr);
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestNumericAttributeTraits)
diff --git a/src/app/tests/TestOperationalStateClusterObjects.cpp b/src/app/tests/TestOperationalStateClusterObjects.cpp
index 9f7d1e1..2b30594 100644
--- a/src/app/tests/TestOperationalStateClusterObjects.cpp
+++ b/src/app/tests/TestOperationalStateClusterObjects.cpp
@@ -17,9 +17,8 @@
#include <app/clusters/operational-state-server/operational-state-cluster-objects.h>
#include <lib/core/CHIPPersistentStorageDelegate.h>
-#include <lib/support/UnitTestRegistration.h>
-
-#include <nlunit-test.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
using namespace chip;
using namespace chip::DeviceLayer;
@@ -27,31 +26,38 @@
namespace {
-void TestStructGenericOperationalStateConstructorWithOnlyStateID(nlTestSuite * inSuite, void * inContext)
+class TestOperationalStateClusterObjects : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
+
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalStateConstructorWithOnlyStateID)
{
using namespace chip::app::Clusters::OperationalState;
// General state: Stopped
GenericOperationalState operationalStateStopped(to_underlying(OperationalStateEnum::kStopped));
- NL_TEST_ASSERT(inSuite, operationalStateStopped.operationalStateID == to_underlying(OperationalStateEnum::kStopped));
- NL_TEST_ASSERT(inSuite, operationalStateStopped.operationalStateLabel.HasValue() == false);
+ EXPECT_EQ(operationalStateStopped.operationalStateID, to_underlying(OperationalStateEnum::kStopped));
+ EXPECT_FALSE(operationalStateStopped.operationalStateLabel.HasValue());
// General state: Running
GenericOperationalState operationalStateRunning(to_underlying(OperationalStateEnum::kRunning));
- NL_TEST_ASSERT(inSuite, operationalStateRunning.operationalStateID == to_underlying(OperationalStateEnum::kRunning));
- NL_TEST_ASSERT(inSuite, operationalStateRunning.operationalStateLabel.HasValue() == false);
+ EXPECT_EQ(operationalStateRunning.operationalStateID, to_underlying(OperationalStateEnum::kRunning));
+ EXPECT_FALSE(operationalStateRunning.operationalStateLabel.HasValue());
// General state: Paused
GenericOperationalState operationalStatePaused(to_underlying(OperationalStateEnum::kPaused));
- NL_TEST_ASSERT(inSuite, operationalStatePaused.operationalStateID == to_underlying(OperationalStateEnum::kPaused));
- NL_TEST_ASSERT(inSuite, operationalStatePaused.operationalStateLabel.HasValue() == false);
+ EXPECT_EQ(operationalStatePaused.operationalStateID, to_underlying(OperationalStateEnum::kPaused));
+ EXPECT_FALSE(operationalStatePaused.operationalStateLabel.HasValue());
// General state: Error
GenericOperationalState operationalStateError(to_underlying(OperationalStateEnum::kError));
- NL_TEST_ASSERT(inSuite, operationalStateError.operationalStateID == to_underlying(OperationalStateEnum::kError));
- NL_TEST_ASSERT(inSuite, operationalStateError.operationalStateLabel.HasValue() == false);
+ EXPECT_EQ(operationalStateError.operationalStateID, to_underlying(OperationalStateEnum::kError));
+ EXPECT_FALSE(operationalStateError.operationalStateLabel.HasValue());
}
-void TestStructGenericOperationalStateConstructorWithStateIDAndStateLabel(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalStateConstructorWithStateIDAndStateLabel)
{
using namespace chip::app::Clusters::OperationalState;
@@ -66,14 +72,13 @@
GenericOperationalState operationalState(to_underlying(ManufactureOperationalStateEnum::kRebooting),
Optional<CharSpan>(CharSpan::fromCharString(buffer)));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateID == to_underlying(ManufactureOperationalStateEnum::kRebooting));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.Value().size() == strlen(buffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer, strlen(buffer)) == 0);
+ EXPECT_EQ(operationalState.operationalStateID, to_underlying(ManufactureOperationalStateEnum::kRebooting));
+ EXPECT_TRUE(operationalState.operationalStateLabel.HasValue());
+ EXPECT_EQ(operationalState.operationalStateLabel.Value().size(), strlen(buffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer, strlen(buffer)), 0);
}
-void TestStructGenericOperationalStateCopyConstructor(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalStateCopyConstructor)
{
using namespace chip::app::Clusters::OperationalState;
@@ -89,18 +94,16 @@
GenericOperationalState desOperationalState(srcOperationalState);
- NL_TEST_ASSERT(inSuite, desOperationalState.operationalStateID == srcOperationalState.operationalStateID);
- NL_TEST_ASSERT(inSuite, desOperationalState.operationalStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite,
- desOperationalState.operationalStateLabel.Value().size() ==
- srcOperationalState.operationalStateLabel.Value().size());
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(desOperationalState.operationalStateLabel.Value().data()),
- const_cast<char *>(srcOperationalState.operationalStateLabel.Value().data()),
- desOperationalState.operationalStateLabel.Value().size()) == 0);
+ EXPECT_EQ(desOperationalState.operationalStateID, srcOperationalState.operationalStateID);
+ EXPECT_TRUE(desOperationalState.operationalStateLabel.HasValue());
+ EXPECT_EQ(desOperationalState.operationalStateLabel.Value().size(), srcOperationalState.operationalStateLabel.Value().size());
+ EXPECT_EQ(memcmp(const_cast<char *>(desOperationalState.operationalStateLabel.Value().data()),
+ const_cast<char *>(srcOperationalState.operationalStateLabel.Value().data()),
+ desOperationalState.operationalStateLabel.Value().size()),
+ 0);
}
-void TestStructGenericOperationalStateCopyAssignment(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalStateCopyAssignment)
{
using namespace chip::app::Clusters::OperationalState;
@@ -116,18 +119,16 @@
GenericOperationalState desOperationalState = srcOperationalState;
- NL_TEST_ASSERT(inSuite, desOperationalState.operationalStateID == srcOperationalState.operationalStateID);
- NL_TEST_ASSERT(inSuite, desOperationalState.operationalStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite,
- desOperationalState.operationalStateLabel.Value().size() ==
- srcOperationalState.operationalStateLabel.Value().size());
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(desOperationalState.operationalStateLabel.Value().data()),
- const_cast<char *>(srcOperationalState.operationalStateLabel.Value().data()),
- desOperationalState.operationalStateLabel.Value().size()) == 0);
+ EXPECT_EQ(desOperationalState.operationalStateID, srcOperationalState.operationalStateID);
+ EXPECT_TRUE(desOperationalState.operationalStateLabel.HasValue());
+ EXPECT_EQ(desOperationalState.operationalStateLabel.Value().size(), srcOperationalState.operationalStateLabel.Value().size());
+ EXPECT_EQ(memcmp(const_cast<char *>(desOperationalState.operationalStateLabel.Value().data()),
+ const_cast<char *>(srcOperationalState.operationalStateLabel.Value().data()),
+ desOperationalState.operationalStateLabel.Value().size()),
+ 0);
}
-void TestStructGenericOperationalStateFuncSet(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalStateFuncSet)
{
using namespace chip::app::Clusters::OperationalState;
@@ -144,17 +145,16 @@
// change state without label
operationalState.Set(to_underlying(OperationalStateEnum::kStopped));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateID == to_underlying(OperationalStateEnum::kStopped));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.HasValue() == false);
+ EXPECT_EQ(operationalState.operationalStateID, to_underlying(OperationalStateEnum::kStopped));
+ EXPECT_FALSE(operationalState.operationalStateLabel.HasValue());
// change state with label
operationalState.Set(to_underlying(ManufactureOperationalStateEnum::kRebooting),
Optional<CharSpan>(CharSpan::fromCharString(buffer)));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateID == to_underlying(ManufactureOperationalStateEnum::kRebooting));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.Value().size() == strlen(buffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer, strlen(buffer)) == 0);
+ EXPECT_EQ(operationalState.operationalStateID, to_underlying(ManufactureOperationalStateEnum::kRebooting));
+ EXPECT_TRUE(operationalState.operationalStateLabel.HasValue());
+ EXPECT_EQ(operationalState.operationalStateLabel.Value().size(), strlen(buffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer, strlen(buffer)), 0);
// change state with label, label len = kOperationalStateLabelMaxSize
for (size_t i = 0; i < sizeof(buffer); i++)
@@ -163,11 +163,10 @@
}
operationalState.Set(to_underlying(ManufactureOperationalStateEnum::kRebooting),
Optional<CharSpan>(CharSpan(buffer, sizeof(buffer))));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateID == to_underlying(ManufactureOperationalStateEnum::kRebooting));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.Value().size() == sizeof(buffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer, sizeof(buffer)) == 0);
+ EXPECT_EQ(operationalState.operationalStateID, to_underlying(ManufactureOperationalStateEnum::kRebooting));
+ EXPECT_TRUE(operationalState.operationalStateLabel.HasValue());
+ EXPECT_EQ(operationalState.operationalStateLabel.Value().size(), sizeof(buffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer, sizeof(buffer)), 0);
// change state with label, label len larger than kOperationalStateLabelMaxSize
char buffer2[kOperationalStateLabelMaxSize + 1];
@@ -178,51 +177,47 @@
}
operationalState.Set(to_underlying(ManufactureOperationalStateEnum::kRebooting),
Optional<CharSpan>(CharSpan(buffer2, sizeof(buffer2))));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateID == to_underlying(ManufactureOperationalStateEnum::kRebooting));
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalState.operationalStateLabel.Value().size() == kOperationalStateLabelMaxSize);
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer2,
- kOperationalStateLabelMaxSize) == 0);
+ EXPECT_EQ(operationalState.operationalStateID, to_underlying(ManufactureOperationalStateEnum::kRebooting));
+ EXPECT_TRUE(operationalState.operationalStateLabel.HasValue());
+ EXPECT_EQ(operationalState.operationalStateLabel.Value().size(), kOperationalStateLabelMaxSize);
+ EXPECT_EQ(
+ memcmp(const_cast<char *>(operationalState.operationalStateLabel.Value().data()), buffer2, kOperationalStateLabelMaxSize),
+ 0);
}
-void TestStructGenericOperationalErrorConstructorWithOnlyStateID(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalErrorConstructorWithOnlyStateID)
{
using namespace chip::app::Clusters::OperationalState;
// General errors: NoError
GenericOperationalError operationalErrorNoErr(to_underlying(ErrorStateEnum::kNoError));
- NL_TEST_ASSERT(inSuite, operationalErrorNoErr.errorStateID == to_underlying(ErrorStateEnum::kNoError));
- NL_TEST_ASSERT(inSuite, operationalErrorNoErr.errorStateLabel.HasValue() == false);
- NL_TEST_ASSERT(inSuite, operationalErrorNoErr.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalErrorNoErr.errorStateID, to_underlying(ErrorStateEnum::kNoError));
+ EXPECT_FALSE(operationalErrorNoErr.errorStateLabel.HasValue());
+ EXPECT_FALSE(operationalErrorNoErr.errorStateDetails.HasValue());
// General errors: UnableToStartOrResume
GenericOperationalError operationalErrorUnableToStartOrResume(to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite,
- operationalErrorUnableToStartOrResume.errorStateID == to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalErrorUnableToStartOrResume.errorStateLabel.HasValue() == false);
- NL_TEST_ASSERT(inSuite, operationalErrorUnableToStartOrResume.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalErrorUnableToStartOrResume.errorStateID, to_underlying(ErrorStateEnum::kUnableToStartOrResume));
+ EXPECT_FALSE(operationalErrorUnableToStartOrResume.errorStateLabel.HasValue());
+ EXPECT_FALSE(operationalErrorUnableToStartOrResume.errorStateDetails.HasValue());
// General errors: UnableToCompleteOperation
GenericOperationalError operationalErrorkUnableToCompleteOperation(to_underlying(ErrorStateEnum::kUnableToCompleteOperation));
- NL_TEST_ASSERT(inSuite,
- operationalErrorkUnableToCompleteOperation.errorStateID ==
- to_underlying(ErrorStateEnum::kUnableToCompleteOperation));
- NL_TEST_ASSERT(inSuite, operationalErrorkUnableToCompleteOperation.errorStateLabel.HasValue() == false);
- NL_TEST_ASSERT(inSuite, operationalErrorkUnableToCompleteOperation.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalErrorkUnableToCompleteOperation.errorStateID, to_underlying(ErrorStateEnum::kUnableToCompleteOperation));
+ EXPECT_FALSE(operationalErrorkUnableToCompleteOperation.errorStateLabel.HasValue());
+ EXPECT_FALSE(operationalErrorkUnableToCompleteOperation.errorStateDetails.HasValue());
// General errors: CommandInvalidInState
GenericOperationalError operationalErrorCommandInvalidInState(to_underlying(ErrorStateEnum::kCommandInvalidInState));
- NL_TEST_ASSERT(inSuite,
- operationalErrorCommandInvalidInState.errorStateID == to_underlying(ErrorStateEnum::kCommandInvalidInState));
- NL_TEST_ASSERT(inSuite, operationalErrorCommandInvalidInState.errorStateLabel.HasValue() == false);
- NL_TEST_ASSERT(inSuite, operationalErrorCommandInvalidInState.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalErrorCommandInvalidInState.errorStateID, to_underlying(ErrorStateEnum::kCommandInvalidInState));
+ EXPECT_FALSE(operationalErrorCommandInvalidInState.errorStateLabel.HasValue());
+ EXPECT_FALSE(operationalErrorCommandInvalidInState.errorStateDetails.HasValue());
}
-void TestStructGenericOperationalErrorConstructorWithStateIDAndStateLabel(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalErrorConstructorWithStateIDAndStateLabel)
{
using namespace chip::app::Clusters::OperationalState;
@@ -237,16 +232,14 @@
GenericOperationalError operationalError(to_underlying(ManufactureOperationalErrorEnum::kLowBattery),
Optional<CharSpan>(CharSpan::fromCharString(labelBuffer)));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ManufactureOperationalErrorEnum::kLowBattery));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.Value().size() == strlen(labelBuffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)) ==
- 0);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ManufactureOperationalErrorEnum::kLowBattery));
+ EXPECT_TRUE(operationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(operationalError.errorStateLabel.Value().size(), strlen(labelBuffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)), 0);
+ EXPECT_FALSE(operationalError.errorStateDetails.HasValue());
}
-void TestStructGenericOperationalErrorConstructorWithFullParam(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalErrorConstructorWithFullParam)
{
using namespace chip::app::Clusters::OperationalState;
@@ -263,21 +256,17 @@
Optional<CharSpan>(CharSpan::fromCharString(labelBuffer)),
Optional<CharSpan>(CharSpan::fromCharString(detailBuffer)));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ManufactureOperationalErrorEnum::kLowBattery));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.Value().size() == strlen(labelBuffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)) ==
- 0);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ManufactureOperationalErrorEnum::kLowBattery));
+ EXPECT_TRUE(operationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(operationalError.errorStateLabel.Value().size(), strlen(labelBuffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)), 0);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.Value().size() == strlen(detailBuffer));
- NL_TEST_ASSERT(
- inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateDetails.Value().data()), detailBuffer, strlen(detailBuffer)) == 0);
+ EXPECT_TRUE(operationalError.errorStateDetails.HasValue());
+ EXPECT_EQ(operationalError.errorStateDetails.Value().size(), strlen(detailBuffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateDetails.Value().data()), detailBuffer, strlen(detailBuffer)), 0);
}
-void TestStructGenericOperationalErrorCopyConstructor(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalErrorCopyConstructor)
{
using namespace chip::app::Clusters::OperationalState;
@@ -296,25 +285,23 @@
// call copy constructor
GenericOperationalError desOperationalError(srcOperationalError);
- NL_TEST_ASSERT(inSuite, desOperationalError.errorStateID == srcOperationalError.errorStateID);
- NL_TEST_ASSERT(inSuite, desOperationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite,
- desOperationalError.errorStateLabel.Value().size() == srcOperationalError.errorStateLabel.Value().size());
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(desOperationalError.errorStateLabel.Value().data()),
- const_cast<char *>(srcOperationalError.errorStateLabel.Value().data()),
- desOperationalError.errorStateLabel.Value().size()) == 0);
+ EXPECT_EQ(desOperationalError.errorStateID, srcOperationalError.errorStateID);
+ EXPECT_TRUE(desOperationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(desOperationalError.errorStateLabel.Value().size(), srcOperationalError.errorStateLabel.Value().size());
+ EXPECT_EQ(memcmp(const_cast<char *>(desOperationalError.errorStateLabel.Value().data()),
+ const_cast<char *>(srcOperationalError.errorStateLabel.Value().data()),
+ desOperationalError.errorStateLabel.Value().size()),
+ 0);
- NL_TEST_ASSERT(inSuite, desOperationalError.errorStateDetails.HasValue() == true);
- NL_TEST_ASSERT(inSuite,
- desOperationalError.errorStateDetails.Value().size() == srcOperationalError.errorStateDetails.Value().size());
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(desOperationalError.errorStateDetails.Value().data()),
- const_cast<char *>(srcOperationalError.errorStateDetails.Value().data()),
- desOperationalError.errorStateDetails.Value().size()) == 0);
+ EXPECT_TRUE(desOperationalError.errorStateDetails.HasValue());
+ EXPECT_EQ(desOperationalError.errorStateDetails.Value().size(), srcOperationalError.errorStateDetails.Value().size());
+ EXPECT_EQ(memcmp(const_cast<char *>(desOperationalError.errorStateDetails.Value().data()),
+ const_cast<char *>(srcOperationalError.errorStateDetails.Value().data()),
+ desOperationalError.errorStateDetails.Value().size()),
+ 0);
}
-void TestStructGenericOperationalErrorCopyAssignment(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalErrorCopyAssignment)
{
using namespace chip::app::Clusters::OperationalState;
@@ -333,25 +320,23 @@
// call copy assignment
GenericOperationalError desOperationalError = srcOperationalError;
- NL_TEST_ASSERT(inSuite, desOperationalError.errorStateID == srcOperationalError.errorStateID);
- NL_TEST_ASSERT(inSuite, desOperationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite,
- desOperationalError.errorStateLabel.Value().size() == srcOperationalError.errorStateLabel.Value().size());
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(desOperationalError.errorStateLabel.Value().data()),
- const_cast<char *>(srcOperationalError.errorStateLabel.Value().data()),
- desOperationalError.errorStateLabel.Value().size()) == 0);
+ EXPECT_EQ(desOperationalError.errorStateID, srcOperationalError.errorStateID);
+ EXPECT_TRUE(desOperationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(desOperationalError.errorStateLabel.Value().size(), srcOperationalError.errorStateLabel.Value().size());
+ EXPECT_EQ(memcmp(const_cast<char *>(desOperationalError.errorStateLabel.Value().data()),
+ const_cast<char *>(srcOperationalError.errorStateLabel.Value().data()),
+ desOperationalError.errorStateLabel.Value().size()),
+ 0);
- NL_TEST_ASSERT(inSuite, desOperationalError.errorStateDetails.HasValue() == true);
- NL_TEST_ASSERT(inSuite,
- desOperationalError.errorStateDetails.Value().size() == srcOperationalError.errorStateDetails.Value().size());
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(desOperationalError.errorStateDetails.Value().data()),
- const_cast<char *>(srcOperationalError.errorStateDetails.Value().data()),
- desOperationalError.errorStateDetails.Value().size()) == 0);
+ EXPECT_TRUE(desOperationalError.errorStateDetails.HasValue());
+ EXPECT_EQ(desOperationalError.errorStateDetails.Value().size(), srcOperationalError.errorStateDetails.Value().size());
+ EXPECT_EQ(memcmp(const_cast<char *>(desOperationalError.errorStateDetails.Value().data()),
+ const_cast<char *>(srcOperationalError.errorStateDetails.Value().data()),
+ desOperationalError.errorStateDetails.Value().size()),
+ 0);
}
-void TestStructGenericOperationalErrorFuncSet(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestOperationalStateClusterObjects, TestStructGenericOperationalErrorFuncSet)
{
using namespace chip::app::Clusters::OperationalState;
enum class ManufactureOperationalErrorEnum : uint8_t
@@ -366,46 +351,40 @@
// General errors: NoError
GenericOperationalError operationalError(to_underlying(ErrorStateEnum::kNoError));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ErrorStateEnum::kNoError));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == false);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ErrorStateEnum::kNoError));
+ EXPECT_FALSE(operationalError.errorStateLabel.HasValue());
+ EXPECT_FALSE(operationalError.errorStateDetails.HasValue());
// call Set with stateId
operationalError.Set(to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == false);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ErrorStateEnum::kUnableToStartOrResume));
+ EXPECT_FALSE(operationalError.errorStateLabel.HasValue());
+ EXPECT_FALSE(operationalError.errorStateDetails.HasValue());
// call Set with stateId and StateLabel
operationalError.Set(to_underlying(ErrorStateEnum::kUnableToStartOrResume),
Optional<CharSpan>(CharSpan::fromCharString(labelBuffer)));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.Value().size() == strlen(labelBuffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)) ==
- 0);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ErrorStateEnum::kUnableToStartOrResume));
+ EXPECT_TRUE(operationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(operationalError.errorStateLabel.Value().size(), strlen(labelBuffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)), 0);
+ EXPECT_FALSE(operationalError.errorStateDetails.HasValue());
// call Set with stateId, StateLabel and StateDetails
operationalError.Set(to_underlying(ErrorStateEnum::kUnableToStartOrResume),
Optional<CharSpan>(CharSpan::fromCharString(labelBuffer)),
Optional<CharSpan>(CharSpan::fromCharString(detailBuffer)));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.Value().size() == strlen(labelBuffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)) ==
- 0);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ErrorStateEnum::kUnableToStartOrResume));
+ EXPECT_TRUE(operationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(operationalError.errorStateLabel.Value().size(), strlen(labelBuffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, strlen(labelBuffer)), 0);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.Value().size() == strlen(detailBuffer));
- NL_TEST_ASSERT(
- inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateDetails.Value().data()), detailBuffer, strlen(detailBuffer)) == 0);
+ EXPECT_TRUE(operationalError.errorStateDetails.HasValue());
+ EXPECT_EQ(operationalError.errorStateDetails.Value().size(), strlen(detailBuffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateDetails.Value().data()), detailBuffer, strlen(detailBuffer)), 0);
// change state with label, label len = kOperationalStateLabelMaxSize
for (size_t i = 0; i < sizeof(labelBuffer); i++)
@@ -415,13 +394,11 @@
operationalError.Set(to_underlying(ErrorStateEnum::kUnableToStartOrResume),
Optional<CharSpan>(CharSpan(labelBuffer, sizeof(labelBuffer))));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.Value().size() == sizeof(labelBuffer));
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, sizeof(labelBuffer)) ==
- 0);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ErrorStateEnum::kUnableToStartOrResume));
+ EXPECT_TRUE(operationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(operationalError.errorStateLabel.Value().size(), sizeof(labelBuffer));
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer, sizeof(labelBuffer)), 0);
+ EXPECT_FALSE(operationalError.errorStateDetails.HasValue());
// change state with label, label len = kOperationalStateLabelMaxSize + 1
char labelBuffer2[kOperationalErrorLabelMaxSize + 1];
@@ -432,13 +409,13 @@
operationalError.Set(to_underlying(ErrorStateEnum::kUnableToStartOrResume),
Optional<CharSpan>(CharSpan(labelBuffer2, sizeof(labelBuffer2))));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.Value().size() == kOperationalErrorLabelMaxSize);
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer2,
- kOperationalErrorLabelMaxSize) == 0);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == false);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ErrorStateEnum::kUnableToStartOrResume));
+ EXPECT_TRUE(operationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(operationalError.errorStateLabel.Value().size(), kOperationalErrorLabelMaxSize);
+ EXPECT_EQ(
+ memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer2, kOperationalErrorLabelMaxSize),
+ 0);
+ EXPECT_FALSE(operationalError.errorStateDetails.HasValue());
// change state with label and details, details len = kOperationalErrorDetailsMaxSize + 1
char detailBuffer2[kOperationalErrorDetailsMaxSize + 1];
@@ -450,62 +427,19 @@
Optional<CharSpan>(CharSpan(labelBuffer2, sizeof(labelBuffer2))),
Optional<CharSpan>(CharSpan(detailBuffer2, sizeof(detailBuffer2))));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateID == to_underlying(ErrorStateEnum::kUnableToStartOrResume));
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.HasValue() == true);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateLabel.Value().size() == kOperationalErrorLabelMaxSize);
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer2,
- kOperationalErrorLabelMaxSize) == 0);
+ EXPECT_EQ(operationalError.errorStateID, to_underlying(ErrorStateEnum::kUnableToStartOrResume));
+ EXPECT_TRUE(operationalError.errorStateLabel.HasValue());
+ EXPECT_EQ(operationalError.errorStateLabel.Value().size(), kOperationalErrorLabelMaxSize);
+ EXPECT_EQ(
+ memcmp(const_cast<char *>(operationalError.errorStateLabel.Value().data()), labelBuffer2, kOperationalErrorLabelMaxSize),
+ 0);
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.HasValue() == true);
+ EXPECT_TRUE(operationalError.errorStateDetails.HasValue());
- NL_TEST_ASSERT(inSuite, operationalError.errorStateDetails.Value().size() == kOperationalErrorDetailsMaxSize);
- NL_TEST_ASSERT(inSuite,
- memcmp(const_cast<char *>(operationalError.errorStateDetails.Value().data()), detailBuffer2,
- kOperationalErrorDetailsMaxSize) == 0);
-}
-
-const nlTest sTests[] = {
- NL_TEST_DEF("Test struct GenericOperationalState: constructor with only StateID",
- TestStructGenericOperationalStateConstructorWithOnlyStateID),
- NL_TEST_DEF("Test struct GenericOperationalState: constructor with StateID and StateLabel",
- TestStructGenericOperationalStateConstructorWithStateIDAndStateLabel),
- NL_TEST_DEF("Test struct GenericOperationalState: copy constructor", TestStructGenericOperationalStateCopyConstructor),
- NL_TEST_DEF("Test struct GenericOperationalState: copy assignment", TestStructGenericOperationalStateCopyAssignment),
- NL_TEST_DEF("Test struct GenericOperationalState: member function 'Set'", TestStructGenericOperationalStateFuncSet),
- NL_TEST_DEF("Test struct GenericOperationalError: constructor with only StateID",
- TestStructGenericOperationalErrorConstructorWithOnlyStateID),
- NL_TEST_DEF("Test struct GenericOperationalError: constructor with StateID and StateLabel",
- TestStructGenericOperationalErrorConstructorWithStateIDAndStateLabel),
- NL_TEST_DEF("Test struct GenericOperationalError: constructor with StateID, StateLabel and StateDetail",
- TestStructGenericOperationalErrorConstructorWithFullParam),
- NL_TEST_DEF("Test struct GenericOperationalError: copy constructor", TestStructGenericOperationalErrorCopyConstructor),
- NL_TEST_DEF("Test struct GenericOperationalError: copy assignment", TestStructGenericOperationalErrorCopyAssignment),
- NL_TEST_DEF("Test struct GenericOperationalError: member function 'Set'", TestStructGenericOperationalErrorFuncSet),
- NL_TEST_SENTINEL()
-};
-
-int TestSetup(void * inContext)
-{
- VerifyOrReturnError(CHIP_NO_ERROR == chip::Platform::MemoryInit(), FAILURE);
- return SUCCESS;
-}
-
-int TestTearDown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
+ EXPECT_EQ(operationalError.errorStateDetails.Value().size(), kOperationalErrorDetailsMaxSize);
+ EXPECT_EQ(memcmp(const_cast<char *>(operationalError.errorStateDetails.Value().data()), detailBuffer2,
+ kOperationalErrorDetailsMaxSize),
+ 0);
}
} // namespace
-
-int TestOperationalStateClusterObjects()
-{
- nlTestSuite theSuite = { "Test Operational State Cluster Objects tests", &sTests[0], TestSetup, TestTearDown };
-
- // Run test suite against one context.
- nlTestRunner(&theSuite, nullptr);
- return nlTestRunnerStats(&theSuite);
-}
-
-CHIP_REGISTER_TEST_SUITE(TestOperationalStateClusterObjects)
diff --git a/src/app/tests/TestPendingNotificationMap.cpp b/src/app/tests/TestPendingNotificationMap.cpp
index 98e27cb..94089e3 100644
--- a/src/app/tests/TestPendingNotificationMap.cpp
+++ b/src/app/tests/TestPendingNotificationMap.cpp
@@ -18,9 +18,9 @@
#include <app/clusters/bindings/PendingNotificationMap.h>
#include <app/util/binding-table.h>
#include <app/util/config.h>
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/support/TestPersistentStorageDelegate.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
+#include <pw_unit_test/framework.h>
using chip::BindingTable;
using chip::ClusterId;
@@ -33,6 +33,16 @@
namespace {
+class TestPendingNotificationMap : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite()
+ {
+ static chip::TestPersistentStorageDelegate storage;
+ BindingTable::GetInstance().SetPersistentStorage(&storage);
+ }
+};
+
void ClearBindingTable(BindingTable & table)
{
auto iter = table.begin();
@@ -50,103 +60,83 @@
}
}
-void TestEmptyMap(nlTestSuite * aSuite, void * aContext)
+TEST_F(TestPendingNotificationMap, TestEmptyMap)
{
PendingNotificationMap pendingMap;
- NL_TEST_ASSERT(aSuite, pendingMap.begin() == pendingMap.end());
+ EXPECT_EQ(pendingMap.begin(), pendingMap.end());
chip::ScopedNodeId peer;
- NL_TEST_ASSERT(aSuite, pendingMap.FindLRUConnectPeer(peer) == CHIP_ERROR_NOT_FOUND);
+ EXPECT_EQ(pendingMap.FindLRUConnectPeer(peer), CHIP_ERROR_NOT_FOUND);
}
-void TestAddRemove(nlTestSuite * aSuite, void * aContext)
+TEST_F(TestPendingNotificationMap, TestAddRemove)
{
PendingNotificationMap pendingMap;
ClearBindingTable(BindingTable::GetInstance());
CreateDefaultFullBindingTable(BindingTable::GetInstance());
for (uint8_t i = 0; i < MATTER_BINDING_TABLE_SIZE; i++)
{
- NL_TEST_ASSERT(aSuite, pendingMap.AddPendingNotification(i, nullptr) == CHIP_NO_ERROR);
+ EXPECT_EQ(pendingMap.AddPendingNotification(i, nullptr), CHIP_NO_ERROR);
}
// Confirm adding in one more element fails
- NL_TEST_ASSERT(aSuite, pendingMap.AddPendingNotification(MATTER_BINDING_TABLE_SIZE, nullptr) == CHIP_ERROR_NO_MEMORY);
+ EXPECT_EQ(pendingMap.AddPendingNotification(MATTER_BINDING_TABLE_SIZE, nullptr), CHIP_ERROR_NO_MEMORY);
auto iter = pendingMap.begin();
for (uint8_t i = 0; i < MATTER_BINDING_TABLE_SIZE; i++)
{
PendingNotificationEntry entry = *iter;
- NL_TEST_ASSERT(aSuite, entry.mBindingEntryId == i);
+ EXPECT_EQ(entry.mBindingEntryId, i);
++iter;
}
- NL_TEST_ASSERT(aSuite, iter == pendingMap.end());
+ EXPECT_EQ(iter, pendingMap.end());
pendingMap.RemoveAllEntriesForNode(chip::ScopedNodeId());
uint8_t expectedEntryIndecies[] = { 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 };
iter = pendingMap.begin();
for (uint8_t ch : expectedEntryIndecies)
{
PendingNotificationEntry entry = *iter;
- NL_TEST_ASSERT(aSuite, entry.mBindingEntryId == ch);
+ EXPECT_EQ(entry.mBindingEntryId, ch);
++iter;
}
- NL_TEST_ASSERT(aSuite, iter == pendingMap.end());
+ EXPECT_EQ(iter, pendingMap.end());
pendingMap.RemoveAllEntriesForFabric(0);
iter = pendingMap.begin();
for (uint8_t i = 0; i < 10; i++)
{
PendingNotificationEntry entry = *iter;
- NL_TEST_ASSERT(aSuite, entry.mBindingEntryId == 10 + i);
+ EXPECT_EQ(entry.mBindingEntryId, 10u + i);
++iter;
}
- NL_TEST_ASSERT(aSuite, iter == pendingMap.end());
+ EXPECT_EQ(iter, pendingMap.end());
pendingMap.RemoveAllEntriesForFabric(1);
- NL_TEST_ASSERT(aSuite, pendingMap.begin() == pendingMap.end());
+ EXPECT_EQ(pendingMap.begin(), pendingMap.end());
}
-void TestLRUEntry(nlTestSuite * aSuite, void * aContext)
+TEST_F(TestPendingNotificationMap, TestLRUEntry)
{
PendingNotificationMap pendingMap;
ClearBindingTable(BindingTable::GetInstance());
CreateDefaultFullBindingTable(BindingTable::GetInstance());
- NL_TEST_ASSERT(aSuite, pendingMap.AddPendingNotification(0, nullptr) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, pendingMap.AddPendingNotification(1, nullptr) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, pendingMap.AddPendingNotification(5, nullptr) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, pendingMap.AddPendingNotification(7, nullptr) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, pendingMap.AddPendingNotification(11, nullptr) == CHIP_NO_ERROR);
+ EXPECT_EQ(pendingMap.AddPendingNotification(0, nullptr), CHIP_NO_ERROR);
+ EXPECT_EQ(pendingMap.AddPendingNotification(1, nullptr), CHIP_NO_ERROR);
+ EXPECT_EQ(pendingMap.AddPendingNotification(5, nullptr), CHIP_NO_ERROR);
+ EXPECT_EQ(pendingMap.AddPendingNotification(7, nullptr), CHIP_NO_ERROR);
+ EXPECT_EQ(pendingMap.AddPendingNotification(11, nullptr), CHIP_NO_ERROR);
chip::ScopedNodeId node;
- NL_TEST_ASSERT(aSuite, pendingMap.FindLRUConnectPeer(node) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, node.GetFabricIndex() == 0 && node.GetNodeId() == 1);
+ EXPECT_EQ(pendingMap.FindLRUConnectPeer(node), CHIP_NO_ERROR);
+ EXPECT_EQ(node.GetFabricIndex(), 0u);
+ EXPECT_EQ(node.GetNodeId(), 1u);
pendingMap.RemoveEntry(1);
- NL_TEST_ASSERT(aSuite, pendingMap.FindLRUConnectPeer(node) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, node.GetFabricIndex() == 0 && node.GetNodeId() == 0);
+ EXPECT_EQ(pendingMap.FindLRUConnectPeer(node), CHIP_NO_ERROR);
+ EXPECT_EQ(node.GetFabricIndex(), 0u);
+ EXPECT_EQ(node.GetNodeId(), 0u);
pendingMap.RemoveAllEntriesForFabric(0);
- NL_TEST_ASSERT(aSuite, pendingMap.FindLRUConnectPeer(node) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, node.GetFabricIndex() == 1 && node.GetNodeId() == 1);
+ EXPECT_EQ(pendingMap.FindLRUConnectPeer(node), CHIP_NO_ERROR);
+ EXPECT_EQ(node.GetFabricIndex(), 1u);
+ EXPECT_EQ(node.GetNodeId(), 1u);
}
} // namespace
-
-int TestPeindingNotificationMap()
-{
- static nlTest sTests[] = {
- NL_TEST_DEF("TestEmptyMap", TestEmptyMap),
- NL_TEST_DEF("TestAddRemove", TestAddRemove),
- NL_TEST_DEF("TestLRUEntry", TestLRUEntry),
- NL_TEST_SENTINEL(),
- };
-
- nlTestSuite theSuite = {
- "PendingNotificationMap",
- &sTests[0],
- nullptr,
- nullptr,
- };
- chip::TestPersistentStorageDelegate storage;
- BindingTable::GetInstance().SetPersistentStorage(&storage);
- nlTestRunner(&theSuite, nullptr);
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestPeindingNotificationMap)
diff --git a/src/app/tests/TestPendingResponseTrackerImpl.cpp b/src/app/tests/TestPendingResponseTrackerImpl.cpp
index da62394..556bf3d 100644
--- a/src/app/tests/TestPendingResponseTrackerImpl.cpp
+++ b/src/app/tests/TestPendingResponseTrackerImpl.cpp
@@ -15,75 +15,76 @@
* limitations under the License.
*/
-#include <app/PendingResponseTrackerImpl.h>
-#include <lib/support/UnitTestRegistration.h>
-
#include <algorithm>
#include <nlunit-test.h>
#include <vector>
+#include <app/PendingResponseTrackerImpl.h>
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
+
namespace {
using namespace chip;
-void TestPendingResponseTracker_FillEntireTracker(nlTestSuite * inSuite, void * inContext)
+TEST(TestPendingResponseTrackerImpl, TestPendingResponseTracker_FillEntireTracker)
{
chip::app::PendingResponseTrackerImpl pendingResponseTracker;
for (uint16_t commandRef = 0; commandRef < std::numeric_limits<uint16_t>::max(); commandRef++)
{
- NL_TEST_ASSERT(inSuite, false == pendingResponseTracker.IsTracked(commandRef));
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == pendingResponseTracker.Add(commandRef));
- NL_TEST_ASSERT(inSuite, true == pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_FALSE(pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_EQ(CHIP_NO_ERROR, pendingResponseTracker.Add(commandRef));
+ EXPECT_TRUE(pendingResponseTracker.IsTracked(commandRef));
}
- NL_TEST_ASSERT(inSuite, std::numeric_limits<uint16_t>::max() == pendingResponseTracker.Count());
+ EXPECT_EQ(std::numeric_limits<uint16_t>::max(), pendingResponseTracker.Count());
for (uint16_t commandRef = 0; commandRef < std::numeric_limits<uint16_t>::max(); commandRef++)
{
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == pendingResponseTracker.Remove(commandRef));
- NL_TEST_ASSERT(inSuite, false == pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_EQ(CHIP_NO_ERROR, pendingResponseTracker.Remove(commandRef));
+ EXPECT_FALSE(pendingResponseTracker.IsTracked(commandRef));
}
- NL_TEST_ASSERT(inSuite, 0 == pendingResponseTracker.Count());
+ EXPECT_EQ(0u, pendingResponseTracker.Count());
}
-void TestPendingResponseTracker_FillSingleEntryInTracker(nlTestSuite * inSuite, void * inContext)
+TEST(TestPendingResponseTrackerImpl, TestPendingResponseTracker_FillSingleEntryInTracker)
{
chip::app::PendingResponseTrackerImpl pendingResponseTracker;
// The value 40 is arbitrary; any value would work for this purpose.
uint16_t commandRefToSet = 40;
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == pendingResponseTracker.Add(commandRefToSet));
+ EXPECT_EQ(CHIP_NO_ERROR, pendingResponseTracker.Add(commandRefToSet));
for (uint16_t commandRef = 0; commandRef < std::numeric_limits<uint16_t>::max(); commandRef++)
{
bool expectedIsSetResult = (commandRef == commandRefToSet);
- NL_TEST_ASSERT(inSuite, expectedIsSetResult == pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_EQ(expectedIsSetResult, pendingResponseTracker.IsTracked(commandRef));
}
}
-void TestPendingResponseTracker_RemoveNonExistentEntryInTrackerFails(nlTestSuite * inSuite, void * inContext)
+TEST(TestPendingResponseTrackerImpl, TestPendingResponseTracker_RemoveNonExistentEntryInTrackerFails)
{
chip::app::PendingResponseTrackerImpl pendingResponseTracker;
// The value 40 is arbitrary; any value would work for this purpose.
uint16_t commandRef = 40;
- NL_TEST_ASSERT(inSuite, false == pendingResponseTracker.IsTracked(commandRef));
- NL_TEST_ASSERT(inSuite, CHIP_ERROR_KEY_NOT_FOUND == pendingResponseTracker.Remove(commandRef));
+ EXPECT_FALSE(pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_EQ(CHIP_ERROR_KEY_NOT_FOUND, pendingResponseTracker.Remove(commandRef));
}
-void TestPendingResponseTracker_AddingSecondEntryFails(nlTestSuite * inSuite, void * inContext)
+TEST(TestPendingResponseTrackerImpl, TestPendingResponseTracker_AddingSecondEntryFails)
{
chip::app::PendingResponseTrackerImpl pendingResponseTracker;
// The value 40 is arbitrary; any value would work for this purpose.
uint16_t commandRef = 40;
- NL_TEST_ASSERT(inSuite, false == pendingResponseTracker.IsTracked(commandRef));
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == pendingResponseTracker.Add(commandRef));
- NL_TEST_ASSERT(inSuite, true == pendingResponseTracker.IsTracked(commandRef));
- NL_TEST_ASSERT(inSuite, CHIP_ERROR_INVALID_ARGUMENT == pendingResponseTracker.Add(commandRef));
+ EXPECT_FALSE(pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_EQ(CHIP_NO_ERROR, pendingResponseTracker.Add(commandRef));
+ EXPECT_TRUE(pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_EQ(CHIP_ERROR_INVALID_ARGUMENT, pendingResponseTracker.Add(commandRef));
}
-void TestPendingResponseTracker_PopFindsAllPendingRequests(nlTestSuite * inSuite, void * inContext)
+TEST(TestPendingResponseTrackerImpl, TestPendingResponseTracker_PopFindsAllPendingRequests)
{
chip::app::PendingResponseTrackerImpl pendingResponseTracker;
@@ -91,45 +92,23 @@
std::vector<uint16_t> requestsToAdd = { 0, 50, 2, 2000 };
for (const uint16_t & commandRef : requestsToAdd)
{
- NL_TEST_ASSERT(inSuite, false == pendingResponseTracker.IsTracked(commandRef));
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == pendingResponseTracker.Add(commandRef));
- NL_TEST_ASSERT(inSuite, true == pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_FALSE(pendingResponseTracker.IsTracked(commandRef));
+ EXPECT_EQ(CHIP_NO_ERROR, pendingResponseTracker.Add(commandRef));
+ EXPECT_TRUE(pendingResponseTracker.IsTracked(commandRef));
}
- NL_TEST_ASSERT(inSuite, requestsToAdd.size() == pendingResponseTracker.Count());
+ EXPECT_EQ(requestsToAdd.size(), pendingResponseTracker.Count());
for (size_t i = 0; i < requestsToAdd.size(); i++)
{
auto commandRef = pendingResponseTracker.PopPendingResponse();
- NL_TEST_ASSERT(inSuite, true == commandRef.HasValue());
+ EXPECT_TRUE(commandRef.HasValue());
bool expectedCommandRef = std::find(requestsToAdd.begin(), requestsToAdd.end(), commandRef.Value()) != requestsToAdd.end();
- NL_TEST_ASSERT(inSuite, true == expectedCommandRef);
+ EXPECT_TRUE(expectedCommandRef);
}
- NL_TEST_ASSERT(inSuite, 0 == pendingResponseTracker.Count());
+ EXPECT_EQ(0u, pendingResponseTracker.Count());
auto commandRef = pendingResponseTracker.PopPendingResponse();
- NL_TEST_ASSERT(inSuite, false == commandRef.HasValue());
+ EXPECT_FALSE(commandRef.HasValue());
}
} // namespace
-
-#define NL_TEST_DEF_FN(fn) NL_TEST_DEF("Test " #fn, fn)
-/**
- * Test Suite. It lists all the test functions.
- */
-static const nlTest sTests[] = { NL_TEST_DEF_FN(TestPendingResponseTracker_FillEntireTracker),
- NL_TEST_DEF_FN(TestPendingResponseTracker_FillSingleEntryInTracker),
- NL_TEST_DEF_FN(TestPendingResponseTracker_RemoveNonExistentEntryInTrackerFails),
- NL_TEST_DEF_FN(TestPendingResponseTracker_AddingSecondEntryFails),
- NL_TEST_DEF_FN(TestPendingResponseTracker_PopFindsAllPendingRequests),
- NL_TEST_SENTINEL() };
-
-int TestPendingResponseTracker()
-{
- nlTestSuite theSuite = { "CHIP PendingResponseTrackerImpl tests", &sTests[0], nullptr, nullptr };
-
- // Run test suite against one context.
- nlTestRunner(&theSuite, nullptr);
- return nlTestRunnerStats(&theSuite);
-}
-
-CHIP_REGISTER_TEST_SUITE(TestPendingResponseTracker)
diff --git a/src/app/tests/TestPowerSourceCluster.cpp b/src/app/tests/TestPowerSourceCluster.cpp
index 374b961..0ec0b6e 100644
--- a/src/app/tests/TestPowerSourceCluster.cpp
+++ b/src/app/tests/TestPowerSourceCluster.cpp
@@ -15,50 +15,39 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+#include <vector>
#include "lib/support/CHIPMem.h"
#include <app-common/zap-generated/cluster-objects.h>
#include <app/clusters/power-source-server/power-source-server.h>
+#include <app/tests/test-ember-api.h>
#include <app/util/attribute-storage.h>
#include <lib/core/ErrorStr.h>
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/core/TLV.h>
#include <lib/core/TLVDebug.h>
#include <lib/core/TLVUtilities.h>
#include <lib/support/CHIPCounter.h>
-#include <lib/support/UnitTestContext.h>
-#include <lib/support/UnitTestRegistration.h>
#include <messaging/ExchangeContext.h>
#include <messaging/Flags.h>
-#include <nlunit-test.h>
#include <protocols/interaction_model/Constants.h>
-
-#include <vector>
-
-namespace {
-chip::EndpointId numEndpoints = 0;
-}
-extern uint16_t emberAfGetClusterServerEndpointIndex(chip::EndpointId endpoint, chip::ClusterId cluster,
- uint16_t fixedClusterServerEndpointCount)
-{
- // Very simple mapping here, we're just going to return the endpoint that matches the given endpoint index because the test
- // uses the endpoints in order.
- if (endpoint >= numEndpoints)
- {
- return kEmberInvalidEndpointIndex;
- }
- return endpoint;
-}
+#include <pw_unit_test/framework.h>
namespace chip {
namespace app {
-class TestPowerSourceCluster
+class TestPowerSourceCluster : public ::testing::Test
{
public:
- static void TestEndpointList(nlTestSuite * apSuite, void * apContext);
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite()
+ {
+ chip::app::Clusters::PowerSourceServer::Instance().Shutdown();
+ chip::Platform::MemoryShutdown();
+ }
};
-std::vector<EndpointId> ReadEndpointsThroughAttributeReader(nlTestSuite * apSuite, EndpointId endpoint)
+std::vector<EndpointId> ReadEndpointsThroughAttributeReader(EndpointId endpoint)
{
Clusters::PowerSourceAttrAccess & attrAccess = Clusters::TestOnlyGetPowerSourceAttrAccess();
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -85,7 +74,7 @@
err = attrAccess.Read(readPath, aEncoder);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Read out from the buffer. This comes back as a nested struct
// AttributeReportIBs is a list of
@@ -114,13 +103,13 @@
{
attrDataReader.Next();
}
- NL_TEST_ASSERT(apSuite, IsContextTag(attrDataReader.GetTag()));
- NL_TEST_ASSERT(apSuite, TagNumFromTag(attrDataReader.GetTag()) == 2);
+ EXPECT_TRUE(IsContextTag(attrDataReader.GetTag()));
+ EXPECT_EQ(TagNumFromTag(attrDataReader.GetTag()), 2u);
// OK, we should be in the right spot now, let's decode the list.
Clusters::PowerSource::Attributes::EndpointList::TypeInfo::DecodableType list;
err = list.Decode(attrDataReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
std::vector<EndpointId> ret;
auto iter = list.begin();
while (iter.Next())
@@ -130,7 +119,7 @@
return ret;
}
-void TestPowerSourceCluster::TestEndpointList(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestPowerSourceCluster, TestEndpointList)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -139,8 +128,8 @@
// test that when we read everything we get an empty list as nothing has been set up yet
for (EndpointId i = 0; i < 11; ++i)
{
- std::vector<EndpointId> vec = ReadEndpointsThroughAttributeReader(apSuite, i);
- NL_TEST_ASSERT(apSuite, vec.size() == 0);
+ std::vector<EndpointId> vec = ReadEndpointsThroughAttributeReader(i);
+ EXPECT_EQ(vec.size(), 0u);
}
if (powerSourceServer.GetNumSupportedEndpointLists() < 2 ||
@@ -159,42 +148,42 @@
// we checked earlier that this fit
// This test just uses endpoints in order, so we want to set endpoints from
- // 0 to numEndpoints - 1, and use this for overflow checking
- numEndpoints = static_cast<EndpointId>(powerSourceServer.GetNumSupportedEndpointLists());
+ // 0 to chip::Test::numEndpoints - 1, and use this for overflow checking
+ chip::Test::numEndpoints = static_cast<EndpointId>(powerSourceServer.GetNumSupportedEndpointLists());
// Endpoint 0 - list of 5
err = powerSourceServer.SetEndpointList(0, Span<EndpointId>(list0));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
const Span<EndpointId> * readBack = powerSourceServer.GetEndpointList(0);
- NL_TEST_EXIT_ON_FAILED_ASSERT(apSuite, readBack != nullptr);
- NL_TEST_ASSERT(apSuite, readBack->size() == 5);
+ ASSERT_NE(readBack, nullptr);
+ EXPECT_EQ(readBack->size(), 5u);
for (size_t i = 0; i < readBack->size(); ++i)
{
- NL_TEST_ASSERT(apSuite, readBack->data()[i] == list0[i]);
+ EXPECT_EQ(readBack->data()[i], list0[i]);
}
// Endpoint 1 - list of 10
err = powerSourceServer.SetEndpointList(1, Span<EndpointId>(list1));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
readBack = powerSourceServer.GetEndpointList(1);
- NL_TEST_EXIT_ON_FAILED_ASSERT(apSuite, readBack != nullptr);
- NL_TEST_ASSERT(apSuite, readBack->size() == 10);
+ ASSERT_NE(readBack, nullptr);
+ EXPECT_EQ(readBack->size(), 10u);
for (size_t i = 0; i < readBack->size(); ++i)
{
- NL_TEST_ASSERT(apSuite, readBack->data()[i] == list1[i]);
+ EXPECT_EQ(readBack->data()[i], list1[i]);
}
// Remaining endpoints - list of 1
- for (EndpointId ep = 2; ep < numEndpoints; ++ep)
+ for (EndpointId ep = 2; ep < chip::Test::numEndpoints; ++ep)
{
err = powerSourceServer.SetEndpointList(ep, Span<EndpointId>(listRest));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
readBack = powerSourceServer.GetEndpointList(ep);
- NL_TEST_EXIT_ON_FAILED_ASSERT(apSuite, readBack != nullptr);
- NL_TEST_ASSERT(apSuite, readBack->size() == 1);
+ ASSERT_NE(readBack, nullptr);
+ EXPECT_EQ(readBack->size(), 1u);
if (readBack->size() == 1)
{
- NL_TEST_ASSERT(apSuite, readBack->data()[0] == listRest[0]);
+ EXPECT_EQ(readBack->data()[0], listRest[0]);
}
}
@@ -203,38 +192,38 @@
// *****************
// pick a random endpoint number for the power cluster - it doesn't matter, we don't have space anyway.
err = powerSourceServer.SetEndpointList(55, Span<EndpointId>(listRest));
- NL_TEST_ASSERT(apSuite, err == CHIP_ERROR_NO_MEMORY);
+ EXPECT_EQ(err, CHIP_ERROR_NO_MEMORY);
// *****************
// Recheck getting and reading after OOM
// *****************
// EP0
readBack = powerSourceServer.GetEndpointList(0);
- NL_TEST_EXIT_ON_FAILED_ASSERT(apSuite, readBack != nullptr);
- NL_TEST_ASSERT(apSuite, readBack->size() == 5);
+ ASSERT_NE(readBack, nullptr);
+ EXPECT_EQ(readBack->size(), 5u);
for (size_t i = 0; i < readBack->size(); ++i)
{
- NL_TEST_ASSERT(apSuite, readBack->data()[i] == list0[i]);
+ EXPECT_EQ(readBack->data()[i], list0[i]);
}
// EP1
readBack = powerSourceServer.GetEndpointList(1);
- NL_TEST_EXIT_ON_FAILED_ASSERT(apSuite, readBack != nullptr);
- NL_TEST_ASSERT(apSuite, readBack->size() == 10);
+ ASSERT_NE(readBack, nullptr);
+ EXPECT_EQ(readBack->size(), 10u);
for (size_t i = 0; i < readBack->size(); ++i)
{
- NL_TEST_ASSERT(apSuite, readBack->data()[i] == list1[i]);
+ EXPECT_EQ(readBack->data()[i], list1[i]);
}
// Remaining endpoints
- for (EndpointId ep = 2; ep < numEndpoints; ++ep)
+ for (EndpointId ep = 2; ep < chip::Test::numEndpoints; ++ep)
{
readBack = powerSourceServer.GetEndpointList(ep);
- NL_TEST_EXIT_ON_FAILED_ASSERT(apSuite, readBack != nullptr);
- NL_TEST_ASSERT(apSuite, readBack->size() == 1);
+ ASSERT_NE(readBack, nullptr);
+ EXPECT_EQ(readBack->size(), 1u);
if (readBack->size() == 1)
{
- NL_TEST_ASSERT(apSuite, readBack->data()[0] == listRest[0]);
+ EXPECT_EQ(readBack->data()[0], listRest[0]);
}
}
@@ -243,36 +232,36 @@
// *****************
// Overwrite a list
err = powerSourceServer.SetEndpointList(1, Span<EndpointId>(listRest));
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
readBack = powerSourceServer.GetEndpointList(1);
- NL_TEST_ASSERT(apSuite, readBack->size() == 1);
+ EXPECT_EQ(readBack->size(), 1u);
if (readBack->size() == 1)
{
- NL_TEST_ASSERT(apSuite, readBack->data()[0] == listRest[0]);
+ EXPECT_EQ(readBack->data()[0], listRest[0]);
}
// Ensure only the overwritten list was changed, using read interface
- for (EndpointId ep = 0; ep < numEndpoints + 1; ++ep)
+ for (EndpointId ep = 0; ep < chip::Test::numEndpoints + 1; ++ep)
{
- std::vector<EndpointId> vec = ReadEndpointsThroughAttributeReader(apSuite, ep);
+ std::vector<EndpointId> vec = ReadEndpointsThroughAttributeReader(ep);
if (ep == 0)
{
- NL_TEST_ASSERT(apSuite, vec.size() == 5);
+ EXPECT_EQ(vec.size(), 5u);
for (size_t j = 0; j < vec.size(); ++j)
{
- NL_TEST_ASSERT(apSuite, vec[j] == list0[j]);
+ EXPECT_EQ(vec[j], list0[j]);
}
}
- else if (ep == numEndpoints)
+ else if (ep == chip::Test::numEndpoints)
{
- NL_TEST_ASSERT(apSuite, vec.size() == 0);
+ EXPECT_EQ(vec.size(), 0u);
}
else
{
- NL_TEST_ASSERT(apSuite, vec.size() == 1);
+ EXPECT_EQ(vec.size(), 1u);
if (vec.size() == 1)
{
- NL_TEST_ASSERT(apSuite, vec[0] == listRest[0]);
+ EXPECT_EQ(vec[0], listRest[0]);
}
}
}
@@ -280,76 +269,21 @@
// *****************
// Test removal
// *****************
- for (EndpointId ep = 0; ep < numEndpoints; ++ep)
+ for (EndpointId ep = 0; ep < chip::Test::numEndpoints; ++ep)
{
err = powerSourceServer.SetEndpointList(ep, Span<EndpointId>());
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
readBack = powerSourceServer.GetEndpointList(ep);
- NL_TEST_ASSERT(apSuite, readBack == nullptr);
+ EXPECT_EQ(readBack, nullptr);
}
// Check through the read interface
- for (EndpointId ep = 0; ep < numEndpoints + 1; ++ep)
+ for (EndpointId ep = 0; ep < chip::Test::numEndpoints + 1; ++ep)
{
- std::vector<EndpointId> vec = ReadEndpointsThroughAttributeReader(apSuite, ep);
- NL_TEST_ASSERT(apSuite, vec.size() == 0);
+ std::vector<EndpointId> vec = ReadEndpointsThroughAttributeReader(ep);
+ EXPECT_EQ(vec.size(), 0u);
}
}
} // namespace app
} // namespace chip
-
-namespace {
-
-/**
- * Test Suite. It lists all the test functions.
- */
-
-// clang-format off
-const nlTest sTests[] =
-{
- NL_TEST_DEF("TestEndpointList", chip::app::TestPowerSourceCluster::TestEndpointList),
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
-/**
- * Set up the test suite.
- */
-int TestPowerSourceClusterContext_Setup(void * inContext)
-{
- CHIP_ERROR error = chip::Platform::MemoryInit();
- if (error != CHIP_NO_ERROR)
- return FAILURE;
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-int TestPowerSourceClusterContext_Teardown(void * inContext)
-{
- chip::app::Clusters::PowerSourceServer::Instance().Shutdown();
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
-
-// clang-format off
-nlTestSuite sSuite =
-{
- "TestPowerSourceCluster",
- &sTests[0],
- TestPowerSourceClusterContext_Setup,
- TestPowerSourceClusterContext_Teardown
-};
-// clang-format on
-
-} // namespace
-
-int TestPowerSource()
-{
- nlTestRunner(&sSuite, nullptr);
- return nlTestRunnerStats(&sSuite);
-}
-
-CHIP_REGISTER_TEST_SUITE(TestPowerSource)
diff --git a/src/app/tests/TestReadInteraction.cpp b/src/app/tests/TestReadInteraction.cpp
index e067218..8d1d2e6 100644
--- a/src/app/tests/TestReadInteraction.cpp
+++ b/src/app/tests/TestReadInteraction.cpp
@@ -22,6 +22,8 @@
*
*/
+#include "app/tests/test-interaction-model-api.h"
+
#include "lib/support/CHIPMem.h"
#include <access/examples/PermissiveAccessControlDelegate.h>
#include <app/AttributeValueEncoder.h>
@@ -61,7 +63,6 @@
chip::EndpointId kTestEventEndpointId = chip::Test::kMockEndpoint1;
chip::EventId kTestEventIdDebug = chip::Test::MockEventId(1);
chip::EventId kTestEventIdCritical = chip::Test::MockEventId(2);
-uint8_t kTestFieldValue1 = 1;
chip::TLV::Tag kTestEventTag = chip::TLV::ContextTag(1);
chip::EndpointId kInvalidTestEndpointId = 3;
chip::DataVersion kTestDataVersion1 = 3;
@@ -301,54 +302,6 @@
namespace chip {
namespace app {
-CHIP_ERROR ReadSingleClusterData(const Access::SubjectDescriptor & aSubjectDescriptor, bool aIsFabricFiltered,
- const ConcreteReadAttributePath & aPath, AttributeReportIBs::Builder & aAttributeReports,
- AttributeEncodeState * apEncoderState)
-{
- if (aPath.mClusterId >= Test::kMockEndpointMin)
- {
- return Test::ReadSingleMockClusterData(aSubjectDescriptor.fabricIndex, aPath, aAttributeReports, apEncoderState);
- }
-
- if (!(aPath.mClusterId == kTestClusterId && aPath.mEndpointId == kTestEndpointId))
- {
- AttributeReportIB::Builder & attributeReport = aAttributeReports.CreateAttributeReport();
- ReturnErrorOnFailure(aAttributeReports.GetError());
- ChipLogDetail(DataManagement, "TEST Cluster %" PRIx32 ", Field %" PRIx32 " is dirty", aPath.mClusterId, aPath.mAttributeId);
-
- AttributeStatusIB::Builder & attributeStatus = attributeReport.CreateAttributeStatus();
- ReturnErrorOnFailure(attributeReport.GetError());
- AttributePathIB::Builder & attributePath = attributeStatus.CreatePath();
- ReturnErrorOnFailure(attributeStatus.GetError());
-
- attributePath.Endpoint(aPath.mEndpointId).Cluster(aPath.mClusterId).Attribute(aPath.mAttributeId).EndOfAttributePathIB();
- ReturnErrorOnFailure(attributePath.GetError());
- StatusIB::Builder & errorStatus = attributeStatus.CreateErrorStatus();
- ReturnErrorOnFailure(attributeStatus.GetError());
- errorStatus.EncodeStatusIB(StatusIB(Protocols::InteractionModel::Status::UnsupportedAttribute));
- ReturnErrorOnFailure(errorStatus.GetError());
- ReturnErrorOnFailure(attributeStatus.EndOfAttributeStatusIB());
- return attributeReport.EndOfAttributeReportIB();
- }
-
- return AttributeValueEncoder(aAttributeReports, aSubjectDescriptor, aPath, 0 /* dataVersion */).Encode(kTestFieldValue1);
-}
-
-bool IsClusterDataVersionEqual(const ConcreteClusterPath & aConcreteClusterPath, DataVersion aRequiredVersion)
-{
- if (kTestDataVersion1 == aRequiredVersion)
- {
- return true;
- }
-
- return false;
-}
-
-bool IsDeviceTypeOnEndpoint(DeviceTypeId deviceType, EndpointId endpoint)
-{
- return false;
-}
-
class TestReadInteraction
{
using Seconds16 = System::Clock::Seconds16;
diff --git a/src/app/tests/TestSimpleSubscriptionResumptionStorage.cpp b/src/app/tests/TestSimpleSubscriptionResumptionStorage.cpp
index 8725acd..9f9b164 100644
--- a/src/app/tests/TestSimpleSubscriptionResumptionStorage.cpp
+++ b/src/app/tests/TestSimpleSubscriptionResumptionStorage.cpp
@@ -15,13 +15,18 @@
* limitations under the License.
*/
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
-
#include <app/SimpleSubscriptionResumptionStorage.h>
-#include <lib/support/TestPersistentStorageDelegate.h>
-
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/support/DefaultStorageKeyAllocator.h>
+#include <lib/support/TestPersistentStorageDelegate.h>
+#include <pw_unit_test/framework.h>
+
+class TestSimpleSubscriptionResumptionStorage : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
class SimpleSubscriptionResumptionStorageTest : public chip::app::SimpleSubscriptionResumptionStorage
{
@@ -71,7 +76,7 @@
}
};
-void TestSubscriptionCount(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestSimpleSubscriptionResumptionStorage, TestSubscriptionCount)
{
chip::TestPersistentStorageDelegate storage;
SimpleSubscriptionResumptionStorageTest subscriptionStorage;
@@ -88,7 +93,7 @@
// Make sure iterator counts correctly
auto * iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == (CHIP_IM_MAX_NUM_SUBSCRIPTIONS / 2));
+ EXPECT_EQ(iterator->Count(), std::make_unsigned_t<int>(CHIP_IM_MAX_NUM_SUBSCRIPTIONS / 2));
// Verify subscriptions manually count correctly
size_t count = 0;
@@ -97,13 +102,13 @@
count++;
}
iterator->Release();
- NL_TEST_ASSERT(inSuite, count == (CHIP_IM_MAX_NUM_SUBSCRIPTIONS / 2));
+ EXPECT_EQ(count, std::make_unsigned_t<int>(CHIP_IM_MAX_NUM_SUBSCRIPTIONS / 2));
// Delete all and verify iterator counts 0
CHIP_ERROR err = subscriptionStorage.DeleteAll(46);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == 0);
+ EXPECT_EQ(iterator->Count(), 0u);
// Verify subscriptions manually count correctly
count = 0;
@@ -112,10 +117,10 @@
count++;
}
iterator->Release();
- NL_TEST_ASSERT(inSuite, count == 0);
+ EXPECT_EQ(count, 0u);
}
-void TestSubscriptionMaxCount(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestSimpleSubscriptionResumptionStorage, TestSubscriptionMaxCount)
{
// Force large MacCount value and check that Init resets it properly, and deletes extra subs:
@@ -126,16 +131,16 @@
uint16_t countMaxToSave = 2 * CHIP_IM_MAX_NUM_SUBSCRIPTIONS;
CHIP_ERROR err = storage.SyncSetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumptionMaxCount().KeyName(),
&countMaxToSave, sizeof(uint16_t));
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
// Then write something beyond CHIP_IM_MAX_NUM_SUBSCRIPTIONS
chip::Platform::ScopedMemoryBuffer<uint8_t> junkBytes;
junkBytes.Calloc(subscriptionStorage.TestMaxSubscriptionSize() / 2);
- NL_TEST_ASSERT(inSuite, junkBytes.Get() != nullptr);
- NL_TEST_ASSERT(inSuite,
- storage.SyncSetKeyValue(
- chip::DefaultStorageKeyAllocator::SubscriptionResumption(CHIP_IM_MAX_NUM_SUBSCRIPTIONS + 1).KeyName(),
- junkBytes.Get(), static_cast<uint16_t>(subscriptionStorage.TestMaxSubscriptionSize() / 2)) == CHIP_NO_ERROR);
+ ASSERT_NE(junkBytes.Get(), nullptr);
+ EXPECT_EQ(storage.SyncSetKeyValue(
+ chip::DefaultStorageKeyAllocator::SubscriptionResumption(CHIP_IM_MAX_NUM_SUBSCRIPTIONS + 1).KeyName(),
+ junkBytes.Get(), static_cast<uint16_t>(subscriptionStorage.TestMaxSubscriptionSize() / 2)),
+ CHIP_NO_ERROR);
subscriptionStorage.Init(&storage);
@@ -143,16 +148,15 @@
uint16_t countMax = 0;
uint16_t len = sizeof(countMax);
err = storage.SyncGetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumptionMaxCount().KeyName(), &countMax, len);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, countMax == CHIP_IM_MAX_NUM_SUBSCRIPTIONS);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(countMax, CHIP_IM_MAX_NUM_SUBSCRIPTIONS);
// Then check the fake sub is no more
- NL_TEST_ASSERT(inSuite,
- !storage.SyncDoesKeyExist(
- chip::DefaultStorageKeyAllocator::SubscriptionResumption(CHIP_IM_MAX_NUM_SUBSCRIPTIONS + 1).KeyName()));
+ EXPECT_FALSE(storage.SyncDoesKeyExist(
+ chip::DefaultStorageKeyAllocator::SubscriptionResumption(CHIP_IM_MAX_NUM_SUBSCRIPTIONS + 1).KeyName()));
}
-void TestSubscriptionState(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestSimpleSubscriptionResumptionStorage, TestSubscriptionState)
{
chip::TestPersistentStorageDelegate storage;
SimpleSubscriptionResumptionStorageTest subscriptionStorage;
@@ -219,25 +223,25 @@
CHIP_ERROR err;
err = subscriptionStorage.Save(subscriptionInfo1);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = subscriptionStorage.Save(subscriptionInfo2);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
err = subscriptionStorage.Save(subscriptionInfo3);
- NL_TEST_ASSERT(inSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
auto * iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == 3);
+ EXPECT_EQ(iterator->Count(), 3u);
// Verify subscriptions manually count correctly
TestSubscriptionInfo subscriptionInfo;
- NL_TEST_ASSERT(inSuite, iterator->Next(subscriptionInfo));
- NL_TEST_ASSERT(inSuite, subscriptionInfo == subscriptionInfo1);
- NL_TEST_ASSERT(inSuite, iterator->Next(subscriptionInfo));
- NL_TEST_ASSERT(inSuite, subscriptionInfo == subscriptionInfo2);
- NL_TEST_ASSERT(inSuite, iterator->Next(subscriptionInfo));
- NL_TEST_ASSERT(inSuite, subscriptionInfo == subscriptionInfo3);
+ EXPECT_TRUE(iterator->Next(subscriptionInfo));
+ EXPECT_EQ(subscriptionInfo, subscriptionInfo1);
+ EXPECT_TRUE(iterator->Next(subscriptionInfo));
+ EXPECT_EQ(subscriptionInfo, subscriptionInfo2);
+ EXPECT_TRUE(iterator->Next(subscriptionInfo));
+ EXPECT_EQ(subscriptionInfo, subscriptionInfo3);
// Verify at end of list
- NL_TEST_ASSERT(inSuite, !iterator->Next(subscriptionInfo));
+ EXPECT_FALSE(iterator->Next(subscriptionInfo));
iterator->Release();
// Delete fabric 1 and subscription 2 and check only 3 remains.
@@ -245,30 +249,30 @@
subscriptionStorage.DeleteAll(subscriptionInfo2.mFabricIndex);
iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == 1);
- NL_TEST_ASSERT(inSuite, iterator->Next(subscriptionInfo));
- NL_TEST_ASSERT(inSuite, subscriptionInfo == subscriptionInfo3);
+ EXPECT_EQ(iterator->Count(), 1u);
+ EXPECT_TRUE(iterator->Next(subscriptionInfo));
+ EXPECT_EQ(subscriptionInfo, subscriptionInfo3);
// Verify at end of list
- NL_TEST_ASSERT(inSuite, !iterator->Next(subscriptionInfo));
+ EXPECT_FALSE(iterator->Next(subscriptionInfo));
iterator->Release();
// Delete 3 also, and see that both count is 0 and MaxCount is removed from storage
subscriptionStorage.DeleteAll(subscriptionInfo3.mFabricIndex);
iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == 0);
- NL_TEST_ASSERT(inSuite, !iterator->Next(subscriptionInfo));
+ EXPECT_EQ(iterator->Count(), 0u);
+ EXPECT_FALSE(iterator->Next(subscriptionInfo));
iterator->Release();
uint16_t countMax = 0;
uint16_t len = sizeof(countMax);
err = storage.SyncGetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumptionMaxCount().KeyName(), &countMax, len);
- NL_TEST_ASSERT(inSuite, err == CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND);
+ EXPECT_EQ(err, CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND);
}
static constexpr chip::TLV::Tag kTestValue1Tag = chip::TLV::ContextTag(30);
static constexpr chip::TLV::Tag kTestValue2Tag = chip::TLV::ContextTag(31);
-void TestSubscriptionStateUnexpectedFields(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestSimpleSubscriptionResumptionStorage, TestSubscriptionStateUnexpectedFields)
{
chip::TestPersistentStorageDelegate storage;
SimpleSubscriptionResumptionStorageTest subscriptionStorage;
@@ -293,39 +297,38 @@
chip::Platform::ScopedMemoryBuffer<uint8_t> backingBuffer;
backingBuffer.Calloc(subscriptionStorage.TestMaxSubscriptionSize());
- NL_TEST_ASSERT(inSuite, backingBuffer.Get() != nullptr);
+ ASSERT_NE(backingBuffer.Get(), nullptr);
chip::TLV::ScopedBufferTLVWriter writer(std::move(backingBuffer), subscriptionStorage.TestMaxSubscriptionSize());
- NL_TEST_ASSERT(inSuite, subscriptionStorage.TestSave(writer, subscriptionInfo1) == CHIP_NO_ERROR);
+ EXPECT_EQ(subscriptionStorage.TestSave(writer, subscriptionInfo1), CHIP_NO_ERROR);
// Additional stuff
chip::TLV::TLVType containerType;
- NL_TEST_ASSERT(inSuite,
- writer.StartContainer(chip::TLV::AnonymousTag(), chip::TLV::kTLVType_Structure, containerType) == CHIP_NO_ERROR);
+ EXPECT_EQ(writer.StartContainer(chip::TLV::AnonymousTag(), chip::TLV::kTLVType_Structure, containerType), CHIP_NO_ERROR);
uint32_t value1 = 1;
uint32_t value2 = 2;
- NL_TEST_ASSERT(inSuite, writer.Put(kTestValue1Tag, value1) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, writer.Put(kTestValue2Tag, value2) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, writer.EndContainer(containerType) == CHIP_NO_ERROR);
+ EXPECT_EQ(writer.Put(kTestValue1Tag, value1), CHIP_NO_ERROR);
+ EXPECT_EQ(writer.Put(kTestValue2Tag, value2), CHIP_NO_ERROR);
+ EXPECT_EQ(writer.EndContainer(containerType), CHIP_NO_ERROR);
const auto len = writer.GetLengthWritten();
writer.Finalize(backingBuffer);
- NL_TEST_ASSERT(inSuite,
- storage.SyncSetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumption(0).KeyName(),
- backingBuffer.Get(), static_cast<uint16_t>(len)) == CHIP_NO_ERROR);
+ EXPECT_EQ(storage.SyncSetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumption(0).KeyName(), backingBuffer.Get(),
+ static_cast<uint16_t>(len)),
+ CHIP_NO_ERROR);
// Now read back and verify
auto * iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == 1);
+ EXPECT_EQ(iterator->Count(), 1u);
TestSubscriptionInfo subscriptionInfo;
- NL_TEST_ASSERT(inSuite, iterator->Next(subscriptionInfo));
- NL_TEST_ASSERT(inSuite, subscriptionInfo == subscriptionInfo1);
+ EXPECT_TRUE(iterator->Next(subscriptionInfo));
+ EXPECT_EQ(subscriptionInfo, subscriptionInfo1);
iterator->Release();
}
-void TestSubscriptionStateTooBigToLoad(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestSimpleSubscriptionResumptionStorage, TestSubscriptionStateTooBigToLoad)
{
chip::TestPersistentStorageDelegate storage;
SimpleSubscriptionResumptionStorageTest subscriptionStorage;
@@ -350,42 +353,41 @@
chip::Platform::ScopedMemoryBuffer<uint8_t> backingBuffer;
backingBuffer.Calloc(subscriptionStorage.TestMaxSubscriptionSize() * 2);
- NL_TEST_ASSERT(inSuite, backingBuffer.Get() != nullptr);
+ ASSERT_NE(backingBuffer.Get(), nullptr);
chip::TLV::ScopedBufferTLVWriter writer(std::move(backingBuffer), subscriptionStorage.TestMaxSubscriptionSize() * 2);
- NL_TEST_ASSERT(inSuite, subscriptionStorage.TestSave(writer, subscriptionInfo1) == CHIP_NO_ERROR);
+ EXPECT_EQ(subscriptionStorage.TestSave(writer, subscriptionInfo1), CHIP_NO_ERROR);
// Additional too-many bytes
chip::TLV::TLVType containerType;
- NL_TEST_ASSERT(inSuite,
- writer.StartContainer(chip::TLV::AnonymousTag(), chip::TLV::kTLVType_Structure, containerType) == CHIP_NO_ERROR);
+ EXPECT_EQ(writer.StartContainer(chip::TLV::AnonymousTag(), chip::TLV::kTLVType_Structure, containerType), CHIP_NO_ERROR);
// Write MaxSubscriptionSize() to guarantee Load failure
chip::Platform::ScopedMemoryBuffer<uint8_t> additionalBytes;
additionalBytes.Calloc(subscriptionStorage.TestMaxSubscriptionSize());
- NL_TEST_ASSERT(inSuite, additionalBytes.Get() != nullptr);
- NL_TEST_ASSERT(inSuite,
- writer.PutBytes(kTestValue1Tag, additionalBytes.Get(),
- static_cast<uint32_t>(subscriptionStorage.TestMaxSubscriptionSize())) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(inSuite, writer.EndContainer(containerType) == CHIP_NO_ERROR);
+ ASSERT_NE(additionalBytes.Get(), nullptr);
+ EXPECT_EQ(writer.PutBytes(kTestValue1Tag, additionalBytes.Get(),
+ static_cast<uint32_t>(subscriptionStorage.TestMaxSubscriptionSize())),
+ CHIP_NO_ERROR);
+ EXPECT_EQ(writer.EndContainer(containerType), CHIP_NO_ERROR);
const auto len = writer.GetLengthWritten();
writer.Finalize(backingBuffer);
- NL_TEST_ASSERT(inSuite,
- storage.SyncSetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumption(0).KeyName(),
- backingBuffer.Get(), static_cast<uint16_t>(len)) == CHIP_NO_ERROR);
+ EXPECT_EQ(storage.SyncSetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumption(0).KeyName(), backingBuffer.Get(),
+ static_cast<uint16_t>(len)),
+ CHIP_NO_ERROR);
// Now read back and verify
auto * iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == 1);
+ EXPECT_EQ(iterator->Count(), 1u);
TestSubscriptionInfo subscriptionInfo;
- NL_TEST_ASSERT(inSuite, !iterator->Next(subscriptionInfo));
- NL_TEST_ASSERT(inSuite, iterator->Count() == 0);
+ EXPECT_FALSE(iterator->Next(subscriptionInfo));
+ EXPECT_EQ(iterator->Count(), 0u);
iterator->Release();
}
-void TestSubscriptionStateJunkData(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestSimpleSubscriptionResumptionStorage, TestSubscriptionStateJunkData)
{
chip::TestPersistentStorageDelegate storage;
SimpleSubscriptionResumptionStorageTest subscriptionStorage;
@@ -393,76 +395,16 @@
chip::Platform::ScopedMemoryBuffer<uint8_t> junkBytes;
junkBytes.Calloc(subscriptionStorage.TestMaxSubscriptionSize() / 2);
- NL_TEST_ASSERT(inSuite, junkBytes.Get() != nullptr);
- NL_TEST_ASSERT(inSuite,
- storage.SyncSetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumption(0).KeyName(), junkBytes.Get(),
- static_cast<uint16_t>(subscriptionStorage.TestMaxSubscriptionSize() / 2)) ==
- CHIP_NO_ERROR);
+ ASSERT_NE(junkBytes.Get(), nullptr);
+ EXPECT_EQ(storage.SyncSetKeyValue(chip::DefaultStorageKeyAllocator::SubscriptionResumption(0).KeyName(), junkBytes.Get(),
+ static_cast<uint16_t>(subscriptionStorage.TestMaxSubscriptionSize() / 2)),
+ CHIP_NO_ERROR);
// Now read back and verify
auto * iterator = subscriptionStorage.IterateSubscriptions();
- NL_TEST_ASSERT(inSuite, iterator->Count() == 1);
+ EXPECT_EQ(iterator->Count(), 1u);
TestSubscriptionInfo subscriptionInfo;
- NL_TEST_ASSERT(inSuite, !iterator->Next(subscriptionInfo));
- NL_TEST_ASSERT(inSuite, iterator->Count() == 0);
+ EXPECT_FALSE(iterator->Next(subscriptionInfo));
+ EXPECT_EQ(iterator->Count(), 0u);
iterator->Release();
}
-/**
- * Set up the test suite.
- */
-int TestSubscription_Setup(void * inContext)
-{
- VerifyOrReturnError(CHIP_NO_ERROR == chip::Platform::MemoryInit(), FAILURE);
-
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-int TestSubscription_Teardown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
-
-// Test Suite
-
-/**
- * Test Suite that lists all the test functions.
- */
-// clang-format off
-static const nlTest sTests[] =
-{
- NL_TEST_DEF("TestSubscriptionCount", TestSubscriptionCount),
- NL_TEST_DEF("TestSubscriptionMaxCount", TestSubscriptionMaxCount),
- NL_TEST_DEF("TestSubscriptionState", TestSubscriptionState),
- NL_TEST_DEF("TestSubscriptionStateUnexpectedFields", TestSubscriptionStateUnexpectedFields),
- NL_TEST_DEF("TestSubscriptionStateTooBigToLoad", TestSubscriptionStateTooBigToLoad),
- NL_TEST_DEF("TestSubscriptionStateJunkData", TestSubscriptionStateJunkData),
-
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
-// clang-format off
-static nlTestSuite sSuite =
-{
- "Test-CHIP-SimpleSubscriptionResumptionStorage",
- &sTests[0],
- &TestSubscription_Setup, &TestSubscription_Teardown
-};
-// clang-format on
-
-/**
- * Main
- */
-int TestSimpleSubscriptionResumptionStorage()
-{
- // Run test suit against one context
- nlTestRunner(&sSuite, nullptr);
-
- return (nlTestRunnerStats(&sSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestSimpleSubscriptionResumptionStorage)
diff --git a/src/app/tests/TestStatusIB.cpp b/src/app/tests/TestStatusIB.cpp
index 2e5f78f..8da643d 100644
--- a/src/app/tests/TestStatusIB.cpp
+++ b/src/app/tests/TestStatusIB.cpp
@@ -20,11 +20,10 @@
#include <lib/core/CHIPConfig.h>
#include <lib/core/CHIPError.h>
#include <lib/core/ErrorStr.h>
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/support/CHIPMem.h>
-#include <lib/support/UnitTestRegistration.h>
#include <protocols/interaction_model/StatusCode.h>
-
-#include <nlunit-test.h>
+#include <pw_unit_test/framework.h>
namespace {
@@ -32,67 +31,78 @@
using namespace chip::app;
using namespace chip::Protocols::InteractionModel;
+class TestStatusIB : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite()
+ {
+ ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR);
+ StatusIB::RegisterErrorFormatter();
+ }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
+
// Macro so failures will blame the right line.
#define VERIFY_ROUNDTRIP(err, status) \
do \
{ \
StatusIB newStatus; \
newStatus.InitFromChipError(err); \
- NL_TEST_ASSERT(aSuite, newStatus.mStatus == status.mStatus); \
- NL_TEST_ASSERT(aSuite, newStatus.mClusterStatus == status.mClusterStatus); \
+ EXPECT_EQ(newStatus.mStatus, status.mStatus); \
+ EXPECT_EQ(newStatus.mClusterStatus, status.mClusterStatus); \
} while (0);
-void TestStatusIBToFromChipError(nlTestSuite * aSuite, void * aContext)
+TEST_F(TestStatusIB, TestStatusIBToFromChipError)
{
StatusIB status;
status.mStatus = Status::Success;
CHIP_ERROR err = status.ToChipError();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
VERIFY_ROUNDTRIP(err, status);
status.mStatus = Status::Failure;
err = status.ToChipError();
- NL_TEST_ASSERT(aSuite, err != CHIP_NO_ERROR);
+ EXPECT_NE(err, CHIP_NO_ERROR);
VERIFY_ROUNDTRIP(err, status);
status.mStatus = Status::InvalidAction;
err = status.ToChipError();
- NL_TEST_ASSERT(aSuite, err != CHIP_NO_ERROR);
+ EXPECT_NE(err, CHIP_NO_ERROR);
VERIFY_ROUNDTRIP(err, status);
status.mClusterStatus = MakeOptional(static_cast<ClusterStatus>(5));
status.mStatus = Status::Success;
err = status.ToChipError();
- NL_TEST_ASSERT(aSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
status.mStatus = Status::Failure;
err = status.ToChipError();
- NL_TEST_ASSERT(aSuite, err != CHIP_NO_ERROR);
+ EXPECT_NE(err, CHIP_NO_ERROR);
VERIFY_ROUNDTRIP(err, status);
status.mStatus = Status::InvalidAction;
err = status.ToChipError();
- NL_TEST_ASSERT(aSuite, err != CHIP_NO_ERROR);
+ EXPECT_NE(err, CHIP_NO_ERROR);
{
StatusIB newStatus;
newStatus.InitFromChipError(err);
- NL_TEST_ASSERT(aSuite, newStatus.mStatus == Status::Failure);
- NL_TEST_ASSERT(aSuite, newStatus.mClusterStatus == status.mClusterStatus);
+ EXPECT_EQ(newStatus.mStatus, Status::Failure);
+ EXPECT_EQ(newStatus.mClusterStatus, status.mClusterStatus);
}
err = CHIP_ERROR_NO_MEMORY;
{
StatusIB newStatus;
newStatus.InitFromChipError(err);
- NL_TEST_ASSERT(aSuite, newStatus.mStatus == Status::Failure);
- NL_TEST_ASSERT(aSuite, !newStatus.mClusterStatus.HasValue());
+ EXPECT_EQ(newStatus.mStatus, Status::Failure);
+ EXPECT_FALSE(newStatus.mClusterStatus.HasValue());
}
}
#if !CHIP_CONFIG_SHORT_ERROR_STR
-void TestStatusIBErrorToString(nlTestSuite * aSuite, void * aContext)
+TEST_F(TestStatusIB, TestStatusIBErrorToString)
{
StatusIB status;
status.mStatus = Status::InvalidAction;
@@ -100,108 +110,55 @@
const char * str = ErrorStr(err);
#if CHIP_CONFIG_IM_STATUS_CODE_VERBOSE_FORMAT
- NL_TEST_ASSERT(aSuite, strcmp(str, "IM Error 0x00000580: General error: 0x80 (INVALID_ACTION)") == 0);
+ EXPECT_STREQ(str, "IM Error 0x00000580: General error: 0x80 (INVALID_ACTION)");
#else // CHIP_CONFIG_IM_STATUS_CODE_VERBOSE_FORMAT
- NL_TEST_ASSERT(aSuite, strcmp(str, "IM Error 0x00000580: General error: 0x80") == 0);
+ EXPECT_STREQ(str, "IM Error 0x00000580: General error: 0x80");
#endif // CHIP_CONFIG_IM_STATUS_CODE_VERBOSE_FORMAT
status.mStatus = Status::Failure;
status.mClusterStatus = MakeOptional(static_cast<ClusterStatus>(5));
err = status.ToChipError();
str = ErrorStr(err);
- NL_TEST_ASSERT(aSuite, strcmp(str, "IM Error 0x00000605: Cluster-specific error: 0x05") == 0);
+ EXPECT_STREQ(str, "IM Error 0x00000605: Cluster-specific error: 0x05");
}
#endif // !CHIP_CONFIG_SHORT_ERROR_STR
-void TestStatusIBEqualityOperator(nlTestSuite * aSuite, void * /*aContext*/)
+TEST_F(TestStatusIB, TestStatusIBEqualityOperator)
{
// Equality against self is true.
StatusIB one;
- NL_TEST_ASSERT(aSuite, one == one);
+ EXPECT_EQ(one, one);
// Default constructors are equal.
- NL_TEST_ASSERT(aSuite, one == StatusIB());
+ EXPECT_EQ(one, StatusIB());
// Different imStatus is not equal.
StatusIB with_imstatus(Status::Failure);
- NL_TEST_ASSERT(aSuite, one != with_imstatus);
+ EXPECT_NE(one, with_imstatus);
// Same imStatus are equal.
- NL_TEST_ASSERT(aSuite, with_imstatus == StatusIB(Status::Failure));
+ EXPECT_EQ(with_imstatus, StatusIB(Status::Failure));
// Same imStatus but different clusterStatus are not equal.
StatusIB with_cluster_status(Status::Failure, /*clusterStatus=*/2);
- NL_TEST_ASSERT(aSuite, with_imstatus != with_cluster_status);
+ EXPECT_NE(with_imstatus, with_cluster_status);
// Different imStatus but same clusterStatus are not equal.
- NL_TEST_ASSERT(aSuite, with_cluster_status != StatusIB(Status::Success, /*clusterStatus=*/2));
+ EXPECT_NE(with_cluster_status, StatusIB(Status::Success, /*clusterStatus=*/2));
// Same imStatus and clusterStatus are equal.
- NL_TEST_ASSERT(aSuite, with_cluster_status == StatusIB(Status::Failure, /*clusterStatus=*/2));
+ EXPECT_EQ(with_cluster_status, StatusIB(Status::Failure, /*clusterStatus=*/2));
// From same CHIP_ERROR are equal.
StatusIB invalid_argument(CHIP_ERROR_INVALID_ARGUMENT);
- NL_TEST_ASSERT(aSuite, invalid_argument == StatusIB(CHIP_ERROR_INVALID_ARGUMENT));
+ EXPECT_EQ(invalid_argument, StatusIB(CHIP_ERROR_INVALID_ARGUMENT));
// Different CHIP_ERROR are equal if they are not from kIMClusterStatus or
// kIMGlobalStatus.
- NL_TEST_ASSERT(aSuite, invalid_argument == StatusIB(CHIP_ERROR_INCORRECT_STATE));
+ EXPECT_EQ(invalid_argument, StatusIB(CHIP_ERROR_INCORRECT_STATE));
// Error never equals NO_ERROR
- NL_TEST_ASSERT(aSuite, invalid_argument != StatusIB(CHIP_NO_ERROR));
+ EXPECT_NE(invalid_argument, StatusIB(CHIP_NO_ERROR));
}
-// clang-format off
-const nlTest sTests[] =
-{
- NL_TEST_DEF("StatusIBToFromChipError", TestStatusIBToFromChipError),
-#if !CHIP_CONFIG_SHORT_ERROR_STR
- NL_TEST_DEF("StatusIBErrorToString", TestStatusIBErrorToString),
-#endif // !CHIP_CONFIG_SHORT_ERROR_STR
- NL_TEST_DEF("StatusIBEqualityOperator", TestStatusIBEqualityOperator),
- NL_TEST_SENTINEL()
-};
-// clang-format on
} // namespace
-
-/**
- * Set up the test suite.
- */
-static int TestSetup(void * inContext)
-{
- CHIP_ERROR error = chip::Platform::MemoryInit();
- if (error != CHIP_NO_ERROR)
- return FAILURE;
- // Hand-register the error formatter. Normally it's registered by
- // InteractionModelEngine::Init, but we don't want to mess with that here.
- StatusIB::RegisterErrorFormatter();
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-static int TestTeardown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
-
-int TestStatusIB()
-{
- // clang-format off
- nlTestSuite theSuite =
- {
- "StatusIB",
- &sTests[0],
- TestSetup,
- TestTeardown,
- };
- // clang-format on
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestStatusIB)
diff --git a/src/app/tests/TestStatusResponseMessage.cpp b/src/app/tests/TestStatusResponseMessage.cpp
index 565ed85..72cf868 100644
--- a/src/app/tests/TestStatusResponseMessage.cpp
+++ b/src/app/tests/TestStatusResponseMessage.cpp
@@ -16,40 +16,41 @@
* limitations under the License.
*/
-/**
- * @file
- * This file implements a test for CHIP Interaction Model Message Def
- *
- */
+#include <lib/core/StringBuilderAdapters.h>
+#include <pw_unit_test/framework.h>
#include <app/AppConfig.h>
#include <app/MessageDef/StatusResponseMessage.h>
#include <lib/core/CHIPError.h>
#include <lib/support/CHIPMem.h>
-#include <lib/support/UnitTestRegistration.h>
#include <system/TLVPacketBufferBackingStore.h>
-#include <nlunit-test.h>
-
namespace {
using namespace chip::app;
constexpr chip::Protocols::InteractionModel::Status statusValue = chip::Protocols::InteractionModel::Status::Success;
constexpr chip::Protocols::InteractionModel::Status invalidStatusValue = chip::Protocols::InteractionModel::Status::Failure;
-void BuildStatusResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVWriter & aWriter)
+class TestStatusResponseMessage : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
+
+void BuildStatusResponseMessage(chip::TLV::TLVWriter & aWriter)
{
CHIP_ERROR err = CHIP_NO_ERROR;
StatusResponseMessage::Builder statusResponse;
err = statusResponse.Init(&aWriter);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
statusResponse.Status(statusValue);
- NL_TEST_ASSERT(apSuite, statusResponse.GetError() == CHIP_NO_ERROR);
+ EXPECT_EQ(statusResponse.GetError(), CHIP_NO_ERROR);
}
-void ParseStatusResponseMessage(nlTestSuite * apSuite, chip::TLV::TLVReader & aReader, bool aTestPositiveCase)
+void ParseStatusResponseMessage(chip::TLV::TLVReader & aReader, bool aTestPositiveCase)
{
CHIP_ERROR err = CHIP_NO_ERROR;
@@ -57,7 +58,7 @@
chip::Protocols::InteractionModel::Status status;
err = statusResponse.Init(aReader);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
#if CHIP_CONFIG_IM_PRETTY_PRINT
statusResponse.PrettyPrint();
#endif
@@ -65,87 +66,42 @@
err = statusResponse.GetStatus(status);
if (aTestPositiveCase)
{
- NL_TEST_ASSERT(apSuite, status == statusValue && err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_EQ(status, statusValue);
}
else
{
- NL_TEST_ASSERT(apSuite, status != invalidStatusValue && err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
+ EXPECT_NE(status, invalidStatusValue);
}
}
-void StatusResponseMessagePositiveTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestStatusResponseMessage, TestStatusResponseMessagePositive)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildStatusResponseMessage(apSuite, writer);
+ BuildStatusResponseMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
reader.Init(std::move(buf));
- ParseStatusResponseMessage(apSuite, reader, true /*aTestPositiveCase*/);
+ ParseStatusResponseMessage(reader, true /*aTestPositiveCase*/);
}
-void StatusResponseMessageNegativeTest(nlTestSuite * apSuite, void * apContext)
+TEST_F(TestStatusResponseMessage, TestStatusResponseMessageNegative)
{
CHIP_ERROR err = CHIP_NO_ERROR;
chip::System::PacketBufferTLVWriter writer;
chip::System::PacketBufferTLVReader reader;
writer.Init(chip::System::PacketBufferHandle::New(chip::System::PacketBuffer::kMaxSize));
- BuildStatusResponseMessage(apSuite, writer);
+ BuildStatusResponseMessage(writer);
chip::System::PacketBufferHandle buf;
err = writer.Finalize(&buf);
- NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
+ EXPECT_EQ(err, CHIP_NO_ERROR);
reader.Init(std::move(buf));
- ParseStatusResponseMessage(apSuite, reader, false /*aTestPositiveCase*/);
+ ParseStatusResponseMessage(reader, false /*aTestPositiveCase*/);
}
-// clang-format off
-const nlTest sTests[] =
- {
- NL_TEST_DEF("StatusResponseMessagePositiveTest", StatusResponseMessagePositiveTest),
- NL_TEST_DEF("StatusResponseMessageNegativeTest", StatusResponseMessageNegativeTest),
- NL_TEST_SENTINEL()
- };
-// clang-format on
} // namespace
-
-/**
- * Set up the test suite.
- */
-static int TestSetup(void * inContext)
-{
- CHIP_ERROR error = chip::Platform::MemoryInit();
- if (error != CHIP_NO_ERROR)
- return FAILURE;
- return SUCCESS;
-}
-
-/**
- * Tear down the test suite.
- */
-static int TestTeardown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
-}
-
-int TestStatusResponseMessage()
-{
- // clang-format off
- nlTestSuite theSuite =
- {
- "StatusResponseMessage",
- &sTests[0],
- TestSetup,
- TestTeardown,
- };
- // clang-format on
-
- nlTestRunner(&theSuite, nullptr);
-
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestStatusResponseMessage)
diff --git a/src/app/tests/TestTestEventTriggerDelegate.cpp b/src/app/tests/TestTestEventTriggerDelegate.cpp
index cd7f3ae..09e513a 100644
--- a/src/app/tests/TestTestEventTriggerDelegate.cpp
+++ b/src/app/tests/TestTestEventTriggerDelegate.cpp
@@ -19,9 +19,9 @@
#include <stdint.h>
#include <app/TestEventTriggerDelegate.h>
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/support/Span.h>
-#include <lib/support/UnitTestRegistration.h>
-#include <nlunit-test.h>
+#include <pw_unit_test/framework.h>
using namespace chip;
@@ -66,20 +66,20 @@
ByteSpan mEnableKey;
};
-void TestKeyChecking(nlTestSuite * aSuite, void * aContext)
+TEST(TestTestEventTriggerDelegate, TestKeyChecking)
{
const uint8_t kTestKey[16] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
const uint8_t kBadKey[16] = { 255, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
const uint8_t kDiffLenBadKey[17] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 };
TestEventDelegate delegate{ ByteSpan{ kTestKey } };
- NL_TEST_ASSERT(aSuite, delegate.DoesEnableKeyMatch(ByteSpan{ kTestKey }) == true);
- NL_TEST_ASSERT(aSuite, delegate.DoesEnableKeyMatch(ByteSpan{ kBadKey }) == false);
- NL_TEST_ASSERT(aSuite, delegate.DoesEnableKeyMatch(ByteSpan{ kDiffLenBadKey }) == false);
- NL_TEST_ASSERT(aSuite, delegate.DoesEnableKeyMatch(ByteSpan{}) == false);
+ EXPECT_TRUE(delegate.DoesEnableKeyMatch(ByteSpan{ kTestKey }));
+ EXPECT_FALSE(delegate.DoesEnableKeyMatch(ByteSpan{ kBadKey }));
+ EXPECT_FALSE(delegate.DoesEnableKeyMatch(ByteSpan{ kDiffLenBadKey }));
+ EXPECT_FALSE(delegate.DoesEnableKeyMatch(ByteSpan{}));
}
-void TestHandlerManagement(nlTestSuite * aSuite, void * aContext)
+TEST(TestTestEventTriggerDelegate, TestHandlerManagement)
{
const uint8_t kTestKey[16] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
@@ -89,31 +89,31 @@
TestEventHandler event2Handler{ 2 };
// Add 2, check 2 works 1 doesn't.
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(1) != CHIP_NO_ERROR);
+ EXPECT_NE(delegate.HandleEventTriggers(1), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.AddHandler(&event2Handler) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.AddHandler(&event2Handler) != CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.AddHandler(&event2Handler), CHIP_NO_ERROR);
+ EXPECT_NE(delegate.AddHandler(&event2Handler), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(2) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(1) != CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(2) == CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(2), CHIP_NO_ERROR);
+ EXPECT_NE(delegate.HandleEventTriggers(1), CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(2), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, event1Handler.GetCount() == 0);
- NL_TEST_ASSERT(aSuite, event2Handler.GetCount() == 2);
+ EXPECT_EQ(event1Handler.GetCount(), 0);
+ EXPECT_EQ(event2Handler.GetCount(), 2);
event1Handler.ClearCount();
event2Handler.ClearCount();
// Add 1, check 1 and 2 work.
- NL_TEST_ASSERT(aSuite, delegate.AddHandler(&event1Handler) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.AddHandler(&event1Handler) != CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.AddHandler(&event1Handler), CHIP_NO_ERROR);
+ EXPECT_NE(delegate.AddHandler(&event1Handler), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(1) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(2) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(1) == CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(1), CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(2), CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(1), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, event1Handler.GetCount() == 2);
- NL_TEST_ASSERT(aSuite, event2Handler.GetCount() == 1);
+ EXPECT_EQ(event1Handler.GetCount(), 2);
+ EXPECT_EQ(event2Handler.GetCount(), 1);
event1Handler.ClearCount();
event2Handler.ClearCount();
@@ -121,29 +121,29 @@
// Remove 2, check 1 works.
delegate.RemoveHandler(&event2Handler);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(1) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(2) != CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(1), CHIP_NO_ERROR);
+ EXPECT_NE(delegate.HandleEventTriggers(2), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, event1Handler.GetCount() == 1);
- NL_TEST_ASSERT(aSuite, event2Handler.GetCount() == 0);
+ EXPECT_EQ(event1Handler.GetCount(), 1);
+ EXPECT_EQ(event2Handler.GetCount(), 0);
// Remove again, should be NO-OP.
delegate.RemoveHandler(&event2Handler);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(2) != CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, event2Handler.GetCount() == 0);
+ EXPECT_NE(delegate.HandleEventTriggers(2), CHIP_NO_ERROR);
+ EXPECT_EQ(event2Handler.GetCount(), 0);
event1Handler.ClearCount();
event2Handler.ClearCount();
// Add 2 again, check 1 and 2 work.
- NL_TEST_ASSERT(aSuite, delegate.AddHandler(&event2Handler) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.AddHandler(&event2Handler) != CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.AddHandler(&event2Handler), CHIP_NO_ERROR);
+ EXPECT_NE(delegate.AddHandler(&event2Handler), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(1) == CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(2) == CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(1), CHIP_NO_ERROR);
+ EXPECT_EQ(delegate.HandleEventTriggers(2), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, event1Handler.GetCount() == 1);
- NL_TEST_ASSERT(aSuite, event2Handler.GetCount() == 1);
+ EXPECT_EQ(event1Handler.GetCount(), 1);
+ EXPECT_EQ(event2Handler.GetCount(), 1);
event1Handler.ClearCount();
event2Handler.ClearCount();
@@ -151,42 +151,14 @@
// Remove all handlers, check neither works.
delegate.ClearAllHandlers();
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(1) != CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, delegate.HandleEventTriggers(2) != CHIP_NO_ERROR);
+ EXPECT_NE(delegate.HandleEventTriggers(1), CHIP_NO_ERROR);
+ EXPECT_NE(delegate.HandleEventTriggers(2), CHIP_NO_ERROR);
- NL_TEST_ASSERT(aSuite, event1Handler.GetCount() == 0);
- NL_TEST_ASSERT(aSuite, event2Handler.GetCount() == 0);
+ EXPECT_EQ(event1Handler.GetCount(), 0);
+ EXPECT_EQ(event2Handler.GetCount(), 0);
// Add a handler at the end: having it remaining should not cause crashes/leaks.
- NL_TEST_ASSERT(aSuite, delegate.AddHandler(&event2Handler) == CHIP_NO_ERROR);
-}
-
-int TestSetup(void * inContext)
-{
- return SUCCESS;
-}
-
-int TestTeardown(void * inContext)
-{
- return SUCCESS;
+ EXPECT_EQ(delegate.AddHandler(&event2Handler), CHIP_NO_ERROR);
}
} // namespace
-
-int TestTestEventTriggerDelegate()
-{
- static nlTest sTests[] = { NL_TEST_DEF("TestKeyChecking", TestKeyChecking),
- NL_TEST_DEF("TestHandlerManagement", TestHandlerManagement), NL_TEST_SENTINEL() };
-
- nlTestSuite theSuite = {
- "TestTestEventTriggerDelegate",
- &sTests[0],
- TestSetup,
- TestTeardown,
- };
-
- nlTestRunner(&theSuite, nullptr);
- return (nlTestRunnerStats(&theSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestTestEventTriggerDelegate)
diff --git a/src/app/tests/TestTimeSyncDataProvider.cpp b/src/app/tests/TestTimeSyncDataProvider.cpp
index 3ea30d5..bc73f03 100644
--- a/src/app/tests/TestTimeSyncDataProvider.cpp
+++ b/src/app/tests/TestTimeSyncDataProvider.cpp
@@ -17,11 +17,10 @@
#include <app/clusters/time-synchronization-server/TimeSyncDataProvider.h>
#include <lib/core/CHIPPersistentStorageDelegate.h>
+#include <lib/core/StringBuilderAdapters.h>
#include <lib/support/CHIPMemString.h>
#include <lib/support/TestPersistentStorageDelegate.h>
-#include <lib/support/UnitTestRegistration.h>
-
-#include <nlunit-test.h>
+#include <pw_unit_test/framework.h>
using namespace chip;
using namespace chip::DeviceLayer;
@@ -36,7 +35,14 @@
namespace {
-void TestTrustedTimeSourceStoreLoad(nlTestSuite * inSuite, void * inContext)
+class TestTimeSyncDataProvider : public ::testing::Test
+{
+public:
+ static void SetUpTestSuite() { ASSERT_EQ(chip::Platform::MemoryInit(), CHIP_NO_ERROR); }
+ static void TearDownTestSuite() { chip::Platform::MemoryShutdown(); }
+};
+
+TEST_F(TestTimeSyncDataProvider, TestTrustedTimeSourceStoreLoad)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -44,16 +50,16 @@
TrustedTimeSource tts = { chip::FabricIndex(1), chip::NodeId(20), chip::EndpointId(0) };
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.StoreTrustedTimeSource(tts));
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.StoreTrustedTimeSource(tts));
TrustedTimeSource retrievedTrustedTimeSource;
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.LoadTrustedTimeSource(retrievedTrustedTimeSource));
- NL_TEST_ASSERT(inSuite, retrievedTrustedTimeSource.fabricIndex == chip::FabricIndex(1));
- NL_TEST_ASSERT(inSuite, retrievedTrustedTimeSource.nodeID == chip::NodeId(20));
- NL_TEST_ASSERT(inSuite, retrievedTrustedTimeSource.endpoint == chip::EndpointId(0));
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.LoadTrustedTimeSource(retrievedTrustedTimeSource));
+ EXPECT_EQ(retrievedTrustedTimeSource.fabricIndex, chip::FabricIndex(1));
+ EXPECT_EQ(retrievedTrustedTimeSource.nodeID, chip::NodeId(20));
+ EXPECT_EQ(retrievedTrustedTimeSource.endpoint, chip::EndpointId(0));
}
-void TestTrustedTimeSourceEmpty(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestTimeSyncDataProvider, TestTrustedTimeSourceEmpty)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -61,10 +67,10 @@
TrustedTimeSource tts;
- NL_TEST_ASSERT(inSuite, CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND == timeSyncDataProv.LoadTrustedTimeSource(tts));
+ EXPECT_EQ(CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND, timeSyncDataProv.LoadTrustedTimeSource(tts));
}
-void TestDefaultNTPStoreLoad(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestTimeSyncDataProvider, TestDefaultNTPStoreLoad)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -73,22 +79,22 @@
char ntp[10] = "localhost";
chip::CharSpan defaultNTP(ntp);
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.StoreDefaultNtp(defaultNTP));
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.StoreDefaultNtp(defaultNTP));
char buf[5];
chip::MutableCharSpan getDefaultNtp(buf);
- NL_TEST_ASSERT(inSuite, CHIP_ERROR_BUFFER_TOO_SMALL == timeSyncDataProv.LoadDefaultNtp(getDefaultNtp));
- NL_TEST_ASSERT(inSuite, getDefaultNtp.size() == 5);
+ EXPECT_EQ(CHIP_ERROR_BUFFER_TOO_SMALL, timeSyncDataProv.LoadDefaultNtp(getDefaultNtp));
+ EXPECT_EQ(getDefaultNtp.size(), 5u);
char buf1[20];
chip::MutableCharSpan getDefaultNtp1(buf1);
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.LoadDefaultNtp(getDefaultNtp1));
- NL_TEST_ASSERT(inSuite, getDefaultNtp1.size() == 10);
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.LoadDefaultNtp(getDefaultNtp1));
+ EXPECT_EQ(getDefaultNtp1.size(), 10u);
}
-void TestDefaultNTPEmpty(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestTimeSyncDataProvider, TestDefaultNTPEmpty)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -96,10 +102,10 @@
chip::MutableCharSpan defaultNTP;
- NL_TEST_ASSERT(inSuite, CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND == timeSyncDataProv.LoadDefaultNtp(defaultNTP));
+ EXPECT_EQ(CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND, timeSyncDataProv.LoadDefaultNtp(defaultNTP));
}
-void TestTimeZoneStoreLoad(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestTimeSyncDataProvider, TestTimeZoneStoreLoad)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -122,26 +128,26 @@
TimeSyncDataProvider::TimeZoneStore tzS[3] = { makeTimeZone(1, 1, tzShort), makeTimeZone(2, 2, tzLong),
makeTimeZone(3, 3, tzBerlin) };
TimeZoneList tzL(tzS);
- NL_TEST_ASSERT(inSuite, tzL.size() == 3);
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.StoreTimeZone(tzL));
+ EXPECT_EQ(tzL.size(), 3u);
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.StoreTimeZone(tzL));
TimeSyncDataProvider::TimeZoneStore emptyTzS[3] = { makeTimeZone(), makeTimeZone(), makeTimeZone() };
tzL = TimeZoneList(emptyTzS);
TimeSyncDataProvider::TimeZoneObj tzObj{ tzL, 3 };
- NL_TEST_ASSERT(inSuite, tzL.size() == 3);
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.LoadTimeZone(tzObj));
- NL_TEST_ASSERT(inSuite, tzObj.validSize == 3);
+ EXPECT_EQ(tzL.size(), 3u);
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.LoadTimeZone(tzObj));
+ EXPECT_EQ(tzObj.validSize, 3u);
- NL_TEST_ASSERT(inSuite, !tzL.empty());
+ EXPECT_FALSE(tzL.empty());
if (!tzL.empty())
{
auto & tz = tzL[0].timeZone;
- NL_TEST_ASSERT(inSuite, tz.offset == 1);
- NL_TEST_ASSERT(inSuite, tz.validAt == 1);
- NL_TEST_ASSERT(inSuite, tz.name.HasValue());
- NL_TEST_ASSERT(inSuite, tz.name.Value().size() == 2);
+ EXPECT_EQ(tz.offset, 1);
+ EXPECT_EQ(tz.validAt, 1u);
+ EXPECT_TRUE(tz.name.HasValue());
+ EXPECT_EQ(tz.name.Value().size(), 2u);
tzL = tzL.SubSpan(1);
}
@@ -149,10 +155,10 @@
if (!tzL.empty())
{
auto & tz = tzL[0].timeZone;
- NL_TEST_ASSERT(inSuite, tz.offset == 2);
- NL_TEST_ASSERT(inSuite, tz.validAt == 2);
- NL_TEST_ASSERT(inSuite, tz.name.HasValue());
- NL_TEST_ASSERT(inSuite, tz.name.Value().size() == 63);
+ EXPECT_EQ(tz.offset, 2);
+ EXPECT_EQ(tz.validAt, 2u);
+ EXPECT_TRUE(tz.name.HasValue());
+ EXPECT_EQ(tz.name.Value().size(), 63u);
tzL = tzL.SubSpan(1);
}
@@ -160,18 +166,18 @@
if (!tzL.empty())
{
auto & tz = tzL[0].timeZone;
- NL_TEST_ASSERT(inSuite, tz.offset == 3);
- NL_TEST_ASSERT(inSuite, tz.validAt == 3);
- NL_TEST_ASSERT(inSuite, tz.name.HasValue());
- NL_TEST_ASSERT(inSuite, tz.name.Value().size() == 6);
+ EXPECT_EQ(tz.offset, 3);
+ EXPECT_EQ(tz.validAt, 3u);
+ EXPECT_TRUE(tz.name.HasValue());
+ EXPECT_EQ(tz.name.Value().size(), 6u);
tzL = tzL.SubSpan(1);
}
- NL_TEST_ASSERT(inSuite, tzL.empty());
+ EXPECT_TRUE(tzL.empty());
}
-void TestTimeZoneEmpty(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestTimeSyncDataProvider, TestTimeZoneEmpty)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -179,12 +185,12 @@
TimeSyncDataProvider::TimeZoneObj timeZoneObj;
- NL_TEST_ASSERT(inSuite, CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND == timeSyncDataProv.LoadTimeZone(timeZoneObj));
- NL_TEST_ASSERT(inSuite, !timeZoneObj.timeZoneList.begin());
- NL_TEST_ASSERT(inSuite, timeZoneObj.validSize == 0);
+ EXPECT_EQ(CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND, timeSyncDataProv.LoadTimeZone(timeZoneObj));
+ EXPECT_FALSE(timeZoneObj.timeZoneList.begin());
+ EXPECT_EQ(timeZoneObj.validSize, 0u);
}
-void TestDSTOffset(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestTimeSyncDataProvider, TestDSTOffset)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -201,26 +207,26 @@
DSTOffset dstS[3] = { makeDSTOffset(1, 1, 2), makeDSTOffset(2, 2, 3), makeDSTOffset(3, 3) };
DSTOffsetList dstL(dstS);
TimeSyncDataProvider::DSTOffsetObj dstObj{ dstL, 3 };
- NL_TEST_ASSERT(inSuite, dstObj.validSize == 3);
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.StoreDSTOffset(dstL));
+ EXPECT_EQ(dstObj.validSize, 3u);
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.StoreDSTOffset(dstL));
DSTOffset emtpyDstS[3] = { makeDSTOffset(), makeDSTOffset(), makeDSTOffset() };
dstObj.dstOffsetList = DSTOffsetList(emtpyDstS);
dstObj.validSize = 0;
- NL_TEST_ASSERT(inSuite, dstObj.dstOffsetList.size() == 3);
- NL_TEST_ASSERT(inSuite, CHIP_NO_ERROR == timeSyncDataProv.LoadDSTOffset(dstObj));
- NL_TEST_ASSERT(inSuite, dstObj.validSize == 3);
+ EXPECT_EQ(dstObj.dstOffsetList.size(), 3u);
+ EXPECT_EQ(CHIP_NO_ERROR, timeSyncDataProv.LoadDSTOffset(dstObj));
+ EXPECT_EQ(dstObj.validSize, 3u);
- NL_TEST_ASSERT(inSuite, !dstObj.dstOffsetList.empty());
+ EXPECT_FALSE(dstObj.dstOffsetList.empty());
if (!dstObj.dstOffsetList.empty())
{
auto & dst = dstObj.dstOffsetList.data()[0];
- NL_TEST_ASSERT(inSuite, dst.offset == 1);
- NL_TEST_ASSERT(inSuite, dst.validStarting == 1);
- NL_TEST_ASSERT(inSuite, !dst.validUntil.IsNull());
- NL_TEST_ASSERT(inSuite, dst.validUntil.Value() == 2);
+ EXPECT_EQ(dst.offset, 1);
+ EXPECT_EQ(dst.validStarting, 1u);
+ EXPECT_FALSE(dst.validUntil.IsNull());
+ EXPECT_EQ(dst.validUntil.Value(), 2u);
dstObj.dstOffsetList = dstObj.dstOffsetList.SubSpan(1);
}
@@ -228,10 +234,10 @@
if (!dstObj.dstOffsetList.empty())
{
auto & dst = dstObj.dstOffsetList.data()[0];
- NL_TEST_ASSERT(inSuite, dst.offset == 2);
- NL_TEST_ASSERT(inSuite, dst.validStarting == 2);
- NL_TEST_ASSERT(inSuite, !dst.validUntil.IsNull());
- NL_TEST_ASSERT(inSuite, dst.validUntil.Value() == 3);
+ EXPECT_EQ(dst.offset, 2);
+ EXPECT_EQ(dst.validStarting, 2u);
+ EXPECT_FALSE(dst.validUntil.IsNull());
+ EXPECT_EQ(dst.validUntil.Value(), 3u);
dstObj.dstOffsetList = dstObj.dstOffsetList.SubSpan(1);
}
@@ -239,17 +245,17 @@
if (!dstObj.dstOffsetList.empty())
{
auto & dst = dstObj.dstOffsetList.data()[0];
- NL_TEST_ASSERT(inSuite, dst.offset == 3);
- NL_TEST_ASSERT(inSuite, dst.validStarting == 3);
- NL_TEST_ASSERT(inSuite, dst.validUntil.IsNull());
+ EXPECT_EQ(dst.offset, 3);
+ EXPECT_EQ(dst.validStarting, 3u);
+ EXPECT_TRUE(dst.validUntil.IsNull());
dstObj.dstOffsetList = dstObj.dstOffsetList.SubSpan(1);
}
- NL_TEST_ASSERT(inSuite, dstObj.dstOffsetList.empty());
+ EXPECT_TRUE(dstObj.dstOffsetList.empty());
}
-void TestDSTOffsetEmpty(nlTestSuite * inSuite, void * inContext)
+TEST_F(TestTimeSyncDataProvider, TestDSTOffsetEmpty)
{
TestPersistentStorageDelegate persistentStorage;
TimeSyncDataProvider timeSyncDataProv;
@@ -257,42 +263,9 @@
TimeSyncDataProvider::DSTOffsetObj dstObj;
- NL_TEST_ASSERT(inSuite, CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND == timeSyncDataProv.LoadDSTOffset(dstObj));
- NL_TEST_ASSERT(inSuite, !dstObj.dstOffsetList.begin());
- NL_TEST_ASSERT(inSuite, dstObj.validSize == 0);
-}
-
-const nlTest sTests[] = { NL_TEST_DEF("Test TrustedTimeSource store load", TestTrustedTimeSourceStoreLoad),
- NL_TEST_DEF("Test TrustedTimeSource empty", TestTrustedTimeSourceEmpty),
- NL_TEST_DEF("Test default NTP store load", TestDefaultNTPStoreLoad),
- NL_TEST_DEF("Test default NTP empty", TestDefaultNTPEmpty),
- NL_TEST_DEF("Test time zone store load", TestTimeZoneStoreLoad),
- NL_TEST_DEF("Test time zone (empty list)", TestTimeZoneEmpty),
- NL_TEST_DEF("Test DSTOffset", TestDSTOffset),
- NL_TEST_DEF("Test DSTOffset (empty list)", TestDSTOffsetEmpty),
- NL_TEST_SENTINEL() };
-
-int TestSetup(void * inContext)
-{
- VerifyOrReturnError(CHIP_NO_ERROR == chip::Platform::MemoryInit(), FAILURE);
- return SUCCESS;
-}
-
-int TestTearDown(void * inContext)
-{
- chip::Platform::MemoryShutdown();
- return SUCCESS;
+ EXPECT_EQ(CHIP_ERROR_PERSISTED_STORAGE_VALUE_NOT_FOUND, timeSyncDataProv.LoadDSTOffset(dstObj));
+ EXPECT_TRUE(dstObj.dstOffsetList.empty());
+ EXPECT_EQ(dstObj.validSize, 0u);
}
} // namespace
-
-int TestTimeSyncDataProvider()
-{
- nlTestSuite theSuite = { "Time Sync data provider tests", &sTests[0], TestSetup, TestTearDown };
-
- // Run test suite against one context.
- nlTestRunner(&theSuite, nullptr);
- return nlTestRunnerStats(&theSuite);
-}
-
-CHIP_REGISTER_TEST_SUITE(TestTimeSyncDataProvider)
diff --git a/src/app/tests/TestWriteInteraction.cpp b/src/app/tests/TestWriteInteraction.cpp
index 795c52a..7aa2dba 100644
--- a/src/app/tests/TestWriteInteraction.cpp
+++ b/src/app/tests/TestWriteInteraction.cpp
@@ -20,6 +20,7 @@
#include <app/InteractionModelEngine.h>
#include <app/reporting/tests/MockReportScheduler.h>
#include <app/tests/AppTestContext.h>
+#include <app/tests/test-interaction-model-api.h>
#include <credentials/GroupDataProviderImpl.h>
#include <crypto/DefaultSessionKeystore.h>
#include <lib/core/CHIPCore.h>
@@ -40,9 +41,6 @@
namespace {
-uint8_t attributeDataTLV[CHIP_CONFIG_DEFAULT_UDP_MTU_SIZE];
-size_t attributeDataTLVLen = 0;
-constexpr chip::DataVersion kRejectedDataVersion = 1;
constexpr chip::DataVersion kAcceptedDataVersion = 5;
constexpr uint16_t kMaxGroupsPerFabric = 5;
constexpr uint16_t kMaxGroupKeysPerFabric = 8;
@@ -363,28 +361,6 @@
}
}
-const EmberAfAttributeMetadata * GetAttributeMetadata(const ConcreteAttributePath & aConcreteClusterPath)
-{
- // Note: This test does not make use of the real attribute metadata.
- static EmberAfAttributeMetadata stub = { .defaultValue = EmberAfDefaultOrMinMaxAttributeValue(uint32_t(0)) };
- return &stub;
-}
-
-CHIP_ERROR WriteSingleClusterData(const Access::SubjectDescriptor & aSubjectDescriptor, const ConcreteDataAttributePath & aPath,
- TLV::TLVReader & aReader, WriteHandler * aWriteHandler)
-{
- if (aPath.mDataVersion.HasValue() && aPath.mDataVersion.Value() == kRejectedDataVersion)
- {
- return aWriteHandler->AddStatus(aPath, Protocols::InteractionModel::Status::DataVersionMismatch);
- }
-
- TLV::TLVWriter writer;
- writer.Init(attributeDataTLV);
- writer.CopyElement(TLV::AnonymousTag(), aReader);
- attributeDataTLVLen = writer.GetLengthWritten();
- return aWriteHandler->AddStatus(aPath, Protocols::InteractionModel::Status::Success);
-}
-
void TestWriteInteraction::TestWriteRoundtripWithClusterObjects(nlTestSuite * apSuite, void * apContext)
{
TestContext & ctx = *static_cast<TestContext *>(apContext);
@@ -434,7 +410,7 @@
{
app::Clusters::UnitTesting::Structs::SimpleStruct::Type dataRx;
TLV::TLVReader reader;
- reader.Init(attributeDataTLV, attributeDataTLVLen);
+ reader.Init(chip::Test::attributeDataTLV, chip::Test::attributeDataTLVLen);
reader.Next();
NL_TEST_ASSERT(apSuite, CHIP_NO_ERROR == DataModel::Decode(reader, dataRx));
NL_TEST_ASSERT(apSuite, dataRx.a == dataTx.a);
@@ -531,7 +507,7 @@
dataTxValue.b = true;
DataModel::Nullable<app::Clusters::UnitTesting::Structs::SimpleStruct::Type> dataTx;
dataTx.SetNonNull(dataTxValue);
- Optional<DataVersion> version(kRejectedDataVersion);
+ Optional<DataVersion> version(chip::Test::kRejectedDataVersion);
writeClient.EncodeAttribute(attributePathParams, dataTx, version);
NL_TEST_ASSERT(apSuite, err == CHIP_NO_ERROR);
diff --git a/src/app/tests/test-ember-api.cpp b/src/app/tests/test-ember-api.cpp
new file mode 100644
index 0000000..2b63032
--- /dev/null
+++ b/src/app/tests/test-ember-api.cpp
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2024 Project CHIP Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <app/tests/test-ember-api.h>
+#include <app/util/attribute-storage.h>
+#include <app/util/basic-types.h>
+#include <app/util/mock/Constants.h>
+#include <app/util/mock/Functions.h>
+
+chip::EndpointId chip::Test::numEndpoints = 0;
+
+// Used by the code in TestPowerSourceCluster.cpp (and generally things using mock ember functions may need this).
+uint16_t emberAfGetClusterServerEndpointIndex(chip::EndpointId endpoint, chip::ClusterId cluster,
+ uint16_t fixedClusterServerEndpointCount)
+{
+ // Very simple mapping here, we're just going to return the endpoint that matches the given endpoint index because the test
+ // uses the endpoints in order.
+ if (endpoint >= chip::Test::numEndpoints)
+ {
+ return kEmberInvalidEndpointIndex;
+ }
+ return endpoint;
+}
diff --git a/src/app/tests/test-ember-api.h b/src/app/tests/test-ember-api.h
new file mode 100644
index 0000000..66b1afc
--- /dev/null
+++ b/src/app/tests/test-ember-api.h
@@ -0,0 +1,28 @@
+/*
+ * Copyright (c) 2024 Project CHIP Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#include <app/util/basic-types.h>
+
+/// test-ember-api was created to consolidate and centralize stub functions that are related to ember and are used by the unit-tests
+
+namespace chip {
+namespace Test {
+extern chip::EndpointId numEndpoints;
+}
+} // namespace chip
+
+// Used by the code in TestPowerSourceCluster.cpp (and generally things using mock ember functions may need this).
+uint16_t emberAfGetClusterServerEndpointIndex(chip::EndpointId endpoint, chip::ClusterId cluster,
+ uint16_t fixedClusterServerEndpointCount);
diff --git a/src/app/tests/test-interaction-model-api.cpp b/src/app/tests/test-interaction-model-api.cpp
new file mode 100644
index 0000000..ae3f559
--- /dev/null
+++ b/src/app/tests/test-interaction-model-api.cpp
@@ -0,0 +1,139 @@
+/*
+ * Copyright (c) 2024 Project CHIP Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "lib/support/CHIPMem.h"
+#include <app/tests/test-interaction-model-api.h>
+#include <app/util/basic-types.h>
+
+#include <app/InteractionModelEngine.h>
+#include <app/MessageDef/AttributeReportIBs.h>
+#include <app/util/basic-types.h>
+#include <app/util/mock/Constants.h>
+#include <app/util/mock/Functions.h>
+#include <lib/core/CHIPCore.h>
+#include <messaging/ReliableMessageContext.h>
+
+namespace chip {
+uint8_t Test::attributeDataTLV[CHIP_CONFIG_DEFAULT_UDP_MTU_SIZE];
+size_t Test::attributeDataTLVLen = 0;
+
+namespace app {
+
+// Used by the code in TestWriteInteraction.cpp (and generally tests that interact with the WriteHandler may need this).
+const EmberAfAttributeMetadata * GetAttributeMetadata(const ConcreteAttributePath & aConcreteClusterPath)
+{
+ // Note: This test does not make use of the real attribute metadata.
+ static EmberAfAttributeMetadata stub = { .defaultValue = EmberAfDefaultOrMinMaxAttributeValue(uint32_t(0)) };
+ return &stub;
+}
+
+// Used by the code in TestWriteInteraction.cpp (and generally tests that interact with the WriteHandler may need this).
+CHIP_ERROR WriteSingleClusterData(const Access::SubjectDescriptor & aSubjectDescriptor, const ConcreteDataAttributePath & aPath,
+ TLV::TLVReader & aReader, WriteHandler * aWriteHandler)
+{
+ if (aPath.mDataVersion.HasValue() && aPath.mDataVersion.Value() == Test::kRejectedDataVersion)
+ {
+ return aWriteHandler->AddStatus(aPath, Protocols::InteractionModel::Status::DataVersionMismatch);
+ }
+
+ TLV::TLVWriter writer;
+ writer.Init(chip::Test::attributeDataTLV);
+ writer.CopyElement(TLV::AnonymousTag(), aReader);
+ chip::Test::attributeDataTLVLen = writer.GetLengthWritten();
+ return aWriteHandler->AddStatus(aPath, Protocols::InteractionModel::Status::Success);
+}
+
+// Used by the code in TestAclAttribute.cpp (and generally tests that interact with the InteractionModelEngine may need this).
+bool ConcreteAttributePathExists(const ConcreteAttributePath & aPath)
+{
+ return aPath.mClusterId != Test::kTestDeniedClusterId1;
+}
+
+// Used by the code in TestAclAttribute.cpp (and generally tests that interact with the InteractionModelEngine may need this).
+Protocols::InteractionModel::Status CheckEventSupportStatus(const ConcreteEventPath & aPath)
+{
+ if (aPath.mClusterId == Test::kTestDeniedClusterId1)
+ {
+ return Protocols::InteractionModel::Status::UnsupportedCluster;
+ }
+
+ return Protocols::InteractionModel::Status::Success;
+}
+
+// strong defintion in TestCommandInteraction.cpp
+__attribute__((weak)) Protocols::InteractionModel::Status
+ServerClusterCommandExists(const ConcreteCommandPath & aRequestCommandPath)
+{
+ // Mock cluster catalog, only support commands on one cluster on one endpoint.
+ using Protocols::InteractionModel::Status;
+
+ return Status::Success;
+}
+
+// strong defintion in TestCommandInteraction.cpp
+__attribute__((weak)) void DispatchSingleClusterCommand(const ConcreteCommandPath & aRequestCommandPath,
+ chip::TLV::TLVReader & aReader, CommandHandler * apCommandObj)
+{}
+
+// Used by the code in TestReadInteraction.cpp (and generally tests that interact with the Reporting Engine may need this).
+bool IsClusterDataVersionEqual(const ConcreteClusterPath & aConcreteClusterPath, DataVersion aRequiredVersion)
+{
+ return (Test::kTestDataVersion1 == aRequiredVersion);
+}
+
+// Used by the code in TestReadInteraction.cpp.
+bool IsDeviceTypeOnEndpoint(DeviceTypeId deviceType, EndpointId endpoint)
+{
+ return false;
+}
+
+// Used by the code in TestReadInteraction.cpp (and generally tests that interact with the Reporting Engine may need this).
+CHIP_ERROR ReadSingleClusterData(const Access::SubjectDescriptor & aSubjectDescriptor, bool aIsFabricFiltered,
+ const ConcreteReadAttributePath & aPath, AttributeReportIBs::Builder & aAttributeReports,
+ AttributeEncodeState * apEncoderState)
+{
+ if (aPath.mClusterId >= Test::kMockEndpointMin)
+ {
+ return Test::ReadSingleMockClusterData(aSubjectDescriptor.fabricIndex, aPath, aAttributeReports, apEncoderState);
+ }
+
+ if (!(aPath.mClusterId == Test::kTestClusterId && aPath.mEndpointId == Test::kTestEndpointId))
+ {
+ AttributeReportIB::Builder & attributeReport = aAttributeReports.CreateAttributeReport();
+ ReturnErrorOnFailure(aAttributeReports.GetError());
+ ChipLogDetail(DataManagement, "TEST Cluster %" PRIx32 ", Field %" PRIx32 " is dirty", aPath.mClusterId, aPath.mAttributeId);
+
+ AttributeStatusIB::Builder & attributeStatus = attributeReport.CreateAttributeStatus();
+ ReturnErrorOnFailure(attributeReport.GetError());
+ AttributePathIB::Builder & attributePath = attributeStatus.CreatePath();
+ ReturnErrorOnFailure(attributeStatus.GetError());
+
+ attributePath.Endpoint(aPath.mEndpointId).Cluster(aPath.mClusterId).Attribute(aPath.mAttributeId).EndOfAttributePathIB();
+ ReturnErrorOnFailure(attributePath.GetError());
+ StatusIB::Builder & errorStatus = attributeStatus.CreateErrorStatus();
+ ReturnErrorOnFailure(attributeStatus.GetError());
+ errorStatus.EncodeStatusIB(StatusIB(Protocols::InteractionModel::Status::UnsupportedAttribute));
+ ReturnErrorOnFailure(errorStatus.GetError());
+ ReturnErrorOnFailure(attributeStatus.EndOfAttributeStatusIB());
+ return attributeReport.EndOfAttributeReportIB();
+ }
+
+ return AttributeValueEncoder(aAttributeReports, aSubjectDescriptor, aPath, 0 /* dataVersion */).Encode(Test::kTestFieldValue1);
+}
+
+} // namespace app
+
+} // namespace chip
diff --git a/src/app/tests/test-interaction-model-api.h b/src/app/tests/test-interaction-model-api.h
new file mode 100644
index 0000000..88e861b
--- /dev/null
+++ b/src/app/tests/test-interaction-model-api.h
@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2024 Project CHIP Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#pragma once
+
+/// test-interaction-model-api was created to consolidate and centralize stub functions that are used by the Interaction Model
+/// during unit-testing.
+
+#include <app/CommandHandler.h>
+#include <app/ConcreteCommandPath.h>
+#include <app/WriteHandler.h>
+#include <app/util/attribute-storage.h>
+#include <app/util/mock/Constants.h>
+#include <app/util/mock/Functions.h>
+
+namespace chip {
+
+namespace Test {
+
+constexpr chip::ClusterId kTestDeniedClusterId1 = 1000;
+constexpr chip::ClusterId kTestDeniedClusterId2 = 3;
+
+constexpr chip::ClusterId kTestClusterId = 6;
+constexpr uint8_t kTestFieldValue1 = 1;
+constexpr chip::EndpointId kTestEndpointId = 1;
+constexpr chip::DataVersion kTestDataVersion1 = 3;
+
+constexpr chip::DataVersion kRejectedDataVersion = 1;
+extern uint8_t attributeDataTLV[CHIP_CONFIG_DEFAULT_UDP_MTU_SIZE];
+extern size_t attributeDataTLVLen;
+
+} // namespace Test
+namespace app {
+
+CHIP_ERROR ReadSingleClusterData(const Access::SubjectDescriptor & aSubjectDescriptor, bool aIsFabricFiltered,
+ const ConcreteReadAttributePath & aPath, AttributeReportIBs::Builder & aAttributeReports,
+ AttributeEncodeState * apEncoderState);
+
+bool IsClusterDataVersionEqual(const ConcreteClusterPath & aConcreteClusterPath, DataVersion aRequiredVersion);
+
+CHIP_ERROR WriteSingleClusterData(const Access::SubjectDescriptor & aSubjectDescriptor, const ConcreteDataAttributePath & aPath,
+ TLV::TLVReader & aReader, WriteHandler * aWriteHandler);
+const EmberAfAttributeMetadata * GetAttributeMetadata(const ConcreteAttributePath & aConcreteClusterPath);
+
+bool ConcreteAttributePathExists(const ConcreteAttributePath & aPath);
+Protocols::InteractionModel::Status CheckEventSupportStatus(const ConcreteEventPath & aPath);
+
+Protocols::InteractionModel::Status ServerClusterCommandExists(const ConcreteCommandPath & aRequestCommandPath);
+
+void DispatchSingleClusterCommand(const ConcreteCommandPath & aRequestCommandPath, chip::TLV::TLVReader & aReader,
+ CommandHandler * apCommandObj);
+
+bool IsDeviceTypeOnEndpoint(DeviceTypeId deviceType, EndpointId endpoint);
+
+} // namespace app
+} // namespace chip
diff --git a/src/test_driver/openiotsdk/unit-tests/test_components.txt b/src/test_driver/openiotsdk/unit-tests/test_components.txt
index 35ba62b..54f47df 100644
--- a/src/test_driver/openiotsdk/unit-tests/test_components.txt
+++ b/src/test_driver/openiotsdk/unit-tests/test_components.txt
@@ -20,4 +20,5 @@
ICDServerTests
DataModelTests
InetLayerTests
+AppTests
MessagingLayerTests
diff --git a/src/test_driver/openiotsdk/unit-tests/test_components_nl.txt b/src/test_driver/openiotsdk/unit-tests/test_components_nl.txt
index d57fda1..925be3f 100644
--- a/src/test_driver/openiotsdk/unit-tests/test_components_nl.txt
+++ b/src/test_driver/openiotsdk/unit-tests/test_components_nl.txt
@@ -1,2 +1,2 @@
-AppTests
+AppTestsNL
SecureChannelTestsNL