1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/tests
2021-10-05 14:35:08 +02:00
..
backtrace
bench_msg_pingpong tests/bench_msg_pingpong: add stdint.h include (for clang & stdatomic.h) 2021-09-22 20:44:42 +02:00
bench_mutex_pingpong treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
bench_runtime_coreapis
bench_sched_nop
bench_sizeof_coretypes treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
bench_sys_atomic_utils tests: add atomic_utils test to Kconfig 2021-09-27 17:30:05 +02:00
bench_sys_base64
bench_thread_flags_pingpong
bench_thread_yield_pingpong
bench_timers
bench_xtimer Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
bench_xtimer_load treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
bitarithm_timings treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
blob
bloom_bytes
board_calliope-mini
board_microbit
build_system_cflags_spaces treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
build_system_utils
buttons
c11_atomics_cpp_compat
can_trx
candev
cb_mux
cb_mux_bench
cond_order
congure_test
conn_can
cortexm_common_ldscript
cpp11_condition_variable
cpp11_mutex
cpp11_thread
cpp_ctors
cpp_exclude
cpp_ext
cpu_avr8_xmega_drivers boards: Introduce atxmega-a1-xplained board 2021-08-24 21:25:14 -03:00
cpu_cortexm_address_check
cpu_efm32_drivers
cpu_efm32_features
dbgpin
deferred_yield_higher tests/deferred_yield_higher: initial commit 2021-08-24 09:49:53 +02:00
devfs
disp_dev Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_ad7746
driver_adcxx1c
driver_ads101x
driver_adt7310
driver_adxl345
driver_aip31068
driver_apa102
driver_apds99xx
driver_apds99xx_full
driver_at Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_at24cxxx
driver_at24mac
driver_at25xxx
driver_at30tse75x
driver_at86rf2xx at86rf2xx: avoid explicit cast to netdev 2021-07-09 10:08:45 +02:00
driver_at86rf2xx_aes
driver_at86rf215 tests/driver_at86rf215: remove gnrc_netif_get_by_type dependency 2021-10-05 14:35:08 +02:00
driver_ata8520e
driver_atwinc15x0
driver_bh1750
driver_bh1900nux
driver_bme680
driver_bmp180
driver_bmx055
driver_bmx280
driver_bq2429x
driver_cc110x Merge pull request #15902 from maribu/spi-api-change-1 2021-09-02 08:50:56 +02:00
driver_ccs811
driver_ccs811_full
driver_cst816s
driver_dac_dds
driver_dcf77
driver_dfplayer
driver_dht
driver_dose Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_ds18
driver_ds75lx
driver_ds1307
driver_ds3231
driver_ds3234
driver_dsp0401
driver_dynamixel
driver_edbg_eui
driver_enc28j60 Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_encx24j600 Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_feetech
driver_fxos8700
driver_gp2y10xx
driver_grove_ledbar
driver_hd44780
driver_hdc1000
driver_hih6130
driver_hmc5883l
driver_hsc
driver_hts221
driver_ili9341
driver_ina2xx
driver_ina3221
driver_io1_xplained
driver_isl29020
driver_isl29125
driver_itg320x treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_jc42
driver_kw2xrf tests/driver_kw2xrf: use gnrc for test 2021-09-06 15:43:40 +02:00
driver_l3g4200d
driver_lc709203f
driver_lis2dh12
driver_lis3dh treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_lis3mdl
driver_lm75 tests/driver_lm75: don't abort if alarm pin is not connected 2021-09-20 14:50:23 +02:00
driver_lpd8808 treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_lpsxxx drivers/lpsxxx: add support for lps22hh 2021-09-22 17:54:02 +02:00
driver_lsm6dsl
driver_lsm303dlhc
driver_ltc4150
driver_mag3110
driver_mhz19
driver_mma8x5x
driver_mma7660
driver_motor_driver treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_mpl3115a2
driver_mpu9x50
driver_mq3
driver_mrf24j40 Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_my9221
driver_netdev_common treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
driver_nrf24l01p_lowlevel treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_nrf24l01p_ng Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_nrfmin tests: remove unneeded netdev_default 2021-09-06 15:48:28 +02:00
driver_nvram_spi
driver_opt3001
driver_pca9633
driver_pca9685
driver_pcd8544
driver_ph_oem treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_pir
driver_pn532 treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_pulse_counter
driver_qmc5883l
driver_rn2xx3
driver_scd30
driver_sdcard_spi
driver_sdp3x
driver_sds011
driver_seesaw_soil
driver_servo
driver_sgp30
driver_sht1x
driver_sht2x
driver_sht3x
driver_shtc1
driver_si70xx
driver_si114x
driver_si1133
driver_sm_pwm_01c
driver_soft_spi
driver_soft_uart treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
driver_sps30
driver_srf02
driver_srf04
driver_srf08
driver_stmpe811
driver_sx126x sx126x: avoid explicit cast to netdev 2021-07-09 10:38:36 +02:00
driver_sx127x Revert "tests/driver_sx127x: use uint8_t for NETOPT_RX_SYMBOL_TIMEOUT" 2021-07-13 21:13:34 +02:00
driver_tcs37727
driver_tmp00x
driver_tps6274x
driver_tsl2561
driver_tsl4531x
driver_vcnl40x0
driver_veml6070
driver_w5100 Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
driver_ws281x
driver_xbee Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
eepreg
embunit
emcute Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
entropy_source
event_thread_shared
event_threads
event_wait_timeout
event_wait_timeout_ztimer
event_ztimer tests/event_ztimer: add regression test for crashing clear 2021-07-21 13:32:39 +02:00
events
evtimer_mbox
evtimer_msg
evtimer_underflow
external_board_dirs
external_board_native treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
external_module_dirs
fault_handler
float
fmt_print
frac-config
gnrc_dhcpv6_client tests/gnrc_dhcpv6_client: inform user about TMPDIR 2021-09-27 20:57:39 +02:00
gnrc_dhcpv6_client_6lbr treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
gnrc_dhcpv6_relay Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_gomach treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
gnrc_ipv6_ext Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_ipv6_ext_frag Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_ipv6_ext_opt Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_ipv6_fwd_w_sub Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_ipv6_nib Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_ipv6_nib_6ln Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_ipv6_nib_dns Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_lorawan tests/gnrc_lorawan: add initial tests 2021-08-02 18:29:46 +02:00
gnrc_lwmac treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
gnrc_mac_timeout Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_ndp Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_netif Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_netif_ieee802154 treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
gnrc_netif_ipv6_wait_for_global_address tests: add test for gnrc_netif_ipv6_wait_for_global_address() 2021-09-17 13:00:15 +02:00
gnrc_rpl_p2p Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_rpl_srh Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_sixlowpan Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_sixlowpan_frag
gnrc_sixlowpan_frag_minfwd Merge pull request #16023 from maribu/max_pdu_size 2021-08-26 14:40:18 +02:00
gnrc_sixlowpan_frag_sfr Merge pull request #16023 from maribu/max_pdu_size 2021-08-26 14:40:18 +02:00
gnrc_sixlowpan_iphc_w_vrb Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_sock_async_event
gnrc_sock_dns Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_sock_ip treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
gnrc_sock_neterr
gnrc_sock_tcp gnrc_sock_tcp: integrate gnrc_tcp 2021-08-14 21:27:34 +02:00
gnrc_sock_udp Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_tcp Merge pull request #16764 from brummer-simon/gnrc_tcp-experimental_dynamic_MSL 2021-09-13 10:36:54 +02:00
gnrc_tx_sync Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
gnrc_udp treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
heap_cmd
ieee802154_hal test/ieee802154_hal: rename long_addr into ext_addr 2021-09-30 17:30:17 +02:00
ieee802154_security Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
ieee802154_submac tests/ieee802154_submac: remove netdev dependency 2021-09-29 11:05:44 +02:00
irq treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
irq_disable_restore tests/irq_disable_restore: test irq_is_enabled() 2021-08-25 08:01:05 +02:00
isr_yield_higher
kconfig
kconfig_features
l2util
leds treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
libc_newlib treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
log_color
log_printfnoformat
lua_loader
lwip
lwip_sock_ip treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
lwip_sock_tcp treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
lwip_sock_udp treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
malloc
malloc_thread_safety
mcuboot
memarray treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
minimal makefiles: Minor clean ups 2020-04-02 09:56:39 +02:00
mpu_noexec_ram
mpu_stack_guard
msg_avail
msg_queue_print
msg_send_receive
msg_try_receive
mtd_at24cxxx
mtd_at25xxx
mtd_flashpage drivers/mtd: fix Kconfig dependencies 2021-09-22 09:22:51 +02:00
mtd_mapper
mtd_raw Merge pull request #16836 from fjmolinas/pr_kconfig_mtd 2021-09-22 10:08:14 +02:00
mutex_cancel
mutex_order
mutex_unlock_and_sleep
nanocoap_cli treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
netdev_test netdev_test: avoid explicit cast to netdev 2021-07-09 11:35:19 +02:00
netstats_l2 treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
netstats_neighbor treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
netutils Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
nimble_autoconn_ccnl treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
nimble_autoconn_gnrc tests: remove unneeded netdev_default 2021-09-06 15:48:28 +02:00
nimble_l2cap treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
nimble_l2cap_server
nimble_rpble_gnrc examples, tests: replace gnrc_netdev_default with netdev_default 2021-09-06 21:06:29 +02:00
nimble_statconn_gnrc tests: remove unneeded netdev_default 2021-09-06 15:48:28 +02:00
od
pbkdf2 treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_adc treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_backup_ram
periph_cpuid
periph_dac treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_dma
periph_eeprom treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_flashpage treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_flashpage_unittest
periph_gpio
periph_gpio_arduino
periph_hwrng
periph_i2c treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_pm
periph_ptp_clock treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_ptp_timer
periph_pwm
periph_qdec
periph_rtc tests/periph_rtc: test for periph_rtc_mem 2021-09-03 11:43:43 +02:00
periph_rtt tests/periph_rtt: test for periph_rtc_mem 2021-09-03 11:43:43 +02:00
periph_rtt_min
periph_spi Merge pull request #15902 from maribu/spi-api-change-1 2021-09-02 08:50:56 +02:00
periph_spi_dma
periph_timer boards: Introduce atxmega-a1-xplained board 2021-08-24 21:25:14 -03:00
periph_timer_periodic
periph_timer_short_relative_set
periph_uart tests/periph_uart: add automated test 2021-07-28 16:19:04 +02:00
periph_uart_mode treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
periph_uart_nonblocking
periph_wdt
phydat_dump
pipe
pkg_c25519
pkg_cayenne-lpp
pkg_cifra
pkg_cmsis-dsp
pkg_cmsis-nn
pkg_cn-cbor
pkg_cryptoauthlib_compare_sha256
pkg_cryptoauthlib_internal-tests boards: Introduce atxmega-a1-xplained board 2021-08-24 21:25:14 -03:00
pkg_edhoc_c treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
pkg_emlearn Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
pkg_fatfs tests/pkg_fatfs: Create required bin/ directory 2021-09-02 17:17:42 +02:00
pkg_fatfs_vfs treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
pkg_flatbuffers
pkg_hacl
pkg_heatshrink
pkg_jsmn
pkg_libb2
pkg_libbase58
pkg_libcoap
pkg_libcose
pkg_libfixmath treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
pkg_libfixmath_unittests
pkg_libhydrogen
pkg_littlefs
pkg_littlefs2 tests/pkg_littlefs2: arduino-mega2560 no longer fits 2021-09-08 12:40:32 +02:00
pkg_lora-serialization
pkg_lvgl
pkg_lvgl_touch treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
pkg_micro-ecc treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
pkg_micro-ecc-with-hwrng
pkg_microcoap treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
pkg_minmea
pkg_monocypher
pkg_nanocbor
pkg_nanopb Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
pkg_openwsn
pkg_openwsn_sock_udp
pkg_qcbor
pkg_qdsa
pkg_qr-code-generator
pkg_relic Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
pkg_semtech-loramac Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
pkg_spiffs
pkg_tensorflow-lite
pkg_tiny-asn1 treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
pkg_tinycbor
pkg_tinycrypt
pkg_tinydtls_sock_async treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
pkg_tweetnacl
pkg_u8g2
pkg_ubasic
pkg_ucglib Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
pkg_umorse
pkg_utensor Merge pull request #16036 from bergzand/pr/gd32vf103/initial 2021-08-25 00:38:00 +02:00
pkg_wolfcrypt-ed25519-verify treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
pkg_wolfssl
pkg_yxml
posix_semaphore
posix_sleep
prng_sha1prng
prng_sha256prng
progress_bar
ps_schedstatistics
pthread
pthread_barrier
pthread_cleanup
pthread_condition_variable
pthread_cooperation
pthread_flood
pthread_rwlock
pthread_tls treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
puf_sram
riotboot
riotboot_flashwrite treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
riotboot_hdr
rmutex
rmutex_cpp
rng doc: cleanup some minor spelling error found by codespell 2021-09-03 13:02:08 +02:00
saul treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
sched_testing
sema treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
shell
slip Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
sntp treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
sock_udp_aux treewide: replace gnrc_netdev_default with netdev_default 2021-09-06 15:43:40 +02:00
socket_zep socket_zep: avoid explicit cast to netdev 2021-07-09 10:38:33 +02:00
ssp
stdin
stm32_bootloader
struct_tm_utility treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
suit_manifest treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
sys_architecture
sys_arduino
sys_arduino_analog
sys_arduino_lib
sys_atomic_utils tests: add atomic_utils test to Kconfig 2021-09-27 17:30:05 +02:00
sys_atomic_utils_unittests tests: add atomic_utils test to Kconfig 2021-09-27 17:30:05 +02:00
sys_crypto Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
sys_crypto_aes_ccm Revert "tests: Exclude atxmega-a1u-xpro board due low mem" 2021-08-24 08:35:41 -03:00
sys_fido2_ctap FIDO2 support in RIOT 2021-09-08 15:22:40 +02:00
sys_ptrtag
sys_sema_inv
sys_stdio_semihosting
test_tools treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
thread_basic
thread_cooperation
thread_exit
thread_flags treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
thread_flags_xtimer
thread_float treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
thread_flood
thread_msg
thread_msg_block_race
thread_msg_block_w_queue
thread_msg_block_wo_queue
thread_msg_bus
thread_msg_seq treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
thread_priority_inversion treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
thread_race
thread_zombie
touch_dev
trace
trickle
turo treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
unittests Merge pull request #16765 from benpicco/RIOT_VERSION_CODE 2021-09-22 12:47:35 +02:00
usbus
usbus_cdc_acm_stdio treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
usbus_cdc_ecm
usbus_hid FIDO2 support in RIOT 2021-09-08 15:22:40 +02:00
vfs_plus_stdio
warn_conflict
xfa
xtimer_drift
xtimer_hang treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
xtimer_longterm treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
xtimer_msg
xtimer_msg_receive_timeout
xtimer_mutex_lock_timeout treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
xtimer_now32_overflow
xtimer_now64_continuity
xtimer_now_irq
xtimer_overhead tests: add common Kconfig configuration for sync 2021-01-20 17:36:14 +01:00
xtimer_periodic_wakeup
xtimer_remove
xtimer_reset
xtimer_rmutex_lock_timeout
xtimer_usleep
xtimer_usleep_short
ztimer_msg
ztimer_mutex_lock_timeout treewide: Remove excessive newlines 2021-08-13 19:50:38 +02:00
ztimer_overhead
ztimer_periodic tests/ztimer_periodic: rename counter macro 2021-08-25 08:01:05 +02:00
ztimer_rmutex_lock_timeout
ztimer_underflow
ztimer_xsec
Makefile.boards.netif tests/Makefile.boards.netif: add non-exhaustive list of BOARDs providing netif 2021-08-04 17:09:02 +02:00
Makefile.tests_common
README.md
test_interactive.config

