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