[tests] initialize DNS browser and resolver in nexus tests (#12847)

In nexus tests, DNS browser and resolver objects must be initialized
using ClearAllBytes before use to ensure predictable behavior.

This commit adds missing ClearAllBytes calls for:
- Dns::Multicast::Core::Browser
- Dns::Multicast::Core::TxtResolver
- Dns::Multicast::Core::SrvResolver
- Dns::Multicast::Core::AddressResolver

In test_1_3_SRP_TC_4.cpp, ClearAllBytes is now called before browser
reuse in Step 19.

Redundant includes of common/clearable.hpp were removed as it is
available transitively.

A blank line was added after Browser declarations for consistency.
This commit is contained in:
Jonathan Hui
2026-04-06 23:44:20 -05:00
committed by GitHub
parent f8af79817b
commit ac01d4b132
12 changed files with 33 additions and 5 deletions
+3
View File
@@ -176,6 +176,8 @@ void Test_1_3_GEN_TC_2(const char *aJsonFileName)
*/
Log("Step 2: Eth_1 sends mDNS PTR query for _meshcop._udp.local.");
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const Dns::Multicast::Core::BrowseResult *) {};
browser.mServiceType = kMeshCoPServiceType;
browser.mInfraIfIndex = kInfraIfIndex;
@@ -202,6 +204,7 @@ void Test_1_3_GEN_TC_2(const char *aJsonFileName)
Dns::Multicast::Core::TxtResolver resolver;
char serviceInstance[64];
ClearAllBytes(resolver);
snprintf(serviceInstance, sizeof(serviceInstance), "OpenThread%s",
br1.Get<Mac::Mac>().GetExtAddress().ToString().AsCString());
+2
View File
@@ -285,6 +285,7 @@ void Test_1_3_SRP_TC_1(const char *aJsonFileName)
Log("Step 8: Eth 1 sends mDNS query QType=PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -463,6 +464,7 @@ void Test_1_3_SRP_TC_1(const char *aJsonFileName)
Log("Step 14: Eth 1 sends mDNS query QType=PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
-2
View File
@@ -32,8 +32,6 @@
#include "platform/nexus_core.hpp"
#include "platform/nexus_node.hpp"
#include "common/clearable.hpp"
namespace ot {
namespace Nexus {
+8
View File
@@ -242,6 +242,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
Log("Step 8: Eth 1 sends mDNS query QType PTR for service type");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -307,6 +308,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
snprintf(subServiceType, sizeof(subServiceType), "%s._sub.%s", kSrpSubtype1, kSrpServiceType);
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = subServiceType;
@@ -374,6 +376,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
snprintf(subServiceType, sizeof(subServiceType), "%s._sub.%s", kSrpSubtype2, kSrpServiceType);
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = subServiceType;
@@ -412,6 +415,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
snprintf(subServiceType, sizeof(subServiceType), "%s._sub.%s", kSrpSubtype1, kSrpServiceType);
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = subServiceType;
@@ -441,6 +445,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
Log("Step 20: Eth 1 sends mDNS query QType PTR for the parent service type");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -474,6 +479,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
snprintf(subServiceType, sizeof(subServiceType), "%s._sub.%s", kSrpSubtypeInvalid, kSrpServiceType);
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = subServiceType;
@@ -538,6 +544,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
snprintf(subServiceType, sizeof(subServiceType), "%s._sub.%s", kSrpSubtype2, kSrpServiceType);
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = subServiceType;
@@ -570,6 +577,7 @@ void Test_1_3_SRP_TC_15(const char *aJsonFileName)
snprintf(subServiceType, sizeof(subServiceType), "%s._sub.%s", kSrpSubtype1, kSrpServiceType);
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = subServiceType;
+3
View File
@@ -251,6 +251,7 @@ void Test_1_3_SRP_TC_2(const char *aJsonFileName)
Log("Step 8: Eth 1 performs mDNS query QType PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -372,6 +373,7 @@ void Test_1_3_SRP_TC_2(const char *aJsonFileName)
Log("Step 12: Eth 1 repeats mDNS query QType PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -459,6 +461,7 @@ void Test_1_3_SRP_TC_2(const char *aJsonFileName)
Log("Step 16: Eth 1 performs mDNS query QType PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
+2
View File
@@ -370,6 +370,7 @@ void Test_1_3_SRP_TC_3(const char *aJsonFileName)
Log("Step 16: Eth 1 sends mDNS query QType PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -494,6 +495,7 @@ void Test_1_3_SRP_TC_3(const char *aJsonFileName)
Log("Step 25: Eth 1 sends mDNS query QType PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
+5 -1
View File
@@ -369,7 +369,7 @@ void Test_1_3_SRP_TC_4(const char *aJsonFileName)
{
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = "_thread-test._udp";
browser.mServiceType = kSrpServiceType;
browser.mInfraIfIndex = kInfraIfIndex;
SuccessOrQuit(eth1.Get<Dns::Multicast::Core>().StartBrowser(browser));
}
@@ -408,6 +408,10 @@ void Test_1_3_SRP_TC_4(const char *aJsonFileName)
* - N/A
*/
Log("Step 19: Eth 1 sends mDNS query QType PTR.");
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
browser.mInfraIfIndex = kInfraIfIndex;
SuccessOrQuit(eth1.Get<Dns::Multicast::Core>().StartBrowser(browser));
nexus.AdvanceTime(kDnsQueryTime);
+2
View File
@@ -244,6 +244,7 @@ void Test_1_3_SRP_TC_5(const char *aJsonFileName)
Log("Step 8: Eth_1 send mDNS QType=PTR query.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -306,6 +307,7 @@ void Test_1_3_SRP_TC_5(const char *aJsonFileName)
Log("Step 10.8: Eth_1 send mDNS QType=PTR query.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
+2
View File
@@ -236,6 +236,7 @@ void Test_1_3_SRP_TC_6(const char *aJsonFileName)
Log("Step 8: Eth 1 sends mDNS query QType=PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
@@ -331,6 +332,7 @@ void Test_1_3_SRP_TC_6(const char *aJsonFileName)
Log("Step 8 (Repeat): Eth 1 sends mDNS query QType=PTR.");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
+1 -2
View File
@@ -32,8 +32,6 @@
#include "platform/nexus_core.hpp"
#include "platform/nexus_node.hpp"
#include "common/clearable.hpp"
namespace ot {
namespace Nexus {
@@ -453,6 +451,7 @@ void Test_1_3_SRP_TC_8(const char *aJsonFileName)
Log("Step 24: Eth 1 sends mDNS query PTR for services");
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = [](otInstance *, const otPlatDnssdBrowseResult *) {};
browser.mServiceType = kSrpServiceType;
+4
View File
@@ -201,6 +201,7 @@ static void DiscoverMeshcopEService(Node &aCommNode, Core &aNexus, Ip6::Address
sBrowseOutcomes.Clear();
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mServiceType = "_meshcop-e._udp";
browser.mInfraIfIndex = kInfraIfIndex;
@@ -350,6 +351,7 @@ void Test1_4_CS_TC_3(void)
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mServiceType = "_meshcop._udp";
browser.mInfraIfIndex = kInfraIfIndex;
@@ -604,6 +606,7 @@ void Test1_4_CS_TC_3(void)
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mServiceType = "_meshcop-e._udp";
browser.mInfraIfIndex = kInfraIfIndex;
@@ -893,6 +896,7 @@ void Test1_4_CS_TC_3(void)
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mServiceType = "_meshcop-e._udp";
browser.mInfraIfIndex = kInfraIfIndex;
+1
View File
@@ -153,6 +153,7 @@ void Test_1_4_TREL_TC_6(void)
SuccessOrQuit(eth1.Get<Dns::Multicast::Core>().SetEnabled(true, kInfraIfIndex));
{
Dns::Multicast::Core::Browser browser;
ClearAllBytes(browser);
browser.mCallback = HandleBrowseResult;
browser.mServiceType = "_trel._udp";