Running and creating tests

There are a number of tests included in RIOT. They are located in the tests folder. These tests allow basic functionality to be verified as well as provide an example of usage.

Implementing automated tests

The goal is to be able to run all tests in a sequential way for as many targets as possible.

As some board can't be reset without a manual trigger tests should be implemented with some kind of synchronization. This can be done in two ways:

  • use test_utils_interactive_sync when uart input/output does not need to be disabled for the test. This is enabled by default.
  • set up the test in a loop so the test script will be able so sync with some kind of start condition in the test.

The module for the first option is test_utils_interactive_sync and is set as a default module in Makefile.tests_common. It can be disabled by setting in the application makefile DISABLE_MODULE += test_utils_interactive_sync. The python test script will adapt to it automatically.

When using the shell module, test_utils_interactive_sync will use the shell itself to synchronize, and will not use test_utils_interactive_sync(); function to synchronize. Some times you will want to synchronize before the start of the script and use test_utils_interactive_sync(); function (e.g.: tests/ps_schedstatistics). For these cases you can disable test_utils_interactive_sync_shell module in the application Makefile: DISABLE_MODULE += test_utils_interactive_sync_shell.

Running automated tests

Some tests can be performed automatically. The test automation scripts are defined in the <test_application>/tests/ folder. They are written in python and interact through the uart with the test application code running on a board to do the validation. It is recommended to flash the board with the test just before running it because some platforms cannot be reset while testing.

