1# Copyright (c) 2018 Foundries.io
2#
3# SPDX-License-Identifier: Apache-2.0
4
5from runners.core import ZephyrBinaryRunner
6
7
8def test_runner_imports():
9    # Ensure that all runner modules are imported and returned by
10    # get_runners().
11    #
12    # This is just a basic sanity check against errors introduced by
13    # tree-wide refactorings for runners that don't have their own
14    # test suites.
15    runner_names = set(r.name() for r in ZephyrBinaryRunner.get_runners())
16
17    expected = set((
18        # zephyr-keep-sorted-start
19        'arc-nsim',
20        'blackmagicprobe',
21        'bossac',
22        'canopen',
23        'dediprog',
24        'dfu-util',
25        'ecpprog',
26        'esp32',
27        'ezflashcli',
28        'gd32isp',
29        'hifive1',
30        'intel_adsp',
31        'intel_cyclonev',
32        'jlink',
33        'linkserver',
34        'mdb-hw',
35        'mdb-nsim',
36        'minichlink',
37        'misc-flasher',
38        'native',
39        'nios2',
40        'nrfjprog',
41        'nrfutil',
42        'nxp_s32dbg',
43        'openocd',
44        'probe-rs',
45        'pyocd',
46        'qemu',
47        'renode',
48        'renode-robot',
49        'silabs_commander',
50        'spi_burn',
51        'stm32cubeprogrammer',
52        'stm32flash',
53        'teensy',
54        'trace32',
55        'uf2',
56        'xsdb',
57        'xtensa',
58        # zephyr-keep-sorted-stop
59    ))
60    assert runner_names == expected
61