diff --git a/src/helpers/CommonCLI.cpp b/src/helpers/CommonCLI.cpp index 6832a9b0b..9cc0b09fe 100644 --- a/src/helpers/CommonCLI.cpp +++ b/src/helpers/CommonCLI.cpp @@ -3451,11 +3451,11 @@ bool CommonCLI::handleEspNowDiagnosticCommand(uint32_t sender_timestamp, const char* page = command + 16; if (*page == 0) { _callbacks->formatEspNowStats("", reply, capacity); - } else if (strcmp(page, " rx") == 0 || strcmp(page, " tx") == 0 + } else if (strcmp(page, " mac") == 0 || strcmp(page, " rx") == 0 || strcmp(page, " tx") == 0 || strcmp(page, " drops") == 0 || strcmp(page, " test") == 0) { _callbacks->formatEspNowStats(page + 1, reply, capacity); } else { - mesh::cli::formatError(reply, capacity, "use get espnow.stats [rx|tx|drops|test]"); + mesh::cli::formatError(reply, capacity, "use get espnow.stats [mac|rx|tx|drops|test]"); } return true; } diff --git a/src/helpers/bridges/ESPNowBridge.cpp b/src/helpers/bridges/ESPNowBridge.cpp index d7b866c00..1a87af096 100644 --- a/src/helpers/bridges/ESPNowBridge.cpp +++ b/src/helpers/bridges/ESPNowBridge.cpp @@ -919,7 +919,7 @@ void ESPNowBridge::formatStatus(char* reply, size_t reply_size) { void ESPNowBridge::formatStats(const char* page, char* reply, size_t reply_size) { const auto s = snapshotStats(); if (page == nullptr || page[0] == 0) { - snprintf(reply, reply_size, "> rx=%lu mesh=%lu tx=%lu sent=%lu; pages: rx tx drops test", + snprintf(reply, reply_size, "> rx=%lu mesh=%lu tx=%lu sent=%lu; pages: mac rx tx drops test", (unsigned long)s.rx.frames, (unsigned long)s.rx.delivered, (unsigned long)s.tx.queued, (unsigned long)s.tx.callback_ok); } else if (strcmp(page, "mac") == 0) { @@ -953,7 +953,7 @@ void ESPNowBridge::formatStats(const char* page, char* reply, size_t reply_size) (unsigned long)s.probe.rx_bad, (unsigned long)s.probe.last_tx_nonce, (unsigned long)s.probe.last_rx_nonce); } else { - snprintf(reply, reply_size, "Error: use get espnow.stats [rx|tx|drops|test]"); + snprintf(reply, reply_size, "Error: use get espnow.stats [mac|rx|tx|drops|test]"); } } diff --git a/test/test_espnow_diagnostic_cli.py b/test/test_espnow_diagnostic_cli.py index 4ed5ddf45..6956e18a6 100644 --- a/test/test_espnow_diagnostic_cli.py +++ b/test/test_espnow_diagnostic_cli.py @@ -87,7 +87,7 @@ int main() { }; assert(command("get espnow.status", 77)); assert(callbacks.statuses == 1 && callbacks.capacity == 157); - for (const char* page : {"", "rx", "tx", "drops", "test"}) { + for (const char* page : {"", "mac", "rx", "tx", "drops", "test"}) { const std::string text = std::string("get espnow.stats") + (*page ? " " : "") + page; assert(command(text.c_str(), 77)); assert(callbacks.page == page && callbacks.capacity == 157); @@ -101,6 +101,8 @@ int main() { for (const char* text : { "get espnow.status extra", "get espnow.statusx", "get espnow.status ", "get espnow.statsrx", "get espnow.stats x", "get espnow.stats rx junk", + "get espnow.statsmac", "get espnow.stats macx", "get espnow.stats mac junk", + "get espnow.stats mac ", "get espnow.stats\tmac", "get espnow.stats mac", "get espnow.stats ", "get espnow.stats\trx", "get espnow.stats rx", "espnow", "espnow testx", "espnow test ", "espnow test 1234567", "espnow test 123456789", "espnow test 0x123456", "espnow test +1234567", @@ -110,6 +112,8 @@ int main() { assert(command(text)); assert(strncmp(reply, "Error:", 6) == 0 && callbacks.count() == before); } + assert(command("get espnow.stats unknown")); + assert(strstr(reply, "[mac|rx|tx|drops|test]")); for (const char* text : {"espnowtest", "espnowx test", "get espnow.enabled", "get repeat"}) { const int before = callbacks.count(); assert(!command(text));