summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2023-03-12 11:35:24 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-03-13 17:35:22 +0000
commit2ba8593b953686ad86987702899276b21ca065cd (patch)
treefcbf738c614f9b7fa985b3454649b0570a9bea61
parent24206254147dc0c8e50d74d6693a5a4c36b369f0 (diff)
downloadpoky-2ba8593b953686ad86987702899276b21ca065cd.tar.gz
oeqa/selftest/sstate: Split classes to allow more parallelism
By splitting the single class into multiple classes, it allows more parallelism in the execution. These tests don't have interdependencies that benefit from sstate reuse or anything like that so this makes sense to improve overall test execution time if/where possible. (From OE-Core rev: 9dbc2f4ebbde47b1c997948a9690ffb8eb29b552) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/lib/oeqa/selftest/cases/sstatetests.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/meta/lib/oeqa/selftest/cases/sstatetests.py b/meta/lib/oeqa/selftest/cases/sstatetests.py
index aedc35c262..e978313c61 100644
--- a/meta/lib/oeqa/selftest/cases/sstatetests.py
+++ b/meta/lib/oeqa/selftest/cases/sstatetests.py
@@ -217,6 +217,7 @@ class SStateTests(SStateBase):
217 result = runCmd('git add bar.txt; git commit -asm "add bar"', cwd=srcdir) 217 result = runCmd('git add bar.txt; git commit -asm "add bar"', cwd=srcdir)
218 bitbake("dbus-wait-test -c unpack") 218 bitbake("dbus-wait-test -c unpack")
219 219
220class SStateCreation(SStateBase):
220 def test_sstate_creation_distro_specific_pass(self): 221 def test_sstate_creation_distro_specific_pass(self):
221 self.run_test_sstate_creation(['binutils-cross-'+ self.tune_arch, 'binutils-native'], distro_specific=True, distro_nonspecific=False, temp_sstate_location=True) 222 self.run_test_sstate_creation(['binutils-cross-'+ self.tune_arch, 'binutils-native'], distro_specific=True, distro_nonspecific=False, temp_sstate_location=True)
222 223
@@ -229,6 +230,7 @@ class SStateTests(SStateBase):
229 def test_sstate_creation_distro_nonspecific_fail(self): 230 def test_sstate_creation_distro_nonspecific_fail(self):
230 self.run_test_sstate_creation(['linux-libc-headers'], distro_specific=True, distro_nonspecific=False, temp_sstate_location=True, should_pass=False) 231 self.run_test_sstate_creation(['linux-libc-headers'], distro_specific=True, distro_nonspecific=False, temp_sstate_location=True, should_pass=False)
231 232
233class SStateCleanup(SStateBase):
232 def test_cleansstate_task_distro_specific_nonspecific(self): 234 def test_cleansstate_task_distro_specific_nonspecific(self):
233 targets = ['binutils-cross-'+ self.tune_arch, 'binutils-native'] 235 targets = ['binutils-cross-'+ self.tune_arch, 'binutils-native']
234 targets.append('linux-libc-headers') 236 targets.append('linux-libc-headers')
@@ -242,7 +244,7 @@ class SStateTests(SStateBase):
242 targets.append('linux-libc-headers') 244 targets.append('linux-libc-headers')
243 self.run_test_cleansstate_task(targets, distro_specific=True, distro_nonspecific=False, temp_sstate_location=True) 245 self.run_test_cleansstate_task(targets, distro_specific=True, distro_nonspecific=False, temp_sstate_location=True)
244 246
245 247class SStateDistroTests(SStateBase):
246 def test_rebuild_distro_specific_sstate_cross_native_targets(self): 248 def test_rebuild_distro_specific_sstate_cross_native_targets(self):
247 self.run_test_rebuild_distro_specific_sstate(['binutils-cross-' + self.tune_arch, 'binutils-native'], temp_sstate_location=True) 249 self.run_test_rebuild_distro_specific_sstate(['binutils-cross-' + self.tune_arch, 'binutils-native'], temp_sstate_location=True)
248 250
@@ -252,7 +254,7 @@ class SStateTests(SStateBase):
252 def test_rebuild_distro_specific_sstate_native_target(self): 254 def test_rebuild_distro_specific_sstate_native_target(self):
253 self.run_test_rebuild_distro_specific_sstate(['binutils-native'], temp_sstate_location=True) 255 self.run_test_rebuild_distro_specific_sstate(['binutils-native'], temp_sstate_location=True)
254 256
255 257class SStateCacheManagement(SStateBase):
256 # Test the sstate-cache-management script. Each element in the global_config list is used with the corresponding element in the target_config list 258 # Test the sstate-cache-management script. Each element in the global_config list is used with the corresponding element in the target_config list
257 # global_config elements are expected to not generate any sstate files that would be removed by sstate-cache-management.sh (such as changing the value of MACHINE) 259 # global_config elements are expected to not generate any sstate files that would be removed by sstate-cache-management.sh (such as changing the value of MACHINE)
258 def run_test_sstate_cache_management_script(self, target, global_config=[''], target_config=[''], ignore_patterns=[]): 260 def run_test_sstate_cache_management_script(self, target, global_config=[''], target_config=[''], ignore_patterns=[]):
@@ -331,6 +333,7 @@ class SStateTests(SStateBase):
331 target_config.append('') 333 target_config.append('')
332 self.run_test_sstate_cache_management_script('m4', global_config, target_config, ignore_patterns=['populate_lic']) 334 self.run_test_sstate_cache_management_script('m4', global_config, target_config, ignore_patterns=['populate_lic'])
333 335
336class SStateHashSameSigs(SStateBase):
334 def test_sstate_32_64_same_hash(self): 337 def test_sstate_32_64_same_hash(self):
335 """ 338 """
336 The sstate checksums for both native and target should not vary whether 339 The sstate checksums for both native and target should not vary whether
@@ -416,6 +419,7 @@ BB_SIGNATURE_HANDLER = "OEBasicHash"
416 self.maxDiff = None 419 self.maxDiff = None
417 self.assertCountEqual(files1, files2) 420 self.assertCountEqual(files1, files2)
418 421
422class SStateHashSameSigs2(SStateBase):
419 def test_sstate_allarch_samesigs(self): 423 def test_sstate_allarch_samesigs(self):
420 """ 424 """
421 The sstate checksums of allarch packages should be independent of whichever 425 The sstate checksums of allarch packages should be independent of whichever
@@ -464,7 +468,7 @@ BB_SIGNATURE_HANDLER = "OEBasicHash"
464""" 468"""
465 self.sstate_common_samesigs(configA, configB) 469 self.sstate_common_samesigs(configA, configB)
466 470
467 471class SStateHashSameSigs3(SStateBase):
468 def test_sstate_sametune_samesigs(self): 472 def test_sstate_sametune_samesigs(self):
469 """ 473 """
470 The sstate checksums of two identical machines (using the same tune) should be the 474 The sstate checksums of two identical machines (using the same tune) should be the
@@ -552,7 +556,7 @@ BB_SIGNATURE_HANDLER = "OEBasicHash"
552 self.maxDiff = None 556 self.maxDiff = None
553 self.assertCountEqual(files1, files2) 557 self.assertCountEqual(files1, files2)
554 558
555 559class SStateHashSameSigs4(SStateBase):
556 def test_sstate_noop_samesigs(self): 560 def test_sstate_noop_samesigs(self):
557 """ 561 """
558 The sstate checksums of two builds with these variables changed or 562 The sstate checksums of two builds with these variables changed or