aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-11-20 16:48:02 -0800
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2022-11-20 16:48:02 -0800
commit28a3093d48569832589ea9ada770a1d333c05135 (patch)
tree722a5b24af1c8eb893e96578dd70a8b869695c84
parentfe0506b88eede33e8cc93dc648632aff8c0ac196 (diff)
downloadbun-28a3093d48569832589ea9ada770a1d333c05135.tar.gz
bun-28a3093d48569832589ea9ada770a1d333c05135.tar.zst
bun-28a3093d48569832589ea9ada770a1d333c05135.zip
Print a count
-rw-r--r--src/cli/test_command.zig66
-rw-r--r--src/install/install.zig8
2 files changed, 50 insertions, 24 deletions
diff --git a/src/cli/test_command.zig b/src/cli/test_command.zig
index 9211be7f3..916ae63d9 100644
--- a/src/cli/test_command.zig
+++ b/src/cli/test_command.zig
@@ -173,6 +173,7 @@ const Scanner = struct {
scan_dir_buf: [bun.MAX_PATH_BYTES]u8 = undefined,
options: *options.BundleOptions,
has_iterated: bool = false,
+ search_count: usize = 0,
const ScanEntry = struct {
relative_dir: bun.StoredFileDescriptorType,
@@ -267,6 +268,8 @@ const Scanner = struct {
if (strings.eql(exclude_name, name)) return;
}
+ this.search_count += 1;
+
this.dirs_to_scan.writeItem(.{
.relative_dir = fd,
.name = entry.base_,
@@ -277,6 +280,7 @@ const Scanner = struct {
// already seen it!
if (!entry.abs_path.isEmpty()) return;
+ this.search_count += 1;
if (!this.couldBeTestFile(name)) return;
var parts = &[_]string{ entry.dir, entry.base() };
@@ -295,6 +299,10 @@ pub const TestCommand = struct {
pub const name = "wiptest";
pub fn exec(ctx: Command.Context) !void {
if (comptime is_bindgen) unreachable;
+ // print the version so you know its doing stuff if it takes a sec
+ Output.prettyErrorln("<r><b>bun wiptest <r><d>v" ++ Global.package_json_version_with_sha ++ "<r>\n\n", .{});
+ Output.flush();
+
var env_loader = brk: {
var map = try ctx.allocator.create(DotEnv.Map);
map.* = DotEnv.Map.init(ctx.allocator);
@@ -306,6 +314,7 @@ pub const TestCommand = struct {
JSC.C.JSCInitialize();
NetworkThread.init() catch {};
HTTPThread.init() catch {};
+
var reporter = try ctx.allocator.create(CommandLineReporter);
reporter.* = CommandLineReporter{
.jest = TestRunner{
@@ -343,7 +352,6 @@ pub const TestCommand = struct {
.filter_names = ctx.positionals[1..],
.results = std.ArrayList(PathString).init(ctx.allocator),
};
-
scanner.scan(scanner.fs.top_level_dir);
scanner.dirs_to_scan.deinit();
@@ -364,31 +372,49 @@ pub const TestCommand = struct {
Output.flush();
- Output.prettyError("\n", .{});
+ if (scanner.filter_names.len == 0 and test_files.len == 0) {
+ Output.prettyErrorln(
+ \\<b>0 tests found<r>! Tests need ".test", "_test_", ".spec" or "_spec_" in the filename <d>(ex: "MyApp.test.ts")<r>
+ \\
+ ,
+ .{},
+ );
+
+ Output.printStartEnd(ctx.start_time, std.time.nanoTimestamp());
+ if (scanner.search_count > 0)
+ Output.prettyError(
+ \\ {d} files searched
+ , .{
+ scanner.search_count,
+ });
+ } else {
+ Output.prettyError("\n", .{});
- if (reporter.summary.pass > 0) {
- Output.prettyError("<r><green>", .{});
- }
+ if (reporter.summary.pass > 0) {
+ Output.prettyError("<r><green>", .{});
+ }
- Output.prettyError(" {d:5>} pass<r>\n", .{reporter.summary.pass});
+ Output.prettyError(" {d:5>} pass<r>\n", .{reporter.summary.pass});
- if (reporter.summary.fail > 0) {
- Output.prettyError("<r><red>", .{});
- } else {
- Output.prettyError("<r><d>", .{});
- }
+ if (reporter.summary.fail > 0) {
+ Output.prettyError("<r><red>", .{});
+ } else {
+ Output.prettyError("<r><d>", .{});
+ }
+
+ Output.prettyError(" {d:5>} fail<r>\n", .{reporter.summary.fail});
- Output.prettyError(" {d:5>} fail<r>\n", .{reporter.summary.fail});
+ if (reporter.summary.expectations > 0) Output.prettyError(" {d:5>} expect() calls\n", .{reporter.summary.expectations});
- if (reporter.summary.expectations > 0) Output.prettyError(" {d:5>} expect() calls\n", .{reporter.summary.expectations});
+ Output.prettyError(
+ \\ Ran {d} tests across {d} files
+ , .{
+ reporter.summary.fail + reporter.summary.pass,
+ test_files.len,
+ });
+ Output.printStartEnd(ctx.start_time, std.time.nanoTimestamp());
+ }
- Output.prettyError(
- \\ Ran {d} tests across {d} files
- , .{
- reporter.summary.fail + reporter.summary.pass,
- test_files.len,
- });
- Output.printStartEnd(ctx.start_time, std.time.nanoTimestamp());
Output.prettyError("\n", .{});
Output.flush();
diff --git a/src/install/install.zig b/src/install/install.zig
index bac5835cf..edfb4da42 100644
--- a/src/install/install.zig
+++ b/src/install/install.zig
@@ -4493,7 +4493,7 @@ pub const PackageManager = struct {
};
if (manager.options.log_level != .silent) {
- Output.prettyErrorln("<r><b>bun link <r><d>v" ++ Global.package_json_version ++ "<r>\n", .{});
+ Output.prettyErrorln("<r><b>bun link <r><d>v" ++ Global.package_json_version_with_sha ++ "<r>\n", .{});
Output.flush();
}
@@ -4643,7 +4643,7 @@ pub const PackageManager = struct {
};
if (manager.options.log_level != .silent) {
- Output.prettyErrorln("<r><b>bun unlink <r><d>v" ++ Global.package_json_version ++ "<r>\n", .{});
+ Output.prettyErrorln("<r><b>bun unlink <r><d>v" ++ Global.package_json_version_with_sha ++ "<r>\n", .{});
Output.flush();
}
@@ -5105,7 +5105,7 @@ pub const PackageManager = struct {
};
if (manager.options.log_level != .silent) {
- Output.prettyErrorln("<r><b>bun " ++ @tagName(op) ++ " <r><d>v" ++ Global.package_json_version ++ "<r>\n", .{});
+ Output.prettyErrorln("<r><b>bun " ++ @tagName(op) ++ " <r><d>v" ++ Global.package_json_version_with_sha ++ "<r>\n", .{});
Output.flush();
}
@@ -5513,7 +5513,7 @@ pub const PackageManager = struct {
};
if (manager.options.log_level != .silent) {
- Output.prettyErrorln("<r><b>bun install <r><d>v" ++ Global.package_json_version ++ "<r>\n", .{});
+ Output.prettyErrorln("<r><b>bun install <r><d>v" ++ Global.package_json_version_with_sha ++ "<r>\n", .{});
Output.flush();
}