mirror of
https://github.com/rust-lang/cargo
synced 2024-10-01 21:43:45 +00:00
79469f3019
Currently, the UI tests are - `cargo add` - `cargo new` - `cargo remove` - `init` One of these is not like the others. This change renames `init` to `cargo_init` to suggest it is the UI tests for the `cargo init` command, rather than `init` functionality.
30 lines
882 B
Rust
30 lines
882 B
Rust
use cargo_test_support::compare::assert_ui;
|
|
use cargo_test_support::prelude::*;
|
|
use cargo_test_support::Project;
|
|
|
|
use cargo_test_support::curr_dir;
|
|
|
|
#[cargo_test]
|
|
fn case() {
|
|
let project = Project::from_template(curr_dir!().join("in"));
|
|
let project_root = &project.root();
|
|
|
|
snapbox::cmd::Command::cargo_ui()
|
|
.arg_line("init --lib --vcs none --edition 2015")
|
|
.current_dir(project_root)
|
|
.assert()
|
|
.success()
|
|
.stdout_matches_path(curr_dir!().join("stdout.log"))
|
|
.stderr_matches_path(curr_dir!().join("stderr.log"));
|
|
|
|
assert_ui().subset_matches(curr_dir!().join("out"), project_root);
|
|
assert!(!project_root.join(".gitignore").is_file());
|
|
|
|
snapbox::cmd::Command::cargo_ui()
|
|
.current_dir(project_root)
|
|
.arg("build")
|
|
.assert()
|
|
.success();
|
|
assert!(!project.bin("foo").is_file());
|
|
}
|