use predicates::prelude::predicate;
mod utils;
use utils::TestEnv;
#[test]
fn command_add() {
let env = TestEnv::new();
env.juliaup()
.arg("add")
.arg("1.6.4")
.assert()
.success()
.stdout("");
env.juliaup()
.arg("add")
.arg("nightly")
.assert()
.success()
.stdout("");
env.juliaup()
.arg("add")
.arg("1.11-nightly")
.assert()
.success()
.stdout("");
env.julia()
.arg("+1.6.4")
.arg("-e")
.arg("print(VERSION)")
.assert()
.success()
.stdout("1.6.4");
env.julia()
.arg("+nightly")
.arg("-e")
.arg("print(VERSION)")
.assert()
.success()
.stdout(
predicate::str::is_match(
"^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)-DEV\\.(0|[1-9]\\d*)",
)
.unwrap(),
);
}
#[test]
fn command_add_pr_warning() {
let env = TestEnv::new();
env.juliaup()
.arg("add")
.arg("pr123")
.write_stdin("n\n") .assert()
.failure() .stderr(predicate::str::contains(
"WARNING: Note that unmerged PRs may not have been reviewed for security issues etc.",
))
.stderr(predicate::str::contains(
"Review code at https://github.com/JuliaLang/julia/pull/123",
));
}