| 86 | |
| 87 | #[test] |
| 88 | fn test_response() { |
| 89 | let tests = vec![ |
| 90 | Test { |
| 91 | name: "acked, nothing pending".into(), |
| 92 | device_session: internal::DeviceSession::default(), |
| 93 | end_device_conf_req: None, |
| 94 | end_device_conf_ans: lrwn::MACCommandSet::new(vec![ |
| 95 | lrwn::MACCommand::EndDeviceConfAns(lrwn::EndDeviceConfAnsPayload { |
| 96 | second_ch_freq_ack: true, |
| 97 | second_ch_dr_ack: true, |
| 98 | second_ch_idx_ack: true, |
| 99 | backoff_ack: true, |
| 100 | }), |
| 101 | ]), |
| 102 | expected_device_session: internal::DeviceSession::default(), |
| 103 | expected_error: Some("Expected pending EndDeviceConfReq mac-command".into()), |
| 104 | }, |
| 105 | Test { |
| 106 | name: "ackend".into(), |
| 107 | device_session: internal::DeviceSession::default(), |
| 108 | end_device_conf_req: Some(lrwn::MACCommandSet::new(vec![ |
| 109 | lrwn::MACCommand::EndDeviceConfReq(lrwn::EndDeviceConfReqPayload { |
| 110 | activation_relay_mode: lrwn::ActivationRelayMode { |
| 111 | relay_mode_activation: lrwn::RelayModeActivation::EnableRelayMode, |
| 112 | smart_enable_level: 2, |
| 113 | }, |
| 114 | channel_settings_ed: lrwn::ChannelSettingsED { |
| 115 | second_ch_ack_offset: 3, |
| 116 | second_ch_dr: 4, |
| 117 | second_ch_idx: 1, |
| 118 | backoff: 5, |
| 119 | }, |
| 120 | second_ch_freq: 868300000, |
| 121 | }), |
| 122 | ])), |
| 123 | end_device_conf_ans: lrwn::MACCommandSet::new(vec![ |
| 124 | lrwn::MACCommand::EndDeviceConfAns(lrwn::EndDeviceConfAnsPayload { |
| 125 | second_ch_freq_ack: true, |
| 126 | second_ch_dr_ack: true, |
| 127 | second_ch_idx_ack: true, |
| 128 | backoff_ack: true, |
| 129 | }), |
| 130 | ]), |
| 131 | expected_device_session: internal::DeviceSession { |
| 132 | relay: Some(internal::Relay { |
| 133 | ed_activation_mode: 1, |
| 134 | ed_smart_enable_level: 2, |
| 135 | second_channel_ack_offset: 3, |
| 136 | second_channel_dr: 4, |
| 137 | ed_back_off: 5, |
| 138 | second_channel_freq: 868300000, |
| 139 | ..Default::default() |
| 140 | }), |
| 141 | ..Default::default() |
| 142 | }, |
| 143 | expected_error: None, |
| 144 | }, |
| 145 | Test { |