Skip to content

Release candidate for mbed-os-5.9.1 #7228

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 146 commits into from
Jun 15, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
146 commits
Select commit Hold shift + click to select a range
0c23935
Cellular: Fixed connect-disconnect sequence can now be called multipl…
May 16, 2018
79739de
Cellular: review changes.
May 17, 2018
7944db6
Cellular: review fixes.
May 23, 2018
40de17a
EFM32PG12_STK3402 - Correct wrong Expansion header Pin naming
steinerphilipp May 18, 2018
3586af6
Cellular: Unit tests fixes
May 21, 2018
ca0ba77
Cellular: Added missing copyrights
May 22, 2018
2b2f53e
Cellular: Added ENOTTY define in mbed_retarget stub
May 23, 2018
6207b90
Update pinout of TB_SENSE_12 to production revision
stevew817 May 22, 2018
41e08d7
Fix to flash API on EFM32
stevew817 May 22, 2018
31ef221
EFM32 IRQ handling fix
stevew817 May 22, 2018
a87d403
EFM32: make mbed_rtx.h depend of families instead of targets
amq May 23, 2018
bd6503f
Fixed incorrect clean_flags method and float-abi linker option for CC…
mharringADI May 24, 2018
a4ff62e
Add check for _interface
KariHaapalehto May 25, 2018
5cb665e
Added STM32L433RC to iar exporter options
May 25, 2018
28060c1
Fix array overflow in gpio configuration code for NRF5x
May 25, 2018
5cd450c
Cellular: Fix AT URC handler not to dismiss incoming chars
May 16, 2018
875c0eb
Fix redeclaration of type name "bool_t"
TomoYamanaka May 28, 2018
e703861
Corrected asynchronous DNS functionality
May 22, 2018
35f980b
gethostbyname won't accept empty name
May 30, 2018
67a329f
Makes UDPSOCKET_SENDTO_INVALID part of the netsocket extended test set
May 30, 2018
e1288ab
Lora: Add greentea tests for LoRaRadio API
May 24, 2018
d2e4158
Power down RTC access from CPU domain in rtc_free
ccli8 May 28, 2018
3eaaf65
Add back RTC to device_has target configuration
ccli8 May 29, 2018
9ab1704
Fix RTC cannot cross reset cycle
ccli8 May 29, 2018
da400af
FPGAIO: Add MISC IO initialization support
Apr 18, 2018
fd68ba0
Fix possible bug with SysTimer
c1728p9 May 27, 2018
467a994
make uart console port configurable via mbed_app.json
chuanga May 25, 2018
8a436bf
AStyle: don't indent cases
0xc0170 May 24, 2018
4453396
AStyle: fix indentation for longer lines
0xc0170 May 24, 2018
51a3be6
Cellular: BC95 socket creation to fail on missing socket id in the re…
May 29, 2018
c4698a5
STM32F4 ADC internal channels update
jeromecoutant Mar 21, 2018
08d8df3
STM32F0 ADC internal channels update
jeromecoutant Mar 22, 2018
525eb1e
STM32F1 ADC internal channels update
jeromecoutant Mar 22, 2018
aa84af2
STM32F2 ADC internal channels update
jeromecoutant Mar 22, 2018
a95bdd8
STM32F3 ADC internal channels update
jeromecoutant Mar 21, 2018
11817b7
STM32F7 ADC internal channels update
jeromecoutant Mar 22, 2018
720a5b6
STM32L0 ADC internal channels update
jeromecoutant May 22, 2018
587c6d9
STM32L1 ADC internal channels update
jeromecoutant Mar 22, 2018
f1f2bb4
STM32L4 ADC internal channels update
jeromecoutant Mar 22, 2018
88e0686
BLE: Replace Serial with RawSerial in Cordio H4 Transport Driver
May 31, 2018
d55cc64
Cordio H4: Added some comments explaining the use of RawSerial as opp…
May 31, 2018
bbcf5f1
RTX5: disabled OS Tick interrupt during post processing in IRQ handle…
VladimirUmek Mar 28, 2018
10ec047
RTX5: ignoring CPUID field in GIC implementation updated interrupt ha…
VladimirUmek Apr 9, 2018
f5dfc74
RTX5: fixed nesting interrupt handling (Cortex-A)
VladimirUmek Apr 10, 2018
ee0d0f9
RTX5 (Cortex-A): exception handling restructured, post processing mov…
VladimirUmek May 24, 2018
f2901a4
DISCO_F413ZH : map SPI3 to WIFI module
jeromecoutant May 30, 2018
87c14d3
DISCO_F413ZH : pin value error
jeromecoutant May 31, 2018
97ba13b
Enable ASSERTS's in nrf sdk to catch coding errors.
pi-anl Feb 6, 2018
2615631
Address known typo in nrf sdk 11
pi-anl Feb 6, 2018
5759e17
Only enable DEBUG_NRF_USER when NDEBUG is not set
pi-anl Feb 23, 2018
cee87d9
Comment out the assert test that requires non-existent symbols from l…
pi-anl Mar 27, 2018
2ba88ba
Redirect NRF asserts to mbed error() in TARGET_NRF5x and SDK 14.2 Add…
pi-anl May 9, 2018
4146eab
Check that no GPL licence inside code
May 9, 2018
8b1bcc3
Only schedule mbed_ticker interrupt if queue->head is changed
Mar 30, 2018
32ecbb7
Ticker test: Add ticker_irq_handler call because the time reaching th…
Apr 10, 2018
57ea7e1
Fixing some coverity issues.
Jun 3, 2018
0b1faf1
Fix mbed_crc_ctor is missing in some MbedCRC constructor
ccli8 May 31, 2018
00e3e41
STM32 : few targets does not support LPTICKER
jeromecoutant Jun 6, 2018
9ed564e
error: fix undeclared memcpy
0xc0170 Jun 6, 2018
40cc4e3
Updated makefile exporter to not rely on enumerating over map. No lon…
cmonr Jun 4, 2018
752b6c2
Use TerminalNotifier in singletest
theotherjimmy Jun 5, 2018
c0341fa
Allow configuration (via defines) of some of the key settings for the…
pi-anl May 14, 2018
4dc172b
Expose softdevice configurations via new nordic-ble library definitio…
pi-anl May 14, 2018
5d751df
Move mbed_lib.json from targets folder to feature_ble folder The func…
pi-anl May 18, 2018
88259ac
Support mbed_start_application for Cortex-M23
ccli8 May 17, 2018
4f9de80
Fix start_new_application compile error on Cortex-M23
ccli8 May 21, 2018
a77e407
Fix mbed_start_application on Cortex-M23
ccli8 May 28, 2018
156e8a0
Remove superfluous MOVT in mbed_start_application/start_new_application
ccli8 May 30, 2018
f0bea4b
Fixed DNS resolution in case all sendto operations fail
Jun 5, 2018
34bfb08
Add ISM43362 driver support for STM32 wifi DISCO boards
jeromecoutant May 30, 2018
aba7367
ISM pin configuration is now in ISM driver json file
jeromecoutant Jun 5, 2018
7c3c8c9
Make Nanostack C++ constructor initialise Nanostack
kjbracey Jun 8, 2018
6259e81
Add show full path option to armc6 linker
theotherjimmy Jun 7, 2018
4a4c906
Upgrade uvisor to v0.31.1
Jun 6, 2018
cedccc7
Kinetis EMAC: Make number of buffers configurable
kjbracey Jun 6, 2018
b2a6e94
Kinetis EMAC: Correct TX ring pointer array size
kjbracey Jun 6, 2018
cfed822
Nanostack EMAC - avoid initialisation race
kjbracey Jun 5, 2018
790d247
Support default tz_module for event loop & lwip
cyliangtw May 22, 2018
05ee60f
Lora: All API methods should check if stack has been initialized
May 17, 2018
c705f94
Moving missing public data structures
May 17, 2018
1a074ac
Style changes only
May 17, 2018
e6e3993
dr_range bitfield should be unsigned integer
May 17, 2018
58230e0
Lora: Check for valid ABP params
May 18, 2018
4d7a15e
Fix NVStore README file (changed APIs)
Jun 7, 2018
0d8b331
Copy edit README.md
Jun 8, 2018
7a53ed2
Fixed ppp disconnect hangs when connection failure.
Jun 7, 2018
33653e8
Review fix: - set ppp_active false if close fails in ppp disconnect. …
Jun 8, 2018
8dbd41c
Add targets to Greentea EMAC tests
juhaylinen Jun 7, 2018
b80471a
Nordic: Fix nrf sections on ARMCC
pan- Jun 6, 2018
f3ea877
Replace HAL_GetTick
bcostm May 25, 2018
869b47d
Remove code related to timer channel 2
bcostm Jun 5, 2018
075e445
Cleanup
bcostm Jun 5, 2018
8b7e62b
Remove HAL_TICK_DELAY (no more used)
bcostm Jun 5, 2018
9e91555
Add license
bcostm Jun 6, 2018
4d3921d
Updated EMAC test environment for LPCxx boards
Jun 1, 2018
b1faa8f
Changed TCP socket test to use shared buffers
Jun 1, 2018
394b2f1
random socket port number
Jun 1, 2018
8046450
more effective port randomisation
Jun 5, 2018
fb639a4
Add support of Flash dual bank mode on NUCLEO_767ZI
bcostm May 31, 2018
9be9d97
Add support of Flash dual bank mode on DISCO_F769NI
bcostm Jun 1, 2018
7c0f54c
Dual Bank Flash support update
jeromecoutant Jun 4, 2018
01fe512
STM32 ETH : remove TX RX locking interrupt perforation
jeromecoutant May 18, 2018
0aff4e8
Cellular: Enable AT debug also when mbed-trace is disabled
Jun 1, 2018
607f782
Fix USB on Kinetis devices
c1728p9 Jun 8, 2018
0e67688
NSAPI: Use IPv6 conversion routines from frameworks
kjbracey Jun 5, 2018
9f8321f
Fix data aligment problem at STM32F4 hash write
KariHaapalehto Jun 5, 2018
09e1456
Cellular: Disable Greentea tracing to consume less memory
Jun 11, 2018
172c69e
Correct PPPCellularInterface::get_gateway()
kjbracey Jun 7, 2018
8fbdaa9
Fixes for RZ_A1H issue 6543 Removed debugging code, fixed errors indi…
mrcoulter45 Jun 6, 2018
d07d966
missing return
paul-szczepanek-arm Jun 7, 2018
8990f23
ticker test improvement
maciejbocianski May 17, 2018
9756447
Add testing requirements to HAL CRC header file.
mprse May 7, 2018
648710b
Add HAL CRC test and test header file.
mprse May 7, 2018
592ec6f
HAL CRC test: Fix out of memory issue on NULCLEO_F070RB, NULCLEO_F072…
mprse Jun 7, 2018
07773fe
STM CRC driver: hal_crc_compute_partial() - validate input paramaters.
mprse Jun 7, 2018
fcaf166
K64F CRC driver: hal_crc_is_supported() - fix condition which validat…
mprse Jun 7, 2018
904e3f0
K64F CRC driver: Fix handling of CRC final XOR value
mprse Jun 7, 2018
b49aa21
K64F CRC driver: Fix coding style
mprse Jun 7, 2018
4020708
Delete bootloader.bin
Jun 5, 2018
f56dc0a
Add files via upload
Jun 5, 2018
ea81d4b
Add volatile modifier for CP15 accessors
toyowata Jun 7, 2018
62604bb
Fix compile error with MBED_MEM_TRACING_ENABLED and ARMC6
ccli8 Apr 27, 2018
bf6407e
check that flags have the IRK stored before retrieving it
paul-szczepanek-arm Jun 5, 2018
d5a6baf
Cellular: added greentea test for cellular device.
May 23, 2018
64e8363
Cellular: added more unit tests for CellularDevice.
May 23, 2018
a771f04
Cellular: fixed unit tests to compile after rebasing to latest.
Jun 4, 2018
4b1d087
Adding platform
ytsuboi Jun 3, 2018
b3ebb52
Changed suggested points
ytsuboi Jun 8, 2018
7bc411e
Changed suggested things
ytsuboi Jun 11, 2018
97cdbf7
Cellular: release resources in state machine. Made sure that athandle…
May 21, 2018
f94b2ea
Increased LWIP main worker thread stack size for debug builds
Jun 12, 2018
bed8207
Corrected casting issue with an assert within the error_handling test
cmonr Jun 13, 2018
4c3012c
Wrapped test around MBED_CONF_RTOS_PRESENT
cmonr Jun 13, 2018
754e18f
Only exclude RTOS-specifc tests in error_handling
cmonr Jun 13, 2018
a72365c
Skip second header when every bl config paramater used
theotherjimmy Jun 12, 2018
77b0fc3
Cellular: Semaphore wasn't released in easycellular release build.
Jun 12, 2018
6882683
Fix flash_program_page API in LPC boards.
Jun 5, 2018
8b3ae8d
HAL sleep test fix
maciejbocianski May 28, 2018
3934242
enable HAL sleep test
maciejbocianski May 28, 2018
14c75c5
fix and enable sleep_usticker_test
maciejbocianski Jun 4, 2018
b7d354c
Update Mbed version block for patch release
adbridge Jun 15, 2018
b744b50
Ported NXP LPCxx ethernet driver to unified EMAC
Jun 1, 2018
eee607b
Corrected TX buffer reclaim error
Jun 1, 2018
a784da9
Added EMAC configuration for UBLOX_C027
Jun 4, 2018
dbbfdbc
Added UBLOX_C027/ARCH_PRO memory configurations
Jun 4, 2018
92a4cb2
Added missing license to header of the file
Jun 6, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .astylerc
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ convert-tabs