From the test application directory run:

BOARD=<board_of_your_choice> make flash test

An automated way of knowing if a test is available is to execute the 'test/available' target from the test application directory. It executes without error if tests run by 'make test' are present.

make test/available

Automated Tests Guidelines

When using pexpect $ is useless for matching the end of a line, instead use \r\n(pexpect end-of-line).

Beware of + and * at the end of patterns. These patterns will always get a minimal match (non-greedy).(pexpect end-of-patterns) This can be an issue when matching groups and using the matched groups to verify some kind of behavior since * could return an empty match and + only a subset.

This is especially prevalent since printf() is buffered so the output might not arrive in a single read to pexpect.

To avoid this make sure to match a non-ambiguous character at the end of the pattern like \r\n, \s, \), etc..

don't:

    child.expect(r'some string: (\d+)')

do:

    child.expect(r'some string: (\d+)\r\n')
    child.expect(r'some string: (\d+)\s')
    child.expect(r'some string: (\d+) ,')

Use expect() instead of assert()

In order to make a test application functional in all cases, use expect() instead of assert(). The former works like the latter, but will still be compiled in if NDEBUG is defined. This is useful to keep a test application working even when compiling with -DNDEBUG, allowing for the code-under-test to be compiled with that flag. Otherwise, the application would force compiling all tested code with assertions enabled. expect() is defined in the header test_utils/expect.h.

Interaction through the uart

Tests implemented with testrunner use the cleanterm target that provides an interaction without adding extra text output or input handling. It can currently be expected to have unmodified line based interaction with the board.

The expected behavior is verified with the test in tests/test_tools.

Tests cannot rely on having on all boards and terminal programs:

  • unbuffered input
  • allowing sending special characters like ctrl+c/ctrl+d

Running tests that require a preliminary manual configuration

Some tests need active monitoring or manual setup steps but still have some automated scripts. The test automation scripts are defined in the <test_application>/tests-with-config/ folder. For running them, follow the setup or analysis documentation and use the test-with-config target.

Running tests that require root privileges

Some tests require root privileges to launch their automated script. In this case, the test automation scripts are defined in the <test_application>/tests-as-root/ folder. For running them, follow the setup or analysis documentation and use the test-as-root target.