| 195 | } |
| 196 | |
| 197 | void testReset() |
| 198 | { |
| 199 | lm::packet pkt("N0CALL", "APRS", {}, ">Reset test"); |
| 200 | auto nrzi = makeNrziBitstream(pkt); |
| 201 | |
| 202 | HdlcCodec codec; |
| 203 | feedBits(codec, nrzi); |
| 204 | |
| 205 | codec.reset(); |
| 206 | |
| 207 | report("reset: searching after reset", codec.searching()); |
| 208 | report("reset: not complete after reset", !codec.complete()); |
| 209 | report("reset: zero frame size after reset", codec.frameSize() == 0); |
| 210 | |
| 211 | // Should decode again after reset. |
| 212 | auto r = feedBits(codec, nrzi); |
| 213 | report("reset: decodes again after reset", r.goodFcs == 1); |
| 214 | } |
| 215 | |
| 216 | void testStateTransitions() |
| 217 | { |