# Indent switches and cases
indent-switches
indent-cases

# Remove spaces in and around parentheses
unpad-paren
Expand All @@ -32,3 +31,7 @@ align-reference=name
# Attach { for classes and namespaces
attach-namespaces
attach-classes

# Extend longer lines, define maximum 120 value. This results in aligned code,
# otherwise the lines are broken and not consistent
max-continuation-indent=120
6 changes: 6 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -260,3 +260,9 @@ matrix:
script:
# Check that no changes after clone. This check that .gitattributes is used right way.
- git diff --exit-code

- env:
- NAME=licence_check
script:
- echo 'Checking that there is no GPL licence text in code'
- ! git grep -q --ignore-case "gnu general public";
17 changes: 17 additions & 0 deletions TESTS/lorawan/loraradio/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Description

This document describes how to run LoRaRadio API tests.

## Configuring target HW

Before starting to test, the target HW must be configured for the test. This can be done by either modifying the application configuration `json` file (if using currently supported Semtech SX1272 or SX1276 radios) or implementing driver construction into test source.

The default mbed_app.json file provides configuration for some already supported HWs.

## Running tests

You can use the following command to run tests:

`mbed test -n mbed-os-tests-lorawan-loraradio -m TARGET -t GCC_ARM --app-config mbed-os/TESTS/lorawan/loraradio/template_mbed_app.txt`

