authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-08-14 00:22:58+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-08-14 07:03:23+02:00
log927bc5562988e7467bcf6e94cf1e2db9c46aa128
tree6e73966f411b042a850aa0cdd4ad45aa11f781a9
parentb6009a7416c7661e09a23661887698ba520f0db6
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

build/test: Add a test-modules step for running all the per-target tests.

This is useful during porting work where you're mainly concerned with tests that e.g. run under QEMU. Combine with the new -Dtest-target-filter for an even more streamlined workflow.

1 files changed, 23 insertions(+), 18 deletions(-)

build.zig+23-18
......@@ -457,7 +457,9 @@ pub fn build(b: *std.Build) !void {
457457 });
458458 test_step.dependOn(test_cases_step);
459459
460 test_step.dependOn(tests.addModuleTests(b, .{
460 const test_modules_step = b.step("test-modules", "Run the per-target module tests");
461
462 test_modules_step.dependOn(tests.addModuleTests(b, .{
461463 .test_filters = test_filters,
462464 .test_target_filters = test_target_filters,
463465 .test_slow_targets = test_slow_targets,
......@@ -472,7 +474,7 @@ pub fn build(b: *std.Build) !void {
472474 .max_rss = 1 * 1024 * 1024 * 1024,
473475 }));
474476
475 test_step.dependOn(tests.addModuleTests(b, .{
477 test_modules_step.dependOn(tests.addModuleTests(b, .{
476478 .test_filters = test_filters,
477479 .test_target_filters = test_target_filters,
478480 .test_slow_targets = test_slow_targets,
......@@ -486,7 +488,7 @@ pub fn build(b: *std.Build) !void {
486488 .skip_libc = skip_libc,
487489 }));
488490
489 test_step.dependOn(tests.addModuleTests(b, .{
491 test_modules_step.dependOn(tests.addModuleTests(b, .{
490492 .test_filters = test_filters,
491493 .test_target_filters = test_target_filters,
492494 .test_slow_targets = test_slow_targets,
......@@ -501,7 +503,7 @@ pub fn build(b: *std.Build) !void {
501503 .no_builtin = true,
502504 }));
503505
504 test_step.dependOn(tests.addModuleTests(b, .{
506 test_modules_step.dependOn(tests.addModuleTests(b, .{
505507 .test_filters = test_filters,
506508 .test_target_filters = test_target_filters,
507509 .test_slow_targets = test_slow_targets,
......@@ -516,20 +518,7 @@ pub fn build(b: *std.Build) !void {
516518 .no_builtin = true,
517519 }));
518520
519 test_step.dependOn(tests.addCompareOutputTests(b, test_filters, optimization_modes));
520 test_step.dependOn(tests.addStandaloneTests(
521 b,
522 optimization_modes,
523 enable_macos_sdk,
524 enable_ios_sdk,
525 enable_symlinks_windows,
526 ));
527 test_step.dependOn(tests.addCAbiTests(b, skip_non_native, skip_release));
528 test_step.dependOn(tests.addLinkTests(b, enable_macos_sdk, enable_ios_sdk, enable_symlinks_windows));
529 test_step.dependOn(tests.addStackTraceTests(b, test_filters, optimization_modes));
530 test_step.dependOn(tests.addCliTests(b));
531 test_step.dependOn(tests.addAssembleAndLinkTests(b, test_filters, optimization_modes));
532 test_step.dependOn(tests.addModuleTests(b, .{
521 test_modules_step.dependOn(tests.addModuleTests(b, .{
533522 .test_filters = test_filters,
534523 .test_target_filters = test_target_filters,
535524 .test_slow_targets = test_slow_targets,
......@@ -545,6 +534,22 @@ pub fn build(b: *std.Build) !void {
545534 .max_rss = 5029889638,
546535 }));
547536
537 test_step.dependOn(test_modules_step);
538
539 test_step.dependOn(tests.addCompareOutputTests(b, test_filters, optimization_modes));
540 test_step.dependOn(tests.addStandaloneTests(
541 b,
542 optimization_modes,
543 enable_macos_sdk,
544 enable_ios_sdk,
545 enable_symlinks_windows,
546 ));
547 test_step.dependOn(tests.addCAbiTests(b, skip_non_native, skip_release));
548 test_step.dependOn(tests.addLinkTests(b, enable_macos_sdk, enable_ios_sdk, enable_symlinks_windows));
549 test_step.dependOn(tests.addStackTraceTests(b, test_filters, optimization_modes));
550 test_step.dependOn(tests.addCliTests(b));
551 test_step.dependOn(tests.addAssembleAndLinkTests(b, test_filters, optimization_modes));
552
548553 try addWasiUpdateStep(b, version);
549554
550555 const update_mingw_step = b.step("update-mingw", "Update zig's bundled mingw");