Interaction model to PW (#33160)
diff --git a/src/protocols/interaction_model/tests/BUILD.gn b/src/protocols/interaction_model/tests/BUILD.gn
index 0abd3a7..875146e 100644
--- a/src/protocols/interaction_model/tests/BUILD.gn
+++ b/src/protocols/interaction_model/tests/BUILD.gn
@@ -14,11 +14,10 @@
import("//build_overrides/build.gni")
import("//build_overrides/chip.gni")
-import("//build_overrides/nlunit_test.gni")
import("${chip_root}/build/chip/chip_test_suite.gni")
-chip_test_suite_using_nltest("tests") {
+chip_test_suite("tests") {
output_name = "libInteractionModelTests"
test_sources = [ "TestStatusCode.cpp" ]
@@ -26,9 +25,7 @@
public_deps = [
"${chip_root}/src/lib/core",
"${chip_root}/src/lib/support",
- "${chip_root}/src/lib/support:testing_nlunit",
"${chip_root}/src/protocols/interaction_model",
- "${nlunit_test_root}:nlunit-test",
]
cflags = [ "-Wconversion" ]
diff --git a/src/protocols/interaction_model/tests/TestStatusCode.cpp b/src/protocols/interaction_model/tests/TestStatusCode.cpp
index 4b89e0f..2be78c4 100644
--- a/src/protocols/interaction_model/tests/TestStatusCode.cpp
+++ b/src/protocols/interaction_model/tests/TestStatusCode.cpp
@@ -18,54 +18,51 @@
#include <stdint.h>
+#include <gtest/gtest.h>
#include <lib/core/Optional.h>
-#include <lib/support/UnitTestExtendedAssertions.h>
-#include <lib/support/UnitTestRegistration.h>
#include <protocols/interaction_model/StatusCode.h>
-#include <nlunit-test.h>
-
using namespace ::chip;
using namespace ::chip::Protocols::InteractionModel;
namespace {
-void TestStatusBasicValues(nlTestSuite * inSuite, void * inContext)
+TEST(TestStatusCode, TestStatusBasicValues)
{
- NL_TEST_ASSERT_EQUALS(inSuite, static_cast<int>(Status::Success), 0);
- NL_TEST_ASSERT_EQUALS(inSuite, static_cast<int>(Status::Failure), 1);
- NL_TEST_ASSERT_EQUALS(inSuite, static_cast<int>(Status::UnsupportedEndpoint), 0x7f);
- NL_TEST_ASSERT_EQUALS(inSuite, static_cast<int>(Status::InvalidInState), 0xcb);
+ EXPECT_EQ(static_cast<int>(Status::Success), 0);
+ EXPECT_EQ(static_cast<int>(Status::Failure), 1);
+ EXPECT_EQ(static_cast<int>(Status::UnsupportedEndpoint), 0x7f);
+ EXPECT_EQ(static_cast<int>(Status::InvalidInState), 0xcb);
}
-void TestClusterStatusCode(nlTestSuite * inSuite, void * inContext)
+TEST(TestStatusCode, TestClusterStatusCode)
{
// Basic usage as a Status.
{
ClusterStatusCode status_code_success{ Status::Success };
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_success, Status::Success);
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_success.GetStatus(), Status::Success);
- NL_TEST_ASSERT(inSuite, !status_code_success.HasClusterSpecificCode());
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_success.GetClusterSpecificCode(), chip::NullOptional);
- NL_TEST_ASSERT(inSuite, status_code_success.IsSuccess());
+ EXPECT_EQ(status_code_success, Status::Success);
+ EXPECT_EQ(status_code_success.GetStatus(), Status::Success);
+ EXPECT_FALSE(status_code_success.HasClusterSpecificCode());
+ EXPECT_EQ(status_code_success.GetClusterSpecificCode(), chip::NullOptional);
+ EXPECT_TRUE(status_code_success.IsSuccess());
ClusterStatusCode status_code_failure{ Status::Failure };
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure, Status::Failure);
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure.GetStatus(), Status::Failure);
- NL_TEST_ASSERT(inSuite, !status_code_failure.HasClusterSpecificCode());
- NL_TEST_ASSERT(inSuite, !status_code_failure.IsSuccess());
+ EXPECT_EQ(status_code_failure, Status::Failure);
+ EXPECT_EQ(status_code_failure.GetStatus(), Status::Failure);
+ EXPECT_FALSE(status_code_failure.HasClusterSpecificCode());
+ EXPECT_FALSE(status_code_failure.IsSuccess());
ClusterStatusCode status_code_unsupported_ep{ Status::UnsupportedEndpoint };
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_unsupported_ep, Status::UnsupportedEndpoint);
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_unsupported_ep.GetStatus(), Status::UnsupportedEndpoint);
- NL_TEST_ASSERT(inSuite, !status_code_unsupported_ep.HasClusterSpecificCode());
- NL_TEST_ASSERT(inSuite, !status_code_unsupported_ep.IsSuccess());
+ EXPECT_EQ(status_code_unsupported_ep, Status::UnsupportedEndpoint);
+ EXPECT_EQ(status_code_unsupported_ep.GetStatus(), Status::UnsupportedEndpoint);
+ EXPECT_FALSE(status_code_unsupported_ep.HasClusterSpecificCode());
+ EXPECT_FALSE(status_code_unsupported_ep.IsSuccess());
ClusterStatusCode status_code_invalid_in_state{ Status::InvalidInState };
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_invalid_in_state, Status::InvalidInState);
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_invalid_in_state.GetStatus(), Status::InvalidInState);
- NL_TEST_ASSERT(inSuite, !status_code_invalid_in_state.HasClusterSpecificCode());
- NL_TEST_ASSERT(inSuite, !status_code_invalid_in_state.IsSuccess());
+ EXPECT_EQ(status_code_invalid_in_state, Status::InvalidInState);
+ EXPECT_EQ(status_code_invalid_in_state.GetStatus(), Status::InvalidInState);
+ EXPECT_FALSE(status_code_invalid_in_state.HasClusterSpecificCode());
+ EXPECT_FALSE(status_code_invalid_in_state.IsSuccess());
}
enum RobotoClusterStatus : uint8_t
@@ -77,18 +74,16 @@
// Cluster-specific usage.
{
ClusterStatusCode status_code_success = ClusterStatusCode::ClusterSpecificSuccess(RobotoClusterStatus::kSauceSuccess);
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_success, Status::Success);
- NL_TEST_ASSERT(inSuite, status_code_success.HasClusterSpecificCode());
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_success.GetClusterSpecificCode(),
- static_cast<uint8_t>(RobotoClusterStatus::kSauceSuccess));
- NL_TEST_ASSERT(inSuite, status_code_success.IsSuccess());
+ EXPECT_EQ(status_code_success, Status::Success);
+ EXPECT_TRUE(status_code_success.HasClusterSpecificCode());
+ EXPECT_EQ(status_code_success.GetClusterSpecificCode(), static_cast<uint8_t>(RobotoClusterStatus::kSauceSuccess));
+ EXPECT_TRUE(status_code_success.IsSuccess());
ClusterStatusCode status_code_failure = ClusterStatusCode::ClusterSpecificFailure(RobotoClusterStatus::kSandwichError);
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure, Status::Failure);
- NL_TEST_ASSERT(inSuite, status_code_failure.HasClusterSpecificCode());
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure.GetClusterSpecificCode(),
- static_cast<uint8_t>(RobotoClusterStatus::kSandwichError));
- NL_TEST_ASSERT(inSuite, !status_code_failure.IsSuccess());
+ EXPECT_EQ(status_code_failure, Status::Failure);
+ EXPECT_TRUE(status_code_failure.HasClusterSpecificCode());
+ EXPECT_EQ(status_code_failure.GetClusterSpecificCode(), static_cast<uint8_t>(RobotoClusterStatus::kSandwichError));
+ EXPECT_FALSE(status_code_failure.IsSuccess());
}
// Copy/Assignment
@@ -96,40 +91,19 @@
ClusterStatusCode status_code_failure1 = ClusterStatusCode::ClusterSpecificFailure(RobotoClusterStatus::kSandwichError);
ClusterStatusCode status_code_failure2(status_code_failure1);
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure1, status_code_failure2);
- NL_TEST_ASSERT(inSuite, status_code_failure1.HasClusterSpecificCode());
- NL_TEST_ASSERT(inSuite, status_code_failure2.HasClusterSpecificCode());
+ EXPECT_EQ(status_code_failure1, status_code_failure2);
+ EXPECT_TRUE(status_code_failure1.HasClusterSpecificCode());
+ EXPECT_TRUE(status_code_failure2.HasClusterSpecificCode());
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure1.GetClusterSpecificCode(),
- static_cast<uint8_t>(RobotoClusterStatus::kSandwichError));
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure2.GetClusterSpecificCode(),
- static_cast<uint8_t>(RobotoClusterStatus::kSandwichError));
+ EXPECT_EQ(status_code_failure1.GetClusterSpecificCode(), static_cast<uint8_t>(RobotoClusterStatus::kSandwichError));
+ EXPECT_EQ(status_code_failure2.GetClusterSpecificCode(), static_cast<uint8_t>(RobotoClusterStatus::kSandwichError));
ClusterStatusCode status_code_failure3{ Status::InvalidCommand };
- NL_TEST_ASSERT(inSuite, status_code_failure2 != status_code_failure3);
+ EXPECT_NE(status_code_failure2, status_code_failure3);
status_code_failure3 = status_code_failure2;
- NL_TEST_ASSERT_EQUALS(inSuite, status_code_failure2, status_code_failure3);
+ EXPECT_EQ(status_code_failure2, status_code_failure3);
}
}
-// clang-format off
-const nlTest sTests[] =
-{
- NL_TEST_DEF("TestStatusBasicValues", TestStatusBasicValues),
- NL_TEST_DEF("TestClusterStatusCode", TestClusterStatusCode),
- NL_TEST_SENTINEL()
-};
-// clang-format on
-
-nlTestSuite sSuite = { "Test IM Status Code abstractions", &sTests[0], nullptr, nullptr };
} // namespace
-
-int TestClusterStatusCode()
-{
- nlTestRunner(&sSuite, nullptr);
-
- return (nlTestRunnerStats(&sSuite));
-}
-
-CHIP_REGISTER_TEST_SUITE(TestClusterStatusCode)