From 8edef5c4a04527a44d3a68688c7edfc5dee01a5f Mon Sep 17 00:00:00 2001 From: mikecarper Date: Sat, 26 Sep 2026 22:50:54 -0700 Subject: [PATCH] Refresh CLI test contracts for backup and retry controls --- test/test_cli_settings_contract.py | 1 + test/test_local_cli_access.py | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/test/test_cli_settings_contract.py b/test/test_cli_settings_contract.py index 0339b2fca..16d2fb65c 100644 --- a/test/test_cli_settings_contract.py +++ b/test/test_cli_settings_contract.py @@ -191,6 +191,7 @@ class CLISettingsContractTest(unittest.TestCase): 'contact.cache', 'contact.cache.timing', # Contact-storage diagnostics 'display.wifi', # Connection/display status 'flash.health', # Read-only flash health diagnostics + 'key.backup.transport', # Identity-backup transport capability 'mqtt', 'mqtt.running', # MQTT connection status 'password', 'prv.key', # Local secret/identity reads 'pwrmgt.bootreason', 'role', # Boot/build facts diff --git a/test/test_local_cli_access.py b/test/test_local_cli_access.py index 3a30ae8b5..6cc76bc03 100644 --- a/test/test_local_cli_access.py +++ b/test/test_local_cli_access.py @@ -38,6 +38,12 @@ struct RadioProfileCLI { void appendSavedPreamble(char*, size_t, uint8_t, float) {} void appendPrimaryChirpWarning(char*, size_t, uint8_t, float, uint16_t) const {} }; +namespace companion { +// Retry settings have their own test harness; this one exercises local/remote +// dispatch around that branch of the production command handler. +template +bool handleRetryCommand(Prefs&, const char*, char*, size_t, Save, Cancel) { return false; } +} struct Packet {}; void resetLazyPersistenceAfterSuccess(unsigned& when, uint8_t& failures) { when=0; failures=0; } struct Utils { @@ -125,6 +131,7 @@ struct MyMesh { return false; } void stopContactsIterator(){} + void cancelAllFloodRetries(){} void resetContacts(){++resets;} bool savePrefs(){++saves;return save_ok;} int getTotalAirTime(){return 0;}