mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 12:59:02 +02:00
oeqa/selftest/externalsrc: add test for srctree_hash_files
(From OE-Core rev: 7b9728e5b8bdf1193c1304ec3beeca4b5bf8d2da) Signed-off-by: Peter Marko <peter.marko@siemens.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
f4d5ffd4d8
commit
cc1c4506ba
44
meta/lib/oeqa/selftest/cases/externalsrc.py
Normal file
44
meta/lib/oeqa/selftest/cases/externalsrc.py
Normal file
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# Copyright OpenEmbedded Contributors
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
import os
|
||||
import shutil
|
||||
import tempfile
|
||||
|
||||
from oeqa.selftest.case import OESelftestTestCase
|
||||
from oeqa.utils.commands import get_bb_var, runCmd
|
||||
|
||||
class ExternalSrc(OESelftestTestCase):
|
||||
# test that srctree_hash_files does not crash
|
||||
# we should be actually checking do_compile[file-checksums] but oeqa currently does not support it
|
||||
# so we check only that a recipe with externalsrc can be parsed
|
||||
def test_externalsrc_srctree_hash_files(self):
|
||||
test_recipe = "git-submodule-test"
|
||||
git_url = "git://git.yoctoproject.org/git-submodule-test"
|
||||
externalsrc_dir = tempfile.TemporaryDirectory(prefix="externalsrc").name
|
||||
|
||||
self.write_config(
|
||||
"""
|
||||
INHERIT += "externalsrc"
|
||||
EXTERNALSRC:pn-%s = "%s"
|
||||
""" % (test_recipe, externalsrc_dir)
|
||||
)
|
||||
|
||||
# test with git without submodules
|
||||
runCmd('git clone %s %s' % (git_url, externalsrc_dir))
|
||||
os.unlink(externalsrc_dir + "/.gitmodules")
|
||||
open(".gitmodules", 'w').close() # local file .gitmodules in cwd should not affect externalsrc parsing
|
||||
self.assertEqual(get_bb_var("S", test_recipe), externalsrc_dir, msg = "S does not equal to EXTERNALSRC")
|
||||
os.unlink(".gitmodules")
|
||||
|
||||
# test with git with submodules
|
||||
runCmd('git checkout .gitmodules', cwd=externalsrc_dir)
|
||||
runCmd('git submodule update --init --recursive', cwd=externalsrc_dir)
|
||||
self.assertEqual(get_bb_var("S", test_recipe), externalsrc_dir, msg = "S does not equal to EXTERNALSRC")
|
||||
|
||||
# test without git
|
||||
shutil.rmtree(os.path.join(externalsrc_dir, ".git"))
|
||||
self.assertEqual(get_bb_var("S", test_recipe), externalsrc_dir, msg = "S does not equal to EXTERNALSRC")
|
Loading…
Reference in New Issue
Block a user