poky/meta/lib/oeqa/selftest/cases/yoctotestresultsquerytests.py
Alexis Lothoré ffaee6bd48 oeqa/selftest: add test for yocto_testresults_query.py
Add some tests for new yocto_testresults_query.py helper. First test is taken
from yocto-autobuilder-helper feature which has moved in yocto_testresults_query

(From OE-Core rev: 9ce28f685e4282d81f179877cbafd0a52fa887bd)

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-26 11:59:52 +00:00

40 lines
1.4 KiB
Python

#
# Copyright OpenEmbedded Contributors
#
# SPDX-License-Identifier: MIT
#
import os
import sys
import subprocess
import shutil
from oeqa.selftest.case import OESelftestTestCase
from yocto_testresults_query import get_sha1, create_workdir
basepath = os.path.abspath(os.path.dirname(__file__) + '/../../../../../')
lib_path = basepath + '/scripts/lib'
sys.path = sys.path + [lib_path]
class TestResultsQueryTests(OESelftestTestCase):
def test_get_sha1(self):
test_data_get_sha1 = [
{"input": "yocto-4.0", "expected": "00cfdde791a0176c134f31e5a09eff725e75b905"},
{"input": "4.1_M1", "expected": "95066dde6861ee08fdb505ab3e0422156cc24fae"},
]
for data in test_data_get_sha1:
test_name = data["input"]
with self.subTest(f"Test SHA1 from {test_name}"):
self.assertEqual(
get_sha1(basepath, data["input"]), data["expected"])
def test_create_workdir(self):
workdir = create_workdir()
try:
url = subprocess.check_output(
["git", "-C", workdir, "remote", "get-url", "origin"]).strip().decode("utf-8")
except:
shutil.rmtree(workdir, ignore_errors=True)
self.fail(f"Can not execute git commands in {workdir}")
shutil.rmtree(workdir)
self.assertEqual(url, "git://git.yoctoproject.org/yocto-testresults")