Skip to content

Commit 11502b1

Browse files
committed
Deduplicate cargo invocation logic
1 parent 4c9d3fd commit 11502b1

File tree

1 file changed

+11
-12
lines changed

1 file changed

+11
-12
lines changed

src/toolchains.rs

+11-12
Original file line numberDiff line numberDiff line change
@@ -257,12 +257,7 @@ impl Toolchain {
257257
}
258258
(None, None) => {
259259
let mut cmd = Command::new("cargo");
260-
cmd.arg(&format!("+{}", self.rustup_name()));
261-
if cfg.args.command_args.is_empty() {
262-
cmd.arg("build");
263-
} else {
264-
cmd.args(&cfg.args.command_args);
265-
}
260+
self.set_cargo_args_and_envs(&mut cmd, cfg);
266261
cmd
267262
}
268263
(Some(script), Some(timeout)) => {
@@ -277,12 +272,7 @@ impl Toolchain {
277272
let mut cmd = Command::new("timeout");
278273
cmd.arg(timeout.to_string());
279274
cmd.arg("cargo");
280-
cmd.arg(format!("+{}", self.rustup_name()));
281-
if cfg.args.command_args.is_empty() {
282-
cmd.arg("build");
283-
} else {
284-
cmd.args(&cfg.args.command_args);
285-
}
275+
self.set_cargo_args_and_envs(&mut cmd, cfg);
286276
cmd
287277
}
288278
};
@@ -326,6 +316,15 @@ impl Toolchain {
326316
output
327317
}
328318

319+
fn set_cargo_args_and_envs(&self, cmd: &mut Command, cfg: &Config) {
320+
cmd.arg(&format!("+{}", self.rustup_name()));
321+
if cfg.args.command_args.is_empty() {
322+
cmd.arg("build");
323+
} else {
324+
cmd.args(&cfg.args.command_args);
325+
}
326+
}
327+
329328
pub(crate) fn test(&self, cfg: &Config) -> TestOutcome {
330329
eprintln!("testing...");
331330
let outcome = if cfg.args.prompt {

0 commit comments

Comments
 (0)