blob: 6e34927c909ec97ef9d83cb2a2cea92afe84971d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#
# SPDX-License-Identifier: MIT
#
import uuid
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import bitbake
class SysrootTests(OESelftestTestCase):
def test_sysroot_cleanup(self):
"""
Build sysroot test which depends on virtual/sysroot-test for one machine,
switch machine, switch provider of virtual/sysroot-test and check that the
sysroot is correctly cleaned up. The files in the two providers overlap
so can cause errors if the sysroot code doesn't function correctly.
Yes, sysroot-test should be machine specific really to avoid this, however
the sysroot cleanup should also work [YOCTO #13702].
"""
uuid1 = uuid.uuid4()
uuid2 = uuid.uuid4()
self.write_config("""
PREFERRED_PROVIDER_virtual/sysroot-test = "sysroot-test-arch1"
MACHINE = "qemux86"
TESTSTRING_pn-sysroot-test-arch1 = "%s"
TESTSTRING_pn-sysroot-test-arch2 = "%s"
""" % (uuid1, uuid2))
bitbake("sysroot-test")
self.write_config("""
PREFERRED_PROVIDER_virtual/sysroot-test = "sysroot-test-arch2"
MACHINE = "qemux86copy"
TESTSTRING_pn-sysroot-test-arch1 = "%s"
TESTSTRING_pn-sysroot-test-arch2 = "%s"
""" % (uuid1, uuid2))
bitbake("sysroot-test")
|