Commit 1fd24791a7

Andrew Kelley <andrew@ziglang.org>
2019-09-03 16:05:19
rename compare-panic to compare-stack-traces
1 parent a19e73d
test/compare_panic.zig → test/compare_traces.zig
@@ -3,7 +3,7 @@ const std = @import("std");
 const os = std.os;
 const tests = @import("tests.zig");
 
-pub fn addCases(cases: *tests.ComparePanicContext) void {
+pub fn addCases(cases: *tests.CompareStackTracesContext) void {
     const source_return =
         \\const std = @import("std");
         \\
@@ -46,77 +46,77 @@ pub fn addCases(cases: *tests.ComparePanicContext) void {
             cases.addCase(
                 "return",
                 source_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in main (test)
                     \\
                 ,
-                    // release-safe
-                    \\error: TheSkyIsFalling
+                // release-safe
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in std.special.posixCallMainAndExit (test)
                     \\
                 ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
             cases.addCase(
                 "try return",
                 source_try_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in foo (test)
                     \\source.zig:8:5: [address] in main (test)
                     \\
                 ,
-                    // release-safe
-                    \\error: TheSkyIsFalling
+                // release-safe
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in std.special.posixCallMainAndExit (test)
                     \\source.zig:8:5: [address] in std.special.posixCallMainAndExit (test)
                     \\
                 ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
             cases.addCase(
                 "try try return return",
                 source_try_try_return_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:12:5: [address] in make_error (test)
                     \\source.zig:8:5: [address] in bar (test)
                     \\source.zig:4:5: [address] in foo (test)
                     \\source.zig:16:5: [address] in main (test)
                     \\
                 ,
-                    // release-safe
-                    \\error: TheSkyIsFalling
+                // release-safe
+                \\error: TheSkyIsFalling
                     \\source.zig:12:5: [address] in std.special.posixCallMainAndExit (test)
                     \\source.zig:8:5: [address] in std.special.posixCallMainAndExit (test)
                     \\source.zig:4:5: [address] in std.special.posixCallMainAndExit (test)
                     \\source.zig:16:5: [address] in std.special.posixCallMainAndExit (test)
                     \\
                 ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
@@ -125,77 +125,77 @@ pub fn addCases(cases: *tests.ComparePanicContext) void {
             cases.addCase(
                 "return",
                 source_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in _main.0 (test.o)
                     \\
                 ,
-                    // release-safe
-                    \\error: TheSkyIsFalling
+                // release-safe
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in _main (test.o)
                     \\
                 ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
             cases.addCase(
                 "try return",
                 source_try_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in _foo (test.o)
                     \\source.zig:8:5: [address] in _main.0 (test.o)
                     \\
                 ,
-                    // release-safe
-                    \\error: TheSkyIsFalling
+                // release-safe
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in _main (test.o)
                     \\source.zig:8:5: [address] in _main (test.o)
                     \\
                 ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
             cases.addCase(
                 "try try return return",
                 source_try_try_return_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:12:5: [address] in _make_error (test.o)
                     \\source.zig:8:5: [address] in _bar (test.o)
                     \\source.zig:4:5: [address] in _foo (test.o)
                     \\source.zig:16:5: [address] in _main.0 (test.o)
                     \\
                 ,
-                    // release-safe
-                    \\error: TheSkyIsFalling
+                // release-safe
+                \\error: TheSkyIsFalling
                     \\source.zig:12:5: [address] in _main (test.o)
                     \\source.zig:8:5: [address] in _main (test.o)
                     \\source.zig:4:5: [address] in _main (test.o)
                     \\source.zig:16:5: [address] in _main (test.o)
                     \\
                 ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
@@ -204,70 +204,67 @@ pub fn addCases(cases: *tests.ComparePanicContext) void {
             cases.addCase(
                 "return",
                 source_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in main (test.obj)
                     \\
                 ,
-                    // release-safe
-                    // --disabled-- results in segmenetation fault
-                    ""
-                ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-safe
+                // --disabled-- results in segmenetation fault
+                "",
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
             cases.addCase(
                 "try return",
                 source_try_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:4:5: [address] in foo (test.obj)
                     \\source.zig:8:5: [address] in main (test.obj)
                     \\
                 ,
-                    // release-safe
-                    // --disabled-- results in segmenetation fault
-                    ""
-                ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-safe
+                // --disabled-- results in segmenetation fault
+                "",
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
             cases.addCase(
                 "try try return return",
                 source_try_try_return_return,
-                [][]const u8{
-                    // debug
-                    \\error: TheSkyIsFalling
+                [_][]const u8{
+                // debug
+                \\error: TheSkyIsFalling
                     \\source.zig:12:5: [address] in make_error (test.obj)
                     \\source.zig:8:5: [address] in bar (test.obj)
                     \\source.zig:4:5: [address] in foo (test.obj)
                     \\source.zig:16:5: [address] in main (test.obj)
                     \\
                 ,
-                    // release-safe
-                    // --disabled-- results in segmenetation fault
-                    ""
-                ,
-                    // release-fast
-                    \\error: TheSkyIsFalling
+                // release-safe
+                // --disabled-- results in segmenetation fault
+                "",
+                // release-fast
+                \\error: TheSkyIsFalling
                     \\
                 ,
-                    // release-small
-                    \\error: TheSkyIsFalling
+                // release-small
+                \\error: TheSkyIsFalling
                     \\
                 },
             );
test/tests.zig
@@ -16,7 +16,7 @@ const LibExeObjStep = build.LibExeObjStep;
 
 const compare_output = @import("compare_output.zig");
 const standalone = @import("standalone.zig");
-const compare_panic = @import("compare_panic.zig");
+const compare_panic = @import("compare_traces.zig");
 const compile_errors = @import("compile_errors.zig");
 const assemble_and_link = @import("assemble_and_link.zig");
 const runtime_safety = @import("runtime_safety.zig");
@@ -58,11 +58,11 @@ pub fn addCompareOutputTests(b: *build.Builder, test_filter: ?[]const u8, modes:
     return cases.step;
 }
 
-pub fn addComparePanicTests(b: *build.Builder, test_filter: ?[]const u8, modes: []const Mode) *build.Step {
-    const cases = b.allocator.create(ComparePanicContext) catch unreachable;
-    cases.* = ComparePanicContext{
+pub fn addCompareStackTracesTests(b: *build.Builder, test_filter: ?[]const u8, modes: []const Mode) *build.Step {
+    const cases = b.allocator.create(CompareStackTracesContext) catch unreachable;
+    cases.* = CompareStackTracesContext{
         .b = b,
-        .step = b.step("test-compare-panic", "Run the compare panic tests"),
+        .step = b.step("test-compare-traces", "Run the compare stack traces tests"),
         .test_index = 0,
         .test_filter = test_filter,
         .modes = modes,
@@ -565,7 +565,7 @@ pub const CompareOutputContext = struct {
     }
 };
 
-pub const ComparePanicContext = struct {
+pub const CompareStackTracesContext = struct {
     b: *build.Builder,
     step: *build.Step,
     test_index: usize,
@@ -575,7 +575,7 @@ pub const ComparePanicContext = struct {
     const Expect = [@typeInfo(Mode).Enum.fields.len][]const u8;
 
     pub fn addCase(
-        self: *ComparePanicContext,
+        self: *CompareStackTracesContext,
         name: []const u8,
         source: []const u8,
         expect: Expect,
@@ -584,14 +584,14 @@ pub const ComparePanicContext = struct {
 
         const source_pathname = fs.path.join(
             b.allocator,
-            [][]const u8{ b.cache_root, "source.zig" },
+            [_][]const u8{ b.cache_root, "source.zig" },
         ) catch unreachable;
 
         for (self.modes) |mode| {
             const expect_for_mode = expect[@enumToInt(mode)];
             if (expect_for_mode.len == 0) continue;
 
-            const annotated_case_name = fmt.allocPrint(self.b.allocator, "{} {} ({})", "compare-panic", name, @tagName(mode)) catch unreachable;
+            const annotated_case_name = fmt.allocPrint(self.b.allocator, "{} {} ({})", "compare-stack-traces", name, @tagName(mode)) catch unreachable;
             if (self.test_filter) |filter| {
                 if (mem.indexOf(u8, annotated_case_name, filter) == null) continue;
             }
@@ -616,7 +616,7 @@ pub const ComparePanicContext = struct {
 
     const RunAndCompareStep = struct {
         step: build.Step,
-        context: *ComparePanicContext,
+        context: *CompareStackTracesContext,
         exe: *LibExeObjStep,
         name: []const u8,
         mode: Mode,
@@ -624,7 +624,7 @@ pub const ComparePanicContext = struct {
         test_index: usize,
 
         pub fn create(
-            context: *ComparePanicContext,
+            context: *CompareStackTracesContext,
             exe: *LibExeObjStep,
             name: []const u8,
             mode: Mode,
@@ -633,7 +633,7 @@ pub const ComparePanicContext = struct {
             const allocator = context.b.allocator;
             const ptr = allocator.create(RunAndCompareStep) catch unreachable;
             ptr.* = RunAndCompareStep{
-                .step = build.Step.init("PanicCompareOutputStep", allocator, make),
+                .step = build.Step.init("StackTraceCompareOutputStep", allocator, make),
                 .context = context,
                 .exe = exe,
                 .name = name,
@@ -718,8 +718,8 @@ pub const ComparePanicContext = struct {
                 var it = mem.separate(bytes, "\n");
                 process_lines: while (it.next()) |line| {
                     if (line.len == 0) continue;
-                    const delims = []const []const u8{ ":", ":", ":", " in " };
-                    var marks = []usize{0} ** 4;
+                    const delims = [_][]const u8{ ":", ":", ":", " in " };
+                    var marks = [_]usize{0} ** 4;
                     // offset search past `[drive]:` on windows
                     var pos: usize = if (builtin.os == .windows) 2 else 0;
                     for (delims) |delim, i| {
build.zig
@@ -138,13 +138,13 @@ pub fn build(b: *Builder) !void {
 
     test_step.dependOn(tests.addCompareOutputTests(b, test_filter, modes));
     test_step.dependOn(tests.addStandaloneTests(b, test_filter, modes));
-    test_step.dependOn(tests.addComparePanicTests(b, test_filter, modes));
+    test_step.dependOn(tests.addCompareStackTracesTests(b, test_filter, modes));
     test_step.dependOn(tests.addCliTests(b, test_filter, modes));
-    test_step.dependOn(tests.addCompileErrorTests(b, test_filter, modes));
     test_step.dependOn(tests.addAssembleAndLinkTests(b, test_filter, modes));
     test_step.dependOn(tests.addRuntimeSafetyTests(b, test_filter, modes));
     test_step.dependOn(tests.addTranslateCTests(b, test_filter));
     test_step.dependOn(tests.addGenHTests(b, test_filter));
+    test_step.dependOn(tests.addCompileErrorTests(b, test_filter, modes));
     test_step.dependOn(docs_step);
 }