authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-12-28 23:06:47-08:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-12-28 23:06:47-08:00
log7e1e771f0260b5fd0a5cd2f7e3d669979d8f141b
tree1e8f111c64de7959db6a1c934466e6f153a5a5e8
parent79a51511555e88c05efb2e695fc41910b8fdc88d

stage2 tests: fix incorrect path used for execution binary


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

src/test.zig+18-8
......@@ -762,15 +762,16 @@ pub const TestContext = struct {
762762 },
763763 .Execution => |expected_stdout| {
764764 update_node.setEstimatedTotalItems(4);
765
766 var argv = std.ArrayList([]const u8).init(allocator);
767 defer argv.deinit();
768
765769 var exec_result = x: {
766770 var exec_node = update_node.start("execute", 0);
767771 exec_node.activate();
768772 defer exec_node.end();
769773
770 var argv = std.ArrayList([]const u8).init(allocator);
771 defer argv.deinit();
772
773 const exe_path = try std.fmt.allocPrint(arena, "." ++ std.fs.path.sep_str ++ "{s}", .{bin_name});
774 const exe_path = try emit_directory.join(arena, &[_][]const u8{bin_name});
774775 if (case.object_format != null and case.object_format.? == .c) {
775776 try argv.appendSlice(&[_][]const u8{
776777 std.testing.zig_exe_path, "run", exe_path, "-lc",
......@@ -837,16 +838,18 @@ pub const TestContext = struct {
837838 switch (exec_result.term) {
838839 .Exited => |code| {
839840 if (code != 0) {
840 std.debug.print("{s}: execution exited with code {d}. stderr:\n{s}", .{
841 case.name, code, exec_result.stderr,
841 std.debug.print("\n{s}\n{s}: execution exited with code {d}:\n", .{
842 exec_result.stderr, case.name, code,
842843 });
844 dumpArgs(argv.items);
843845 return error.ZigTestFailed;
844846 }
845847 },
846848 else => {
847 std.debug.print("{s}: execution crashed. stderr:\n{s}", .{
848 case.name, exec_result.stderr,
849 std.debug.print("\n{s}\n{s}: execution crashed:\n", .{
850 exec_result.stderr, case.name,
849851 });
852 dumpArgs(argv.items);
850853 return error.ZigTestFailed;
851854 },
852855 }
......@@ -967,3 +970,10 @@ pub const TestContext = struct {
967970 }
968971 }
969972};
973
974fn dumpArgs(argv: []const []const u8) void {
975 for (argv) |arg| {
976 std.debug.print("{s} ", .{arg});
977 }
978 std.debug.print("\n", .{});
979}
\ No newline at end of file