aboutsummaryrefslogtreecommitdiff
path: root/src/cli.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/cli.zig')
-rw-r--r--src/cli.zig16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/cli.zig b/src/cli.zig
index e05bd113d..9b04a3588 100644
--- a/src/cli.zig
+++ b/src/cli.zig
@@ -214,8 +214,14 @@ pub const Arguments = struct {
clap.parseParam("--outdir <STR> Default to \"dist\" if multiple files") catch unreachable,
};
+ // TODO: update test completions
+ const test_only_params = [_]ParamType{
+ clap.parseParam("--update-snapshots Update snapshot files") catch unreachable,
+ };
+
const build_params_public = public_params ++ build_only_params;
pub const build_params = build_params_public ++ debug_params;
+ pub const test_params = params ++ test_only_params;
fn printVersionAndExit() noreturn {
@setCold(true);
@@ -368,6 +374,10 @@ pub const Arguments = struct {
cwd = try std.process.getCwdAlloc(allocator);
}
+ if (cmd == .TestCommand) {
+ ctx.test_options.update_snapshots = args.flag("--update-snapshots");
+ }
+
ctx.args.absolute_working_dir = cwd;
ctx.positionals = args.positionals();
@@ -859,6 +869,10 @@ pub const Command = struct {
test_directory: []const u8 = "",
};
+ pub const TestOptions = struct {
+ update_snapshots: bool = false,
+ };
+
pub const Context = struct {
start_time: i128,
args: Api.TransformOptions,
@@ -869,6 +883,7 @@ pub const Command = struct {
install: ?*Api.BunInstall = null,
debug: DebugOptions = DebugOptions{},
+ test_options: TestOptions = TestOptions{},
preloads: []const string = &[_]string{},
has_loaded_global_config: bool = false,
@@ -1418,6 +1433,7 @@ pub const Command = struct {
pub fn params(comptime cmd: Tag) []const Arguments.ParamType {
return &comptime switch (cmd) {
Command.Tag.BuildCommand => Arguments.build_params,
+ Command.Tag.TestCommand => Arguments.test_params,
else => Arguments.params,
};
}