From 76e6a178e3a0f1f12f42cd9980349e18145258f2 Mon Sep 17 00:00:00 2001 From: Ethan Burrell <30448729+ethanburrell@users.noreply.github.com> Date: Thu, 12 Jan 2023 12:49:36 -0800 Subject: fix(bun-test): test title in results (#1753) * fix(bun-test): test title in results * missed case * clean up import * respond to reviews --- src/bun.js/test/jest.zig | 2 +- src/cli/test_command.zig | 8 ++++-- test/bun.js/bun-test/nested-describes.test.ts | 38 +++++++++++++++++++++++++++ 3 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 test/bun.js/bun-test/nested-describes.test.ts diff --git a/src/bun.js/test/jest.zig b/src/bun.js/test/jest.zig index 00c8148b2..37c4c79cb 100644 --- a/src/bun.js/test/jest.zig +++ b/src/bun.js/test/jest.zig @@ -1737,7 +1737,7 @@ pub const DescribeScope = struct { var scope = allocator.create(DescribeScope) catch unreachable; scope.* = .{ .label = (label.toSlice(allocator).cloneIfNeeded(allocator) catch unreachable).slice(), - .parent = this, + .parent = active orelse this, .file_id = this.file_id, }; var new_this = DescribeScope.Class.make(ctx, scope); diff --git a/src/cli/test_command.zig b/src/cli/test_command.zig index a36561be0..8fb8bf01b 100644 --- a/src/cli/test_command.zig +++ b/src/cli/test_command.zig @@ -113,7 +113,9 @@ pub const CommandLineReporter = struct { const color_code = comptime if (skip) "" else ""; if (Output.enable_ansi_colors_stderr) { - for (scopes) |scope| { + for (scopes) |_, i| { + const index = (scopes.len - 1) - i; + const scope = scopes[index]; if (scope.label.len == 0) continue; writer.writeAll(" ") catch unreachable; @@ -123,7 +125,9 @@ pub const CommandLineReporter = struct { writer.writeAll(" >") catch unreachable; } } else { - for (scopes) |scope| { + for (scopes) |_, i| { + const index = (scopes.len - 1) - i; + const scope = scopes[index]; if (scope.label.len == 0) continue; writer.writeAll(" ") catch unreachable; writer.writeAll(scope.label) catch unreachable; diff --git a/test/bun.js/bun-test/nested-describes.test.ts b/test/bun.js/bun-test/nested-describes.test.ts new file mode 100644 index 000000000..de7ba194e --- /dev/null +++ b/test/bun.js/bun-test/nested-describes.test.ts @@ -0,0 +1,38 @@ +import { +describe, +expect, +test, +} from "bun:test"; + +/* +In this test we want the tests to print out the following on a success. +Each success / fail should show the path of describe and test scopes + +✓ outer most describe > mid describe 1 > inner most describe 1 > first +✓ outer most describe > mid describe 1 > inner most describe 2 > second +✓ outer most describe > mid describe 2 > inner most describe 3 > first + +@TODO add testing for this, would require to read the test console output +*/ + +describe("outer most describe", () => { + describe("mid describe 1", () => { + describe("inner most describe 1", () => { + test("first", () => { + expect(5).toEqual(5); + }) + }) + describe("inner most describe 2", () => { + test("second", () => { + expect(5).toEqual(5); + }) + }) + }) + describe("mid describe 2", () => { + describe("inner most describe 3", () => { + test("third", () => { + expect(5).toEqual(5); + }) + }) + }) +}) -- cgit v1.2.3