Merge pull request #12694 from miri64/tests/enh/periph_cpuid

tests/periph_cpuid: read CPUID_LEN from app instead of environment
This commit is contained in:
Alexandre Abadie 2019-11-12 19:57:22 +01:00 committed by GitHub
commit a42bdaeecd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 6 additions and 27 deletions

View File

@ -3,24 +3,3 @@ include ../Makefile.tests_common
FEATURES_REQUIRED = periph_cpuid
include $(RIOTBASE)/Makefile.include
# Determine the CPUID_LEN based on the current architecture or CPU used in the
# build system.
ifneq (,$(filter arch_esp32,$(FEATURES_USED)))
CPUID_LEN = 7
endif
ifneq (,$(filter cc2538 efm32 ezr32wg nrf5%,$(CPU)))
CPUID_LEN = 8
endif
ifneq (,$(filter cc26x0 lpc1768 sam%,$(CPU)))
CPUID_LEN = 16
endif
ifneq (,$(filter fe310 kinetis stm32%,$(CPU)))
CPUID_LEN = 12
endif
# Use 4 as default as it is the minimum for all supported CPUs.
CPUID_LEN ?= 4
# Export CPUID_LEN env variable to the Python script.
export CPUID_LEN

View File

@ -32,6 +32,8 @@ int main(void)
puts("Test for the CPUID driver");
puts("This test is reading out the CPUID of the platforms CPU\n");
printf("CPUID_LEN: %u\n", CPUID_LEN);
/* read the CPUID */
cpuid_get(id);

View File

@ -6,19 +6,17 @@
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
import os
import sys
from testrunner import run
CPUID_LEN = int(os.getenv('CPUID_LEN') or 4)
def testfunc(child):
child.expect_exact('Test for the CPUID driver')
child.expect_exact('This test is reading out the CPUID of the platforms CPU')
expected = 'CPUID:' + CPUID_LEN * r' 0x[0-9a-fA-F]{2}'
child.expect(expected)
child.expect(r'CPUID_LEN: (\d+)')
cpuid_len = int(child.match.group(1))
child.expect(r'CPUID:( 0x[0-9a-fA-F]{2})+\s*$')
assert child.match.group(0).count(' 0x') == cpuid_len
if __name__ == "__main__":