1*** Variables ***
2${PLATFROM}                     @platforms/boards/stm32f7_discovery-bb.repl
3${BIN}                          @https://dl.antmicro.com/projects/renode/stm32f746g_disco--zephyr-custom_gpio_button.elf-s_302336-4b097ec2f848449980149053eafcbae55beeacdb
4${LOG_KWD_START}                INTERRUPT_STARTED
5${LOG_KWD_END}                  INTERRUPT_ENDED
6
7*** Test Cases ***
8Should Invoke Interrupt Hooks
9    Execute Command             mach create
10    Execute Command             machine LoadPlatformDescription ${PLATFROM}
11    Execute Command             sysbus LoadELF ${BIN}
12
13    Execute Command             sysbus.cpu AddHookAtInterruptBegin 'self.Log(LogLevel.Info, "${LOG_KWD_START}")'
14    Execute Command             sysbus.cpu AddHookAtInterruptEnd 'self.Log(LogLevel.Info, "${LOG_KWD_END}")'
15
16    Create Log Tester           1
17    Start Emulation
18
19    Should Not Be In Log        ${LOG_KWD_START}
20    Should Not Be In Log        ${LOG_KWD_END}
21
22    Execute Command             sysbus.gpioPortI OnGPIO 11 true  # This presses the button
23    Wait For Log Entry          ${LOG_KWD_START}
24    Wait For Log Entry          ${LOG_KWD_END}
25
26    Should Not Be In Log        ${LOG_KWD_START}
27    Should Not Be In Log        ${LOG_KWD_END}
28