feat: add display UI with splash screen, dashboard, and RSSI sparkline
Implement full SSD1306 OLED display support: - Splash screen on boot (1.5s) with project name, version, board - Dashboard showing radio state, config, counters, RSSI/SNR - RSSI history sparkline (64-sample ring buffer, 2px-wide bars) - DisplayOn/DisplayOff host commands routed via dedicated channel - Pure render functions against generic DrawTarget (no hardware coupling) - Display on/off control bypasses radio task entirely Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
17624 files changed
+4564928
-38
No files matched your search
+48
@@ -0,0 +1,48 @@
|
||||
use serde_json::Value;
|
||||
|
||||
macro_rules! bad {
|
||||
($toml:expr, $msg:expr) => {
|
||||
match basic_toml::from_str::<Value>($toml) {
|
||||
Ok(s) => panic!("parsed to: {:#?}", s),
|
||||
Err(e) => assert_eq!(e.to_string(), $msg),
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn bad() {
|
||||
bad!("a = 01", "invalid number at line 1 column 6");
|
||||
bad!("a = 1__1", "invalid number at line 1 column 5");
|
||||
bad!("a = 1_", "invalid number at line 1 column 5");
|
||||
bad!("''", "expected an equals, found eof at line 1 column 3");
|
||||
bad!("a = 9e99999", "invalid number at line 1 column 5");
|
||||
|
||||
bad!(
|
||||
"a = \"\u{7f}\"",
|
||||
"invalid character in string: `\\u{7f}` at line 1 column 6"
|
||||
);
|
||||
bad!(
|
||||
"a = '\u{7f}'",
|
||||
"invalid character in string: `\\u{7f}` at line 1 column 6"
|
||||
);
|
||||
|
||||
bad!("a = -0x1", "invalid number at line 1 column 5");
|
||||
bad!("a = 0x-1", "invalid number at line 1 column 7");
|
||||
|
||||
// Dotted keys.
|
||||
bad!(
|
||||
"a.b.c = 1
|
||||
a.b = 2
|
||||
",
|
||||
"duplicate key: `b` for key `a` at line 2 column 12"
|
||||
);
|
||||
bad!(
|
||||
"a = 1
|
||||
a.b = 2",
|
||||
"dotted key attempted to extend non-table type at line 1 column 5"
|
||||
);
|
||||
bad!(
|
||||
"a = {k1 = 1, k1.name = \"joe\"}",
|
||||
"dotted key attempted to extend non-table type at line 1 column 11"
|
||||
);
|
||||
}
|
||||
Reference in new issue
Block a user