mirror of https://github.com/ARMmbed/mbed-os.git
Fix unit tests
Fix compilation failures caused by lorawan api changes introduced by Class B support.feature-lorawan-1-1
parent
663c94e13d
commit
0cca8f0ed9
|
@ -363,7 +363,7 @@ TEST_F(Test_LoRaMac, on_radio_rx_done)
|
|||
{
|
||||
uint8_t buf[16];
|
||||
memset(buf, 0, sizeof(buf));
|
||||
object->on_radio_rx_done(buf, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(buf, 16, 0, 0, 0, my_cb);
|
||||
}
|
||||
|
||||
TEST_F(Test_LoRaMac, on_radio_tx_timeout)
|
||||
|
@ -443,13 +443,13 @@ TEST_F(Test_LoRaMac, post_process_mcps_req)
|
|||
|
||||
//address != _params.dev_addr
|
||||
payload[2] = 2;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
object->post_process_mcps_req();
|
||||
|
||||
payload[2] = 0;
|
||||
//mic failure
|
||||
payload[13] = 2;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
object->post_process_mcps_req();
|
||||
|
||||
payload[13] = 0;
|
||||
|
@ -458,7 +458,7 @@ TEST_F(Test_LoRaMac, post_process_mcps_req)
|
|||
LoRaMacCrypto_stub::int_table[0] = 4;
|
||||
LoRaMacCrypto_stub::int_table[1] = 4;
|
||||
// LoRaPHY_stub::uint16_value = 0;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
object->post_process_mcps_req();
|
||||
|
||||
//process_mac_commands failure
|
||||
|
@ -466,7 +466,7 @@ TEST_F(Test_LoRaMac, post_process_mcps_req)
|
|||
LoRaMacCrypto_stub::int_table[0] = 0;
|
||||
LoRaMacCrypto_stub::int_table[1] = 0;
|
||||
payload[7] = 1;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
object->post_process_mcps_req();
|
||||
|
||||
//FOpts_len != 0
|
||||
|
@ -475,24 +475,24 @@ TEST_F(Test_LoRaMac, post_process_mcps_req)
|
|||
LoRaMacCommand_stub::status_value = LORAWAN_STATUS_OK;
|
||||
payload[0] = FRAME_TYPE_DATA_UNCONFIRMED_DOWN << 5;
|
||||
|
||||
object->on_radio_rx_done(payload, 13, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 13, 0, 0, 0, my_cb);
|
||||
|
||||
//_mac_commands.process_mac_commands fails
|
||||
LoRaMacCommand_stub::status_value = LORAWAN_STATUS_DATARATE_INVALID;
|
||||
object->on_radio_rx_done(payload, 13, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 13, 0, 0, 0, my_cb);
|
||||
|
||||
object->post_process_mcps_req();
|
||||
|
||||
payload[9] = 1;
|
||||
LoRaMacCommand_stub::status_value = LORAWAN_STATUS_OK;
|
||||
payload[0] = FRAME_TYPE_PROPRIETARY << 5;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
object->post_process_mcps_req();
|
||||
|
||||
payload[9] = 0;
|
||||
payload[5] = 1 << 5;
|
||||
LoRaMacCommand_stub::status_value = LORAWAN_STATUS_OK;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
object->post_process_mcps_req();
|
||||
|
||||
LoRaPHY_stub::bool_counter = 0;
|
||||
|
@ -524,25 +524,25 @@ TEST_F(Test_LoRaMac, handle_join_accept_frame)
|
|||
LoRaMacCrypto_stub::int_table[1] = 4;
|
||||
LoRaMacCrypto_stub::int_table[2] = 4;
|
||||
LoRaMacCrypto_stub::int_table[3] = 4;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
|
||||
LoRaMacCrypto_stub::int_table_idx_value = 0;
|
||||
LoRaMacCrypto_stub::int_table[0] = 0;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
|
||||
LoRaMacCrypto_stub::int_table_idx_value = 0;
|
||||
LoRaMacCrypto_stub::int_table[1] = 0;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
|
||||
//mic failure case
|
||||
payload[13] = 17;
|
||||
LoRaMacCrypto_stub::int_table_idx_value = 0;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
|
||||
payload[13] = 0;
|
||||
LoRaMacCrypto_stub::int_table_idx_value = 0;
|
||||
LoRaMacCrypto_stub::int_table[2] = 0;
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, my_cb);
|
||||
object->on_radio_rx_done(payload, 16, 0, 0, 0, my_cb);
|
||||
}
|
||||
|
||||
TEST_F(Test_LoRaMac, post_process_mcps_ind)
|
||||
|
|
|
@ -81,16 +81,16 @@ TEST_F(Test_LoRaMacCommand, parse_mac_commands_to_repeat)
|
|||
buf[0] = 2;
|
||||
buf[1] = 16;
|
||||
buf[2] = 32;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 3, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 3, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 3;
|
||||
LoRaPHY_stub::uint8_value = 7;
|
||||
LoRaPHY_stub::linkAdrNbBytesParsed = 5;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 4;
|
||||
buf[1] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 5;
|
||||
buf[1] = 2;
|
||||
|
@ -98,11 +98,11 @@ TEST_F(Test_LoRaMacCommand, parse_mac_commands_to_repeat)
|
|||
buf[3] = 2;
|
||||
buf[4] = 2;
|
||||
buf[5] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 6;
|
||||
object->set_batterylevel_callback(my_cb);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 7;
|
||||
buf[1] = 2;
|
||||
|
@ -110,19 +110,19 @@ TEST_F(Test_LoRaMacCommand, parse_mac_commands_to_repeat)
|
|||
buf[3] = 2;
|
||||
buf[4] = 2;
|
||||
buf[5] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 8;
|
||||
buf[1] = 0;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 9;
|
||||
buf[1] = 48;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 10;
|
||||
buf[1] = 4;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
object->parse_mac_commands_to_repeat();
|
||||
}
|
||||
|
@ -146,7 +146,7 @@ TEST_F(Test_LoRaMacCommand, copy_repeat_commands_to_buffer)
|
|||
buf[3] = 2;
|
||||
buf[4] = 2;
|
||||
buf[5] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
object->parse_mac_commands_to_repeat();
|
||||
|
||||
object->clear_command_buffer();
|
||||
|
@ -178,7 +178,7 @@ TEST_F(Test_LoRaMacCommand, clear_sticky_mac_cmd)
|
|||
buf[3] = 2;
|
||||
buf[4] = 2;
|
||||
buf[5] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
EXPECT_TRUE(object->has_sticky_mac_cmd() == true);
|
||||
|
||||
|
@ -202,7 +202,7 @@ TEST_F(Test_LoRaMacCommand, has_sticky_mac_cmd)
|
|||
buf[3] = 2;
|
||||
buf[4] = 2;
|
||||
buf[5] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
EXPECT_TRUE(object->has_sticky_mac_cmd() == true);
|
||||
}
|
||||
|
@ -213,37 +213,37 @@ TEST_F(Test_LoRaMacCommand, process_mac_commands)
|
|||
lora_mac_system_params_t params;
|
||||
my_LoRaPHY phy;
|
||||
uint8_t buf[20];
|
||||
EXPECT_TRUE(object->process_mac_commands(NULL, 0, 0, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(NULL, 0, 0, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 2;
|
||||
buf[1] = 16;
|
||||
buf[2] = 32;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 3, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 3, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
buf[0] = 3;
|
||||
LoRaPHY_stub::uint8_value = 7;
|
||||
LoRaPHY_stub::linkAdrNbBytesParsed = 5;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//Overflow add_link_adr_ans function here
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 3;
|
||||
for (int i = 0; i < 64; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 4;
|
||||
buf[1] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//Overflow add_duty_cycle_ans()
|
||||
object->clear_command_buffer();
|
||||
for (int i = 0; i < 128; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 5;
|
||||
|
@ -252,27 +252,27 @@ TEST_F(Test_LoRaMacCommand, process_mac_commands)
|
|||
buf[3] = 2;
|
||||
buf[4] = 2;
|
||||
buf[5] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//Overflow add_rx_param_setup_ans
|
||||
object->clear_command_buffer();
|
||||
LoRaPHY_stub::uint8_value = 7;
|
||||
for (int i = 0; i < 64; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 5, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 6;
|
||||
object->set_batterylevel_callback(my_cb);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//overflow add_dev_status_ans
|
||||
object->clear_command_buffer();
|
||||
for (int i = 0; i < 42; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 7;
|
||||
|
@ -281,33 +281,33 @@ TEST_F(Test_LoRaMacCommand, process_mac_commands)
|
|||
buf[3] = 2;
|
||||
buf[4] = 2;
|
||||
buf[5] = 2;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//Overflow add_new_channel_ans
|
||||
object->clear_command_buffer();
|
||||
LoRaPHY_stub::uint8_value = 7;
|
||||
for (int i = 0; i < 64; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 6, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 8;
|
||||
buf[1] = 0;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//Overflow add_rx_timing_setup_ans
|
||||
object->clear_command_buffer();
|
||||
LoRaPHY_stub::uint8_value = 7;
|
||||
for (int i = 0; i < 128; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 9;
|
||||
buf[1] = 48;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//Overflow add_tx_param_setup_ans
|
||||
LoRaPHY_stub::bool_counter = 0;
|
||||
|
@ -315,27 +315,27 @@ TEST_F(Test_LoRaMacCommand, process_mac_commands)
|
|||
object->clear_command_buffer();
|
||||
LoRaPHY_stub::uint8_value = 7;
|
||||
for (int i = 0; i < 128; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
LoRaPHY_stub::bool_counter = 0;
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 2, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 10;
|
||||
buf[1] = 4;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
|
||||
//Overflow add_dl_channel_ans
|
||||
object->clear_command_buffer();
|
||||
for (int i = 0; i < 64; i++) {
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb) == LORAWAN_STATUS_OK);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_OK);
|
||||
LoRaPHY_stub::bool_counter = 0;
|
||||
}
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 4, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_LENGTH_ERROR);
|
||||
|
||||
object->clear_command_buffer();
|
||||
buf[0] = 80;
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb) == LORAWAN_STATUS_UNSUPPORTED);
|
||||
EXPECT_TRUE(object->process_mac_commands(buf, 0, 1, 0, params, phy, my_cb, RX_SLOT_WIN_1) == LORAWAN_STATUS_UNSUPPORTED);
|
||||
}
|
||||
|
||||
TEST_F(Test_LoRaMacCommand, add_link_check_req)
|
||||
|
|
|
@ -21,6 +21,7 @@ set(TEST_SUITE_NAME "lorawan_LoRaPHY")
|
|||
# Source files
|
||||
set(unittest-sources
|
||||
../features/lorawan/lorastack/phy/LoRaPHY.cpp
|
||||
../features/lorawan/LoRaRadio.cpp
|
||||
)
|
||||
|
||||
# Add test specific include paths
|
||||
|
@ -45,5 +46,6 @@ set(unittest-test-flags
|
|||
-DMBED_CONF_LORA_NB_TRIALS=2
|
||||
-DMBED_CONF_LORA_REJOIN_DEFAULT_MAX_TIME=3600
|
||||
-DMBED_CONF_LORA_REJOIN_DEFAULT_MAX_COUNT=10
|
||||
-DMBED_CONF_LORA_BEACON_PREAMBLE_LENGTH=7
|
||||
)
|
||||
|
||||
|
|
|
@ -42,6 +42,7 @@ set(unittest-test-sources
|
|||
stubs/LoRaMacCommand_stub.cpp
|
||||
stubs/LoRaPHYEU868_stub.cpp
|
||||
stubs/Mutex_stub.cpp
|
||||
stubs/mbed_rtc_time_stub.cpp
|
||||
)
|
||||
|
||||
set(unittest-test-flags
|
||||
|
|
|
@ -54,6 +54,9 @@ set(unittest-test-flags
|
|||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DMBED_CONF_LORA_REJOIN_TYPE1_SEND_PERIOD=3600")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DMBED_CONF_LORA_REJOIN_TYPE1_SEND_PERIOD=3600")
|
||||
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DMBED_CONF_LORA_CLASS_B_BEACONLESS_PERIOD=7200")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -DMBED_CONF_LORA_CLASS_B_BEACONLESS_PERIOD=7200")
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -72,10 +72,12 @@ bool LoRaMacCommand::has_sticky_mac_cmd() const
|
|||
}
|
||||
|
||||
lorawan_status_t LoRaMacCommand::process_mac_commands(const uint8_t *payload, uint8_t mac_index,
|
||||
uint8_t commands_size, uint8_t snr,
|
||||
lora_mac_system_params_t &mac_sys_params,
|
||||
LoRaPHY &lora_phy,
|
||||
mbed::Callback<void(loramac_mlme_confirm_t &)> confirm_handler)
|
||||
uint8_t commands_size, uint8_t snr,
|
||||
lora_mac_system_params_t &mac_sys_params,
|
||||
LoRaPHY &lora_phy,
|
||||
mbed::Callback<void(loramac_mlme_confirm_t &)> confirm_handler,
|
||||
rx_slot_t rx_slot)
|
||||
|
||||
{
|
||||
return LoRaMacCommand_stub::status_value;
|
||||
}
|
||||
|
@ -109,7 +111,7 @@ lorawan_status_t LoRaMacCommand::add_device_mode_indication(uint8_t classType)
|
|||
return LoRaMacCommand_stub::status_value;
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaMacCommand::add_device_time_req(mbed::Callback<void(void)> notify)
|
||||
lorawan_status_t LoRaMacCommand::add_device_time_req(mbed::Callback<void(lorawan_gps_time_t gps_time)> notify)
|
||||
{
|
||||
return LoRaMacCommand_stub::status_value;
|
||||
}
|
||||
|
@ -153,3 +155,8 @@ lorawan_status_t LoRaMacCommand::add_dl_channel_ans(uint8_t status)
|
|||
{
|
||||
return LoRaMacCommand_stub::status_value;
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaMacCommand::add_ping_slot_info_req(uint8_t periodicity)
|
||||
{
|
||||
return LoRaMacCommand_stub::status_value;
|
||||
}
|
||||
|
|
|
@ -121,14 +121,14 @@ bool LoRaMac::message_integrity_check(const uint8_t *const payload,
|
|||
}
|
||||
|
||||
void LoRaMac::extract_data_and_mac_commands(const uint8_t *payload,
|
||||
uint16_t size,
|
||||
uint8_t fopts_len,
|
||||
uint32_t address,
|
||||
uint32_t downlink_counter,
|
||||
seq_counter_type_t cnt_type,
|
||||
int16_t rssi,
|
||||
int8_t snr,
|
||||
Callback<void(loramac_mlme_confirm_t &)> confirm_handler)
|
||||
uint16_t size,
|
||||
uint8_t fopts_len,
|
||||
uint32_t address,
|
||||
uint32_t downlink_counter,
|
||||
seq_counter_type_t cnt_type,
|
||||
int16_t rssi,
|
||||
int8_t snr,
|
||||
Callback<void(loramac_mlme_confirm_t &)> confirm_handler)
|
||||
{
|
||||
if (LoRaMac_stub::mlme_conf_ptr) {
|
||||
confirm_handler(*LoRaMac_stub::mlme_conf_ptr);
|
||||
|
@ -169,7 +169,7 @@ void LoRaMac::on_radio_tx_done(lorawan_time_t timestamp)
|
|||
}
|
||||
|
||||
void LoRaMac::on_radio_rx_done(const uint8_t *const payload, uint16_t size,
|
||||
int16_t rssi, int8_t snr,
|
||||
int16_t rssi, int8_t snr, uint32_t rx_timestamp,
|
||||
Callback<void(loramac_mlme_confirm_t &)> confirm_handler)
|
||||
{
|
||||
if (LoRaMac_stub::mlme_conf_ptr) {
|
||||
|
@ -341,16 +341,17 @@ device_class_t LoRaMac::get_device_class() const
|
|||
return LoRaMac_stub::dev_class_value;
|
||||
}
|
||||
|
||||
void LoRaMac::set_device_class(const device_class_t &device_class,
|
||||
mbed::Callback<void(void)>rx2_would_be_closure_handler)
|
||||
lorawan_status_t LoRaMac::set_device_class(const device_class_t &device_class,
|
||||
mbed::Callback<void(void)>rx2_would_be_closure_handler)
|
||||
{
|
||||
return LoRaMac_stub::status_value;
|
||||
}
|
||||
|
||||
void LoRaMac::setup_link_check_request()
|
||||
{
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaMac::setup_device_time_request(mbed::Callback<void(void)> notify)
|
||||
lorawan_status_t LoRaMac::setup_device_time_request(mbed::Callback<void(lorawan_gps_time_t gps_time)> notify)
|
||||
{
|
||||
return LoRaMac_stub::status_value;
|
||||
}
|
||||
|
@ -506,3 +507,34 @@ lorawan_status_t LoRaMac::rejoin(join_req_type_t rejoin_type, bool is_forced, ui
|
|||
{
|
||||
return LoRaMac_stub::status_value;
|
||||
}
|
||||
|
||||
lorawan_gps_time_t LoRaMac::get_gps_time(void)
|
||||
{
|
||||
return _lora_time.get_gps_time();
|
||||
}
|
||||
|
||||
void LoRaMac::set_gps_time(lorawan_gps_time_t gps_time)
|
||||
{
|
||||
_lora_time.set_gps_time(gps_time);
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaMac::add_ping_slot_info_req()
|
||||
{
|
||||
return LoRaMac_stub::status_value;
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaMac::enable_beacon_acquisition(mbed::Callback<void(loramac_beacon_status_t,
|
||||
const loramac_beacon_t *)>beacon_event_cb)
|
||||
{
|
||||
return LoRaMac_stub::status_value;
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaMac::get_last_rx_beacon(loramac_beacon_t &beacon)
|
||||
{
|
||||
return LoRaMac_stub::status_value;
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaMac::set_ping_slot_info(uint8_t periodicity)
|
||||
{
|
||||
return LoRaMac_stub::status_value;
|
||||
}
|
|
@ -305,3 +305,36 @@ void LoRaWANStack::process_idle_state(lorawan_status_t &op_status)
|
|||
void LoRaWANStack::process_uninitialized_state(lorawan_status_t &op_status)
|
||||
{
|
||||
}
|
||||
|
||||
void LoRaWANStack::remove_device_time_request(void)
|
||||
{
|
||||
}
|
||||
|
||||
lorawan_gps_time_t LoRaWANStack::get_current_gps_time()
|
||||
{
|
||||
return _loramac.get_gps_time();
|
||||
}
|
||||
|
||||
void LoRaWANStack::set_current_gps_time(lorawan_gps_time_t gps_time)
|
||||
{
|
||||
_loramac.set_gps_time(gps_time);
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaWANStack::add_ping_slot_info_request(uint8_t periodicity)
|
||||
{
|
||||
return LORAWAN_STATUS_OK;
|
||||
}
|
||||
|
||||
void LoRaWANStack::remove_ping_slot_info_request()
|
||||
{
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaWANStack::enable_beacon_acquisition()
|
||||
{
|
||||
return LORAWAN_STATUS_OK;
|
||||
}
|
||||
|
||||
lorawan_status_t LoRaWANStack::get_last_rx_beacon(loramac_beacon_t &beacon)
|
||||
{
|
||||
return LORAWAN_STATUS_NO_BEACON_FOUND;
|
||||
}
|
|
@ -22,6 +22,7 @@
|
|||
|
||||
lorawan_time_t LoRaWANTimer_stub::time_value = 0;
|
||||
bool LoRaWANTimer_stub::call_cb_immediately = false;
|
||||
lorawan_gps_time_t LoRaWANTimer_stub::gps_time = 0;
|
||||
|
||||
LoRaWANTimeHandler::LoRaWANTimeHandler()
|
||||
: _queue(NULL)
|
||||
|
@ -62,3 +63,13 @@ void LoRaWANTimeHandler::stop(timer_event_t &obj)
|
|||
{
|
||||
obj.timer_id = 0;
|
||||
}
|
||||
|
||||
void LoRaWANTimeHandler::set_gps_time(lorawan_gps_time_t gps_time)
|
||||
{
|
||||
LoRaWANTimer_stub::gps_time = gps_time;
|
||||
}
|
||||
|
||||
lorawan_gps_time_t LoRaWANTimeHandler::get_gps_time(void)
|
||||
{
|
||||
return LoRaWANTimer_stub::gps_time;
|
||||
}
|
||||
|
|
|
@ -20,4 +20,5 @@
|
|||
namespace LoRaWANTimer_stub {
|
||||
extern lorawan_time_t time_value;
|
||||
extern bool call_cb_immediately;
|
||||
extern lorawan_gps_time_t gps_time;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue