Skip to content

Commit 9ca1f59

Browse files
Replaced nlunit-test with pw_unit_test in src/lib/format/ (#33063)
* Replaced nlunit-test with pw_unit_test in src/lib/format/ * Restyled by clang-format * Use EXPECT_STREQ --------- Co-authored-by: Restyled.io <commits@restyled.io>
1 parent 2edcdea commit 9ca1f59

File tree

4 files changed

+109
-171
lines changed

4 files changed

+109
-171
lines changed

src/lib/format/tests/BUILD.gn

+1-4
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,11 @@
1414

1515
import("//build_overrides/build.gni")
1616
import("//build_overrides/chip.gni")
17-
import("//build_overrides/nlunit_test.gni")
1817

1918
import("${chip_root}/build/chip/chip_test_suite.gni")
2019
import("${chip_root}/build/chip/fuzz_test.gni")
2120

22-
chip_test_suite_using_nltest("tests") {
21+
chip_test_suite("tests") {
2322
output_name = "libFormatTests"
2423

2524
test_sources = [
@@ -40,8 +39,6 @@ chip_test_suite_using_nltest("tests") {
4039
"${chip_root}/src/lib/format:flat-tree",
4140
"${chip_root}/src/lib/format:protocol-decoder",
4241
"${chip_root}/src/lib/format:protocol-tlv-metadata",
43-
"${chip_root}/src/lib/support:testing_nlunit",
44-
"${nlunit_test_root}:nlunit-test",
4542
]
4643
}
4744

src/lib/format/tests/TestDecoding.cpp

+50-75
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,11 @@
1717
#include <lib/core/TLVWriter.h>
1818
#include <lib/format/protocol_decoder.h>
1919
#include <lib/support/StringBuilder.h>
20-
#include <lib/support/UnitTestRegistration.h>
2120

2221
#include <tlv/meta/clusters_meta.h>
2322
#include <tlv/meta/protocols_meta.h>
2423

25-
#include <nlunit-test.h>
24+
#include <gtest/gtest.h>
2625

2726
#include "sample_data.h"
2827

@@ -57,8 +56,7 @@ const std::array<const Node<ItemInfo>, 53 + 2> fake_protocols_meta = { {
5756
{ 2, _FakeProtocolData },
5857
} };
5958

60-
void TestSampleData(nlTestSuite * inSuite, const PayloadDecoderInitParams & params, const SamplePayload & data,
61-
const char * expectation)
59+
void TestSampleData(const PayloadDecoderInitParams & params, const SamplePayload & data, const char * expectation)
6260
{
6361
chip::Decoders::PayloadDecoder<64, 128> decoder(
6462
PayloadDecoderInitParams(params).SetProtocol(data.protocolId).SetMessageType(data.messageType));
@@ -130,48 +128,48 @@ void TestSampleData(nlTestSuite * inSuite, const PayloadDecoderInitParams & para
130128
printf("ACTUAL: '%s'\n", partial.Reset().Add(output_builder.c_str() + idx).AddMarkerIfOverflow().c_str());
131129
}
132130

133-
NL_TEST_ASSERT(inSuite, strcmp(output_builder.c_str(), expectation) == 0);
131+
EXPECT_STREQ(output_builder.c_str(), expectation);
134132
}
135133

136-
void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
134+
TEST(TestDecoding, TestFullDataDecoding)
137135
{
138136
PayloadDecoderInitParams params;
139137

140138
params.SetProtocolDecodeTree(chip::TLVMeta::protocols_meta).SetClusterDecodeTree(chip::TLVMeta::clusters_meta);
141139

142-
TestSampleData(inSuite, params, secure_channel_mrp_ack, "mrp_ack: EMPTY\n");
143-
TestSampleData(inSuite, params, secure_channel_pkbdf_param_request,
140+
TestSampleData(params, secure_channel_mrp_ack, "mrp_ack: EMPTY\n");
141+
TestSampleData(params, secure_channel_pkbdf_param_request,
144142
"pbkdf_param_request\n"
145143
" initiator_random: hex:7C8698755B8E9866BB4FFDC27B733F3B6EF7F83D43FBE0CA6AD2B8C52C8F4236\n"
146144
" initiator_session_id: 37677\n"
147145
" passcode_id: 0\n"
148146
" has_pbkdf_parameters: false\n");
149-
TestSampleData(inSuite, params, secure_channel_pkbdf_param_response,
147+
TestSampleData(params, secure_channel_pkbdf_param_response,
150148
"pbkdf_param_response\n"
151149
" initiator_random: hex:7C8698755B8E9866BB4FFDC27B733F3B6EF7F83D43FBE0CA6AD2B8C52C8F4236\n"
152150
" responder_random: hex:A44EB3E1A751A88A32BAB59EF16EB9764C20E1A9DDBEF6EFE3F588C943C58424\n"
153151
" responder_session_id: 40168\n"
154152
" pbkdf_parameters\n"
155153
" iterations: 1000\n"
156154
" salt: hex:E8FC1E6FD0023422B3CA7ECEDD344444551C814D3D0B0EB9C096F00E8A8051B2\n");
157-
TestSampleData(inSuite, params, secure_channel_pase_pake1,
155+
TestSampleData(params, secure_channel_pase_pake1,
158156
// clang-format off
159157
"pase_pake1\n"
160158
" pA: hex:0422ABC7A84352850456BD4A510905FE6BB782A0863A9382550E1228020801B22EEC4102C60F80082842B9739705FCD37F134651442A41E3723DFFE0...\n"
161159
// clang-format on
162160
);
163-
TestSampleData(inSuite, params, secure_channel_pase_pake2,
161+
TestSampleData(params, secure_channel_pase_pake2,
164162
// clang-format off
165163
"pase_pake2\n"
166164
" pB: hex:04B6A44A3347C6B77900A3674CA19F40F25F056F8CB344EC1B4FA7888B9E6B570B7010431C5D0BE4021FE74A96C40721765FDA6802BE8DFDF5624332...\n"
167165
" cB: hex:40E7452275E38AEBAF0E0F6FAB33A1B0CB5AEB5E824230DD40D0071DC7E55C87\n"
168166
// clang-format on
169167
);
170-
TestSampleData(inSuite, params, secure_channel_pase_pake3,
168+
TestSampleData(params, secure_channel_pase_pake3,
171169
"pase_pake3\n"
172170
" cA: hex:6008C72EDEC9D25D4A36522F0BF23058F9378EFE38CBBCCE8C6853900169BC38\n");
173-
TestSampleData(inSuite, params, secure_channel_status_report, "status_report: BINARY DATA\n");
174-
TestSampleData(inSuite, params, im_protocol_read_request,
171+
TestSampleData(params, secure_channel_status_report, "status_report: BINARY DATA\n");
172+
TestSampleData(params, im_protocol_read_request,
175173
"read_request\n"
176174
" attribute_requests\n"
177175
" Anonymous<>\n"
@@ -206,7 +204,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
206204
" attribute_id: 3 == 'connectMaxTimeSeconds'\n"
207205
" fabric_filtered: false\n"
208206
" interaction_model_revison: 1\n");
209-
TestSampleData(inSuite, params, im_protocol_report_data,
207+
TestSampleData(params, im_protocol_report_data,
210208
"report_data\n"
211209
" attribute_reports\n"
212210
" Anonymous<>\n"
@@ -279,7 +277,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
279277
" interaction_model_revison: 1\n");
280278

281279
// Different content
282-
TestSampleData(inSuite, params, im_protocol_report_data_acl,
280+
TestSampleData(params, im_protocol_report_data_acl,
283281
"report_data\n"
284282
" attribute_reports\n"
285283
" Anonymous<>\n"
@@ -301,7 +299,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
301299
" interaction_model_revison: 1\n");
302300

303301
TestSampleData(
304-
inSuite, params, im_protocol_report_data_window_covering,
302+
params, im_protocol_report_data_window_covering,
305303
"report_data\n"
306304
" attribute_reports\n"
307305
" Anonymous<>\n"
@@ -315,7 +313,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
315313
" suppress_response: true\n"
316314
" interaction_model_revison: 1\n");
317315

318-
TestSampleData(inSuite, params, im_protocol_invoke_request,
316+
TestSampleData(params, im_protocol_invoke_request,
319317
"invoke_request\n"
320318
" suppress_response: false\n"
321319
" timed_request: false\n"
@@ -328,7 +326,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
328326
" OnOff::Toggle\n"
329327
" interaction_model_revison: 1\n");
330328

331-
TestSampleData(inSuite, params, im_protocol_invoke_response,
329+
TestSampleData(params, im_protocol_invoke_response,
332330
"invoke_response\n"
333331
" suppress_response: false\n"
334332
" invoke_responses\n"
@@ -342,7 +340,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
342340
" status: 0 == kSuccess\n"
343341
" interaction_model_revison: 1\n");
344342

345-
TestSampleData(inSuite, params, im_protocol_invoke_request_change_channel,
343+
TestSampleData(params, im_protocol_invoke_request_change_channel,
346344
"invoke_request\n"
347345
" suppress_response: false\n"
348346
" timed_request: false\n"
@@ -356,7 +354,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
356354
" match: \"channel name\"\n"
357355
" interaction_model_revison: 1\n");
358356

359-
TestSampleData(inSuite, params, im_protocol_event_software_fault,
357+
TestSampleData(params, im_protocol_event_software_fault,
360358
"report_data\n"
361359
" event_reports\n"
362360
" Anonymous<>\n"
@@ -375,7 +373,7 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
375373
" suppress_response: true\n"
376374
" interaction_model_revison: 1\n");
377375

378-
TestSampleData(inSuite, params, im_protocol_event_multipress,
376+
TestSampleData(params, im_protocol_event_multipress,
379377
"report_data\n"
380378
" event_reports\n"
381379
" Anonymous<>\n"
@@ -394,22 +392,22 @@ void TestFullDataDecoding(nlTestSuite * inSuite, void * inContext)
394392
" interaction_model_revison: 1\n");
395393
}
396394

397-
void TestMetaDataOnlyDecoding(nlTestSuite * inSuite, void * inContext)
395+
TEST(TestDecoding, TestMetaDataOnlyDecoding)
398396
{
399397
PayloadDecoderInitParams params;
400398

401399
// NO CLUSTER DECODE TREE
402400
params.SetProtocolDecodeTree(chip::TLVMeta::protocols_meta);
403401

404-
TestSampleData(inSuite, params, secure_channel_mrp_ack, "mrp_ack: EMPTY\n");
405-
TestSampleData(inSuite, params, secure_channel_pkbdf_param_request,
402+
TestSampleData(params, secure_channel_mrp_ack, "mrp_ack: EMPTY\n");
403+
TestSampleData(params, secure_channel_pkbdf_param_request,
406404
"pbkdf_param_request\n"
407405
" initiator_random: hex:7C8698755B8E9866BB4FFDC27B733F3B6EF7F83D43FBE0CA6AD2B8C52C8F4236\n"
408406
" initiator_session_id: 37677\n"
409407
" passcode_id: 0\n"
410408
" has_pbkdf_parameters: false\n");
411409

412-
TestSampleData(inSuite, params, im_protocol_read_request,
410+
TestSampleData(params, im_protocol_read_request,
413411
"read_request\n"
414412
" attribute_requests\n"
415413
" Anonymous<>\n"
@@ -444,7 +442,7 @@ void TestMetaDataOnlyDecoding(nlTestSuite * inSuite, void * inContext)
444442
" attribute_id: 3\n"
445443
" fabric_filtered: false\n"
446444
" interaction_model_revison: 1\n");
447-
TestSampleData(inSuite, params, im_protocol_report_data,
445+
TestSampleData(params, im_protocol_report_data,
448446
"report_data\n"
449447
" attribute_reports\n"
450448
" Anonymous<>\n"
@@ -515,7 +513,7 @@ void TestMetaDataOnlyDecoding(nlTestSuite * inSuite, void * inContext)
515513
" interaction_model_revison: 1\n");
516514

517515
// Different content
518-
TestSampleData(inSuite, params, im_protocol_report_data_acl,
516+
TestSampleData(params, im_protocol_report_data_acl,
519517
"report_data\n"
520518
" attribute_reports\n"
521519
" Anonymous<>\n"
@@ -530,14 +528,14 @@ void TestMetaDataOnlyDecoding(nlTestSuite * inSuite, void * inContext)
530528
" interaction_model_revison: 1\n");
531529
}
532530

533-
void TestEmptyClusterMetaDataDecode(nlTestSuite * inSuite, void * inContext)
531+
TEST(TestDecoding, TestEmptyClusterMetaDataDecode)
534532
{
535533
PayloadDecoderInitParams params;
536534

537535
params.SetProtocolDecodeTree(chip::TLVMeta::protocols_meta).SetClusterDecodeTree(empty_meta);
538536

539-
TestSampleData(inSuite, params, secure_channel_mrp_ack, "mrp_ack: EMPTY\n");
540-
TestSampleData(inSuite, params, im_protocol_report_data_acl,
537+
TestSampleData(params, secure_channel_mrp_ack, "mrp_ack: EMPTY\n");
538+
TestSampleData(params, im_protocol_report_data_acl,
541539
"report_data\n"
542540
" attribute_reports\n"
543541
" Anonymous<>\n"
@@ -559,24 +557,24 @@ void TestEmptyClusterMetaDataDecode(nlTestSuite * inSuite, void * inContext)
559557
" interaction_model_revison: 1\n");
560558
}
561559

562-
void TestMissingDecodeData(nlTestSuite * inSuite, void * inContext)
560+
TEST(TestDecoding, TestMissingDecodeData)
563561
{
564562
PayloadDecoderInitParams params;
565563

566564
params.SetProtocolDecodeTree(empty_meta).SetClusterDecodeTree(empty_meta);
567565

568-
TestSampleData(inSuite, params, secure_channel_mrp_ack, "PROTO(0x0, 0x10): UNKNOWN\n");
569-
TestSampleData(inSuite, params, im_protocol_report_data_acl, "PROTO(0x1, 0x5): UNKNOWN\n");
566+
TestSampleData(params, secure_channel_mrp_ack, "PROTO(0x0, 0x10): UNKNOWN\n");
567+
TestSampleData(params, im_protocol_report_data_acl, "PROTO(0x1, 0x5): UNKNOWN\n");
570568
}
571569

572-
void TestWrongDecodeData(nlTestSuite * inSuite, void * inContext)
570+
TEST(TestDecoding, TestWrongDecodeData)
573571
{
574572
PayloadDecoderInitParams params;
575573

576574
params.SetProtocolDecodeTree(fake_protocols_meta).SetClusterDecodeTree(empty_meta);
577575

578-
TestSampleData(inSuite, params, secure_channel_mrp_ack, "proto16: EMPTY\n");
579-
TestSampleData(inSuite, params, im_protocol_report_data_acl,
576+
TestSampleData(params, secure_channel_mrp_ack, "proto16: EMPTY\n");
577+
TestSampleData(params, im_protocol_report_data_acl,
580578
"proto5\n"
581579
" ContextTag(0x1)\n"
582580
" AnonymousTag()\n"
@@ -598,7 +596,7 @@ void TestWrongDecodeData(nlTestSuite * inSuite, void * inContext)
598596
" ContextTag(0xFF): 1\n");
599597
}
600598

601-
void TestNestingOverflow(nlTestSuite * inSuite, void * inContext)
599+
TEST(TestDecoding, TestNestingOverflow)
602600
{
603601
PayloadDecoderInitParams params;
604602
params.SetProtocolDecodeTree(fake_protocols_meta).SetClusterDecodeTree(empty_meta);
@@ -611,65 +609,62 @@ void TestNestingOverflow(nlTestSuite * inSuite, void * inContext)
611609
chip::TLV::TLVType unusedType;
612610

613611
// Protocols start with an anonymous tagged structure, after which lists can be of any tags
614-
NL_TEST_ASSERT(inSuite, writer.StartContainer(AnonymousTag(), kTLVType_Structure, unusedType) == CHIP_NO_ERROR);
612+
EXPECT_EQ(writer.StartContainer(AnonymousTag(), kTLVType_Structure, unusedType), CHIP_NO_ERROR);
615613

616614
// nesting overflow here
617615
for (uint8_t i = 0; i < 32; i++)
618616
{
619-
NL_TEST_ASSERT(inSuite, writer.StartContainer(ContextTag(i), kTLVType_List, unusedType) == CHIP_NO_ERROR);
617+
EXPECT_EQ(writer.StartContainer(ContextTag(i), kTLVType_List, unusedType), CHIP_NO_ERROR);
620618
}
621619
// Go back to 24 (still too much nesting)
622620
for (uint8_t i = 0; i < 8; i++)
623621
{
624-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_List) == CHIP_NO_ERROR);
622+
EXPECT_EQ(writer.EndContainer(kTLVType_List), CHIP_NO_ERROR);
625623
}
626624
for (uint8_t i = 0; i < 4; i++)
627625
{
628-
NL_TEST_ASSERT(
629-
inSuite, writer.StartContainer(ContextTag(static_cast<uint8_t>(i + 0x10)), kTLVType_List, unusedType) == CHIP_NO_ERROR);
626+
EXPECT_EQ(writer.StartContainer(ContextTag(static_cast<uint8_t>(i + 0x10)), kTLVType_List, unusedType), CHIP_NO_ERROR);
630627
}
631628
for (uint8_t i = 0; i < 4; i++)
632629
{
633-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_List) == CHIP_NO_ERROR);
630+
EXPECT_EQ(writer.EndContainer(kTLVType_List), CHIP_NO_ERROR);
634631
}
635632
// Go back to 8
636633
for (uint8_t i = 0; i < 16; i++)
637634
{
638-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_List) == CHIP_NO_ERROR);
635+
EXPECT_EQ(writer.EndContainer(kTLVType_List), CHIP_NO_ERROR);
639636
}
640637
for (uint8_t i = 0; i < 4; i++)
641638
{
642-
NL_TEST_ASSERT(
643-
inSuite, writer.StartContainer(ContextTag(static_cast<uint8_t>(i + 0x20)), kTLVType_List, unusedType) == CHIP_NO_ERROR);
639+
EXPECT_EQ(writer.StartContainer(ContextTag(static_cast<uint8_t>(i + 0x20)), kTLVType_List, unusedType), CHIP_NO_ERROR);
644640
}
645641
for (uint8_t i = 0; i < 4; i++)
646642
{
647-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_List) == CHIP_NO_ERROR);
643+
EXPECT_EQ(writer.EndContainer(kTLVType_List), CHIP_NO_ERROR);
648644
}
649645
// Go back to 4
650646
for (uint8_t i = 0; i < 4; i++)
651647
{
652-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_List) == CHIP_NO_ERROR);
648+
EXPECT_EQ(writer.EndContainer(kTLVType_List), CHIP_NO_ERROR);
653649
}
654650
for (uint8_t i = 0; i < 4; i++)
655651
{
656-
NL_TEST_ASSERT(
657-
inSuite, writer.StartContainer(ContextTag(static_cast<uint8_t>(i + 0x30)), kTLVType_List, unusedType) == CHIP_NO_ERROR);
652+
EXPECT_EQ(writer.StartContainer(ContextTag(static_cast<uint8_t>(i + 0x30)), kTLVType_List, unusedType), CHIP_NO_ERROR);
658653
}
659654
for (uint8_t i = 0; i < 4; i++)
660655
{
661-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_List) == CHIP_NO_ERROR);
656+
EXPECT_EQ(writer.EndContainer(kTLVType_List), CHIP_NO_ERROR);
662657
}
663658
// close everything
664659
for (uint8_t i = 0; i < 4; i++)
665660
{
666-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_List) == CHIP_NO_ERROR);
661+
EXPECT_EQ(writer.EndContainer(kTLVType_List), CHIP_NO_ERROR);
667662
}
668-
NL_TEST_ASSERT(inSuite, writer.EndContainer(kTLVType_Structure) == CHIP_NO_ERROR);
663+
EXPECT_EQ(writer.EndContainer(kTLVType_Structure), CHIP_NO_ERROR);
669664

670665
SamplePayload fake_payload{ chip::Protocols::InteractionModel::Id, 5, chip::ByteSpan(data_buffer, writer.GetLengthWritten()) };
671666

672-
TestSampleData(inSuite, params, fake_payload,
667+
TestSampleData(params, fake_payload,
673668
"proto5\n"
674669
" ContextTag(0x0)\n"
675670
" ContextTag(0x1)\n"
@@ -696,24 +691,4 @@ void TestNestingOverflow(nlTestSuite * inSuite, void * inContext)
696691
" ContextTag(0x32)\n"
697692
" ContextTag(0x33)\n");
698693
}
699-
700-
const nlTest sTests[] = {
701-
NL_TEST_DEF("TestFullDataDecoding", TestFullDataDecoding), //
702-
NL_TEST_DEF("TestMetaDataOnlyDecoding", TestMetaDataOnlyDecoding), //
703-
NL_TEST_DEF("TestEmptyClusterMetaDataDecode", TestEmptyClusterMetaDataDecode), //
704-
NL_TEST_DEF("TestMissingDecodeData", TestMissingDecodeData), //
705-
NL_TEST_DEF("TestWrongDecodeData", TestWrongDecodeData), //
706-
NL_TEST_DEF("TestNestingOverflow", TestNestingOverflow), //
707-
NL_TEST_SENTINEL() //
708-
};
709-
710694
} // namespace
711-
712-
int TestDecode()
713-
{
714-
nlTestSuite theSuite = { "TestDecode", sTests, nullptr, nullptr };
715-
nlTestRunner(&theSuite, nullptr);
716-
return nlTestRunnerStats(&theSuite);
717-
}
718-
719-
CHIP_REGISTER_TEST_SUITE(TestDecode)

0 commit comments

Comments
 (0)