diff --git a/tests/test_examples.py b/tests/test_examples.py index 994eb8c0..9e2b7cc0 100644 --- a/tests/test_examples.py +++ b/tests/test_examples.py @@ -12,10 +12,9 @@ # See the License for the specific language governing permissions and # limitations under the License. +import os import random from glob import glob -from os import listdir, walk -from os.path import basename, dirname, getsize, isdir, isfile, join, normpath import pytest @@ -32,24 +31,26 @@ def pytest_generate_tests(metafunc): examples_dirs = [] # repo examples - examples_dirs.append(normpath(join(dirname(__file__), "..", "examples"))) + examples_dirs.append( + os.path.normpath(os.path.join(os.path.dirname(__file__), "..", "examples")) + ) # dev/platforms for pkg in PlatformPackageManager().get_installed(): p = PlatformFactory.new(pkg) - examples_dir = join(p.get_dir(), "examples") - assert isdir(examples_dir) - examples_dirs.append(examples_dir) + examples_dir = os.path.join(p.get_dir(), "examples") + if os.path.isdir(examples_dir): + examples_dirs.append(examples_dir) project_dirs = [] for examples_dir in examples_dirs: candidates = {} - for root, _, files in walk(examples_dir): + for root, _, files in os.walk(examples_dir): if "platformio.ini" not in files or ".skiptest" in files: continue if "zephyr-" in root and PY2: continue - group = basename(root) + group = os.path.basename(root) if "-" in group: group = group.split("-", 1)[0] if group not in candidates: @@ -67,7 +68,7 @@ def test_run(pioproject_dir): with fs.cd(pioproject_dir): config = ProjectConfig() build_dir = config.get_optional_dir("build") - if isdir(build_dir): + if os.path.isdir(build_dir): fs.rmtree(build_dir) env_names = config.envs() @@ -77,18 +78,18 @@ def test_run(pioproject_dir): if result["returncode"] != 0: pytest.fail(str(result)) - assert isdir(build_dir) + assert os.path.isdir(build_dir) # check .elf file - for item in listdir(build_dir): - if not isdir(item): + for item in os.listdir(build_dir): + if not os.path.isdir(item): continue - assert isfile(join(build_dir, item, "firmware.elf")) + assert os.path.isfile(os.path.join(build_dir, item, "firmware.elf")) # check .hex or .bin files firmwares = [] for ext in ("bin", "hex"): - firmwares += glob(join(build_dir, item, "firmware*.%s" % ext)) + firmwares += glob(os.path.join(build_dir, item, "firmware*.%s" % ext)) if not firmwares: pytest.fail("Missed firmware file") for firmware in firmwares: - assert getsize(firmware) > 0 + assert os.path.getsize(firmware) > 0