mirror of
https://github.com/espressif/esp-idf.git
synced 2025-10-02 19:54:56 +00:00
timer: example migrate to pytest
This commit is contained in:
24
examples/peripherals/timer_group/pytest_timer_group.py
Normal file
24
examples/peripherals/timer_group/pytest_timer_group.py
Normal file
@@ -0,0 +1,24 @@
|
||||
# SPDX-FileCopyrightText: 2021 Espressif Systems (Shanghai) CO LTD
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
|
||||
import pytest
|
||||
from pytest_embedded.dut import Dut
|
||||
|
||||
|
||||
@pytest.mark.esp32
|
||||
@pytest.mark.esp32s2
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c3
|
||||
@pytest.mark.generic
|
||||
def test_timer_group_example(dut: Dut): # type: ignore
|
||||
dut.expect(r'Init timer with auto-reload', timeout=5)
|
||||
res = dut.expect(r'Timer auto reloaded, count value in ISR: (\d+)', timeout=5)
|
||||
reloaded_count = res.group(1).decode('utf8')
|
||||
assert 0 <= int(reloaded_count) < 10
|
||||
|
||||
alarm_increase_step = 500000
|
||||
dut.expect(r'Init timer without auto-reload')
|
||||
for i in range(1, 5):
|
||||
res = dut.expect(r'Timer alarmed at (\d+)', timeout=3)
|
||||
alarm_count = res.group(1).decode('utf8')
|
||||
assert (i * alarm_increase_step - 10) < int(alarm_count) < (i * alarm_increase_step + 10)
|
Reference in New Issue
Block a user