Skip to content

Commit

Permalink
add test for bad pex version
Browse files Browse the repository at this point in the history
  • Loading branch information
Seaweed0112 committed Dec 27, 2023
1 parent d6b72f6 commit b26dbf2
Showing 1 changed file with 31 additions and 0 deletions.
31 changes: 31 additions & 0 deletions package/src/test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ pub(crate) fn run_integration_tests(
test_ignore_empty_pants_version_pants_sha(scie_pants_scie);

test_pants_from_pex_version(scie_pants_scie);
test_pants_from_bad_pex_version(scie_pants_scie);

let clone_root = create_tempdir()?;
test_use_in_repo_with_pants_script(scie_pants_scie, &clone_root);
Expand Down Expand Up @@ -460,6 +461,36 @@ fn test_pants_from_pex_version(scie_pants_scie: &Path) {
);
}

fn test_pants_from_bad_pex_version(scie_pants_scie: &Path) {
integration_test!(
"Verify the output of scie-pants is user-friendly if they provide an invalid pants version"
);

let tmpdir = create_tempdir().unwrap();

let pants_release = "2.18";
let pants_toml_content = format!(
r#"
[GLOBAL]
pants_version = "{pants_release}"
"#
);
let pants_toml = tmpdir.path().join("pants.toml");
write_file(&pants_toml, false, pants_toml_content).unwrap();

let err = execute(
Command::new(scie_pants_scie)
.arg("-V")
.current_dir(&tmpdir)
.stderr(Stdio::piped()),
)
.unwrap_err();

let error_text = err.to_string();
assert!(error_text.contains("Wasn't able to fetch the Pants PEX at"));
assert!(error_text.contains("Pants version format not recognized. Please add `.<patch_version>` to the end of the version. For example: `2.18` -> `2.18.0`"));
}

fn test_use_in_repo_with_pants_script(scie_pants_scie: &Path, clone_root: &TempDir) {
integration_test!("Verify scie-pants can be used as `pants` in a repo with the `pants` script");
// This verifies a fix for https://github.com/pantsbuild/scie-pants/issues/28.
Expand Down

0 comments on commit b26dbf2

Please sign in to comment.