chore: release v0.21.3
This commit is contained in:
@@ -55,8 +55,8 @@ func TestScanSingleFreqResponse(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestScanSkipsEchoAndKeepsPartial(t *testing.T) {
|
||||
echo := Frame(0x98, AddrController, CmdReadFreq) // our outgoing (echoed back)
|
||||
resp := Frame(AddrController, 0x98, CmdReadMode, ModeCW, 0x01) // a real response
|
||||
echo := Frame(0x98, AddrController, CmdReadFreq) // our outgoing (echoed back)
|
||||
resp := Frame(AddrController, 0x98, CmdReadMode, ModeCW, 0x01) // a real response
|
||||
buf := append(append([]byte{}, echo...), resp...)
|
||||
buf = append(buf, 0xFE, 0xFE, 0x98) // a partial third frame (no FD yet)
|
||||
|
||||
@@ -130,3 +130,35 @@ func TestModelName(t *testing.T) {
|
||||
t.Errorf("ModelName(0x12) = %q, want fallback", got)
|
||||
}
|
||||
}
|
||||
|
||||
// CI-V addresses are hardware constants: a wrong one means the console shows the
|
||||
// wrong model, and with it the wrong attenuator steps (6/12/18 dB on the big
|
||||
// rigs, a single 20 dB on the small ones) — buttons the rig then NAKs.
|
||||
//
|
||||
// Two entries here were previously wrong in a way that pointed at each other:
|
||||
// 0x80 was labelled IC-7800 (it is the IC-7410) and 0x88 IC-7700 (it is the
|
||||
// IC-7100), while the real IC-7800 (0x6A) and IC-7700 (0x74) were missing — so an
|
||||
// IC-7800 came up as "Icom (0x6A)" with a 20 dB attenuator it does not have.
|
||||
func TestModelNameAddresses(t *testing.T) {
|
||||
for addr, want := range map[byte]string{
|
||||
0x6A: "IC-7800",
|
||||
0x74: "IC-7700",
|
||||
0x7A: "IC-7600",
|
||||
0x7C: "IC-9100",
|
||||
0x80: "IC-7410",
|
||||
0x88: "IC-7100",
|
||||
0x8E: "IC-7851",
|
||||
0x94: "IC-7300",
|
||||
0x98: "IC-7610",
|
||||
0xA2: "IC-9700",
|
||||
0xA4: "IC-705",
|
||||
} {
|
||||
if got := ModelName(addr); got != want {
|
||||
t.Errorf("ModelName(0x%02X) = %q, want %q", addr, got, want)
|
||||
}
|
||||
}
|
||||
// An unknown address must stay identifiable rather than masquerade as a model.
|
||||
if got := ModelName(0x42); got != "Icom (0x42)" {
|
||||
t.Errorf("ModelName(0x42) = %q, want the hex fallback", got)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user