Replace TARGET with the target device.
282 changes: 282 additions & 0 deletions TESTS/lorawan/loraradio/main.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,282 @@
/* mbed Microcontroller Library
* Copyright (c) 2017 ARM Limited
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

#include "utest.h"
#include "unity.h"
#include "greentea-client/test_env.h"

#include "Semaphore.h"

#include "mbed_trace.h"
#define TRACE_GROUP "RTST"

#include "LoRaRadio.h"

#define SX1272 0xFF
#define SX1276 0xEE

#if (MBED_CONF_APP_LORA_RADIO == SX1272)
#include "SX1272_LoRaRadio.h"
#elif (MBED_CONF_APP_LORA_RADIO == SX1276)
#include "SX1276_LoRaRadio.h"
#else
#error [NOT_SUPPORTED] Requires parameters from application config file.
#endif


using namespace utest::v1;

static LoRaRadio* radio = NULL;
rtos::Semaphore event_sem(0);

enum event_t
{
EV_NONE,
EV_TX_DONE,
EV_TX_TIMEOUT,
EV_RX_DONE,
EV_RX_TIMEOUT,
EV_RX_ERROR,
};
static volatile event_t received_event;


static void tx_done()
{
wait_ms(2);
TEST_ASSERT_EQUAL(EV_NONE, received_event);
received_event = EV_TX_DONE;
TEST_ASSERT_EQUAL(osOK, event_sem.release());
}

static void tx_timeout()
{
wait_ms(2);
TEST_ASSERT_EQUAL(EV_NONE, received_event);
received_event = EV_TX_TIMEOUT;
TEST_ASSERT_EQUAL(osOK, event_sem.release());
}

static void rx_done(const uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr)
{
wait_ms(2);
TEST_ASSERT_EQUAL(EV_NONE, received_event);
received_event = EV_RX_DONE;
TEST_ASSERT_EQUAL(osOK, event_sem.release());
}

static void rx_timeout()
{
wait_ms(2);
TEST_ASSERT_EQUAL(EV_NONE, received_event);
received_event = EV_RX_TIMEOUT;
TEST_ASSERT_EQUAL(osOK, event_sem.release());
}

static void rx_error()
{
wait_ms(2);
TEST_ASSERT_EQUAL(EV_NONE, received_event);
received_event = EV_RX_ERROR;
TEST_ASSERT_EQUAL(osOK, event_sem.release());
}

static radio_events radio_callbacks =
{
.tx_done = tx_done,
.tx_timeout = tx_timeout,
.rx_done = rx_done,
.rx_timeout = rx_timeout,
.rx_error = rx_error
};


void test_random()
{
const uint32_t rand1 = radio->random();
const uint32_t rand2 = radio->random();
TEST_ASSERT_NOT_EQUAL(rand1, rand2);
}

void test_set_tx_config()
{
uint8_t buffer[] = {0};

TEST_ASSERT_EQUAL(RF_IDLE, radio->get_status());

radio->set_tx_config(MODEM_LORA, 13, 0,
0, 7,
1, 8,
false, true, false,
0, false, 100);
radio->send(buffer, sizeof(buffer));

TEST_ASSERT_EQUAL(RF_TX_RUNNING, radio->get_status());

TEST_ASSERT_EQUAL(1, event_sem.wait(1000));
TEST_ASSERT_EQUAL(EV_TX_DONE, received_event);
received_event = EV_NONE;
}

void test_set_rx_config()
{
TEST_ASSERT_EQUAL(RF_IDLE, radio->get_status());

radio->set_rx_config(MODEM_LORA, 0, // modem, bandwidth,
7, 1, // datarate, coderate,
0, 8, // bandwidth_afc, preamble_len,
24, false, // symb_timeout, fix_len,
0, // payload_len,
false, false, 0, // crc_on, freq_hop_on, hop_period,
true, false); // iq_inverted, rx_continuous
radio->receive(100);

TEST_ASSERT_EQUAL(RF_RX_RUNNING, radio->get_status());

TEST_ASSERT_EQUAL(1, event_sem.wait(1000));

// Nobody was sending to us so timeout is expected.
TEST_ASSERT_EQUAL(EV_RX_TIMEOUT, received_event);
received_event = EV_NONE;
}

void test_time_on_air()
{
radio->set_rx_config(MODEM_LORA, 0,
7, 1,
0, 8,
24, false,
0,
false, false, 0,
true, false);
TEST_ASSERT_EQUAL(52, radio->time_on_air(MODEM_LORA, 20));

radio->set_tx_config(MODEM_LORA, 13, 0,
0, 7,
1, 8,
false, true, false,
0, false, 100);
TEST_ASSERT_EQUAL(72, radio->time_on_air(MODEM_LORA, 32));

// TODO: Add FSK tests
}

void test_perform_carrier_sense()
{
TEST_ASSERT_TRUE(radio->perform_carrier_sense(MODEM_FSK, 865000000, -20, 1));
TEST_ASSERT_TRUE(radio->perform_carrier_sense(MODEM_LORA, 865000000, -20, 1));
}

void test_check_rf_frequency()
{
// Test EU868 frequency
TEST_ASSERT_TRUE(radio->check_rf_frequency(865000000));
}

// Test setup
utest::v1::status_t test_setup(const size_t number_of_cases) {
GREENTEA_SETUP(20, "default_auto");

mbed_trace_init();

return verbose_test_setup_handler(number_of_cases);
}

utest::v1::status_t case_setup_handler(const Case *const source, const size_t index_of_case)
{
#if (MBED_CONF_APP_LORA_RADIO == SX1272)

radio = new SX1272_LoRaRadio(MBED_CONF_APP_LORA_SPI_MOSI,
MBED_CONF_APP_LORA_SPI_MISO,
MBED_CONF_APP_LORA_SPI_SCLK,
MBED_CONF_APP_LORA_CS,
MBED_CONF_APP_LORA_RESET,
MBED_CONF_APP_LORA_DIO0,
MBED_CONF_APP_LORA_DIO1,
MBED_CONF_APP_LORA_DIO2,
MBED_CONF_APP_LORA_DIO3,
MBED_CONF_APP_LORA_DIO4,
MBED_CONF_APP_LORA_DIO5,
MBED_CONF_APP_LORA_RF_SWITCH_CTL1,
MBED_CONF_APP_LORA_RF_SWITCH_CTL2,
MBED_CONF_APP_LORA_TXCTL,
MBED_CONF_APP_LORA_RXCTL,
MBED_CONF_APP_LORA_ANT_SWITCH,
MBED_CONF_APP_LORA_PWR_AMP_CTL,
MBED_CONF_APP_LORA_TCXO);

#elif (MBED_CONF_APP_LORA_RADIO == SX1276)

radio = new SX1276_LoRaRadio(MBED_CONF_APP_LORA_SPI_MOSI,
MBED_CONF_APP_LORA_SPI_MISO,
MBED_CONF_APP_LORA_SPI_SCLK,
MBED_CONF_APP_LORA_CS,
MBED_CONF_APP_LORA_RESET,
MBED_CONF_APP_LORA_DIO0,
MBED_CONF_APP_LORA_DIO1,
MBED_CONF_APP_LORA_DIO2,
MBED_CONF_APP_LORA_DIO3,
MBED_CONF_APP_LORA_DIO4,
MBED_CONF_APP_LORA_DIO5,
MBED_CONF_APP_LORA_RF_SWITCH_CTL1,
MBED_CONF_APP_LORA_RF_SWITCH_CTL2,
MBED_CONF_APP_LORA_TXCTL,
MBED_CONF_APP_LORA_RXCTL,
MBED_CONF_APP_LORA_ANT_SWITCH,
MBED_CONF_APP_LORA_PWR_AMP_CTL,
MBED_CONF_APP_LORA_TCXO);

#else
#error [NOT_SUPPORTED] Unknown LoRa radio specified (SX1272,SX1276 are valid)
#endif

TEST_ASSERT(radio);
radio->init_radio(&radio_callbacks);
radio->sleep();

return greentea_case_setup_handler(source, index_of_case);
}

utest::v1::status_t case_teardown_handler(const Case *const source, const size_t passed, const size_t failed, const failure_t reason)
{
radio->sleep();

#if (MBED_CONF_APP_LORA_RADIO == SX1272)
delete static_cast<SX1272_LoRaRadio*>(radio);
#elif (MBED_CONF_APP_LORA_RADIO == SX1276)
delete static_cast<SX1276_LoRaRadio*>(radio);
#else
#error [NOT_SUPPORTED] Unknown LoRa radio specified (SX1272,SX1276 are valid)
#endif
radio = NULL;

return greentea_case_teardown_handler(source, passed, failed, reason);
}

const Case cases[] = {
Case("Test random", case_setup_handler, test_random, case_teardown_handler),
Case("Test set_tx_config", case_setup_handler, test_set_tx_config, case_teardown_handler),
Case("Test set_rx_config", case_setup_handler, test_set_rx_config, case_teardown_handler),
Case("Test time_on_air", case_setup_handler, test_time_on_air, case_teardown_handler),
Case("Test perform_carrier_sense", case_setup_handler, test_perform_carrier_sense, case_teardown_handler),
Case("Test check_rf_frequency", case_setup_handler, test_check_rf_frequency, case_teardown_handler),
};

Specification specification(test_setup, cases);

int main() {
return !Harness::run(specification);
}
Loading