1*** Variables ***
2${SYSTEMC_BINARY}                   @https://dl.antmicro.com/projects/renode/x64-systemc--multiple-peripherals.elf-s_1045808-e4358ec1f6d94e52e0d946c5c6acb80e157523b5
3${ZEPHYR_BINARY}                    @https://dl.antmicro.com/projects/renode/systemc-examples-zephyr-multiple-peripherals-stm32f401_mini.elf-s_574416-8bc080d4e6c922e7c89a233d1f74f6d9bcb45274
4${PLATFORM}                         @tests/platforms/systemc/multiple-peripherals/multiple-peripherals.repl
5${UART}                             sysbus.usart1
6
7*** Keywords ***
8Create Machine
9    Execute Command                 mach create
10    Execute Command                 machine LoadPlatformDescription ${PLATFORM}
11    Execute Command                 sysbus.systemc_peripheral_A SystemCExecutablePath ${SYSTEMC_BINARY}
12    Execute Command                 sysbus.systemc_peripheral_B SystemCExecutablePath ${SYSTEMC_BINARY}
13    Execute Command                 sysbus.systemc_peripheral_C SystemCExecutablePath ${SYSTEMC_BINARY}
14    Execute Command                 sysbus LoadELF ${ZEPHYR_BINARY}
15
16*** Test Cases ***
17Should Run The Multiple Peripherals Example
18    [Tags]                          skip_windows    skip_osx
19    Create Machine
20    Create Terminal Tester          ${UART}
21    Start Emulation
22
23    Wait For Line On Uart           Example complete!
24