Merge pull request #598 from alexcrichton/fix-no-install

Fix panics in `build --mode no-install`
master
ashley williams 6 years ago committed by GitHub
commit b07ec958d2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 49
      src/command/build.rs
  2. 26
      tests/all/build.rs

@ -259,38 +259,27 @@ impl Build {
}; };
($($name:ident,)*) => (steps![$($name),*]) ($($name:ident,)*) => (steps![$($name),*])
} }
let mut steps = Vec::new();
match &mode { match &mode {
BuildMode::Normal => steps![ BuildMode::Force => {}
step_check_rustc_version, _ => {
step_check_crate_config, steps.extend(steps![
step_check_for_wasm_target, step_check_rustc_version,
step_build_wasm, step_check_crate_config,
step_create_dir, step_check_for_wasm_target,
step_copy_readme, ]);
step_copy_license, }
step_install_wasm_bindgen,
step_run_wasm_bindgen,
step_create_json,
],
BuildMode::Noinstall => steps![
step_check_rustc_version,
step_check_crate_config,
step_build_wasm,
step_create_dir,
step_copy_readme,
step_copy_license,
step_run_wasm_bindgen,
step_create_json,
],
BuildMode::Force => steps![
step_build_wasm,
step_create_dir,
step_copy_readme,
step_copy_license,
step_run_wasm_bindgen,
step_create_json,
],
} }
steps.extend(steps![
step_build_wasm,
step_create_dir,
step_copy_readme,
step_copy_license,
step_install_wasm_bindgen,
step_run_wasm_bindgen,
step_create_json,
]);
steps
} }
fn step_check_rustc_version(&mut self) -> Result<(), Error> { fn step_check_rustc_version(&mut self) -> Result<(), Error> {

@ -212,3 +212,29 @@ fn build_with_arbitrary_cargo_options() {
.assert() .assert()
.success(); .success();
} }
#[test]
fn build_no_install() {
let fixture = utils::fixture::js_hello_world();
fixture.install_local_wasm_bindgen();
fixture
.wasm_pack()
.arg("build")
.arg("--mode")
.arg("no-install")
.assert()
.success();
}
#[test]
fn build_force() {
let fixture = utils::fixture::js_hello_world();
fixture.install_local_wasm_bindgen();
fixture
.wasm_pack()
.arg("build")
.arg("--mode")
.arg("force")
.assert()
.success();
}

Loading…
Cancel
Save