Skip to content

Commit 15fdec2

Browse files
committed
Split fixture, rename readme to file
1 parent bd3b517 commit 15fdec2

File tree

5 files changed

+51
-51
lines changed

5 files changed

+51
-51
lines changed

tests/all/manifest.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ use std::collections::HashSet;
22
use std::fs;
33
use std::path::PathBuf;
44

5-
use utils;
5+
use utils::{self, fixture};
66
use wasm_pack::{self, manifest};
77

88
#[test]
@@ -53,7 +53,7 @@ fn it_recognizes_a_map_during_depcheck() {
5353

5454
#[test]
5555
fn it_creates_a_package_json_default_path() {
56-
let fixture = utils::fixture(".");
56+
let fixture = fixture::fixture(".");
5757
let step = wasm_pack::progressbar::Step::new(1);
5858
wasm_pack::command::init::create_pkg_dir(&fixture.path, &step).unwrap();
5959
assert!(manifest::write_package_json(&fixture.path, &None, false, "", &step).is_ok());
@@ -81,7 +81,7 @@ fn it_creates_a_package_json_default_path() {
8181

8282
#[test]
8383
fn it_creates_a_package_json_provided_path() {
84-
let fixture = utils::fixture("tests/fixtures/js-hello-world");
84+
let fixture = fixture::fixture("tests/fixtures/js-hello-world");
8585
let step = wasm_pack::progressbar::Step::new(1);
8686
wasm_pack::command::init::create_pkg_dir(&fixture.path, &step).unwrap();
8787
assert!(manifest::write_package_json(&fixture.path, &None, false, "", &step).is_ok());
@@ -102,7 +102,7 @@ fn it_creates_a_package_json_provided_path() {
102102

103103
#[test]
104104
fn it_creates_a_package_json_provided_path_with_scope() {
105-
let fixture = utils::fixture("tests/fixtures/scopes");
105+
let fixture = fixture::fixture("tests/fixtures/scopes");
106106
let step = wasm_pack::progressbar::Step::new(1);
107107
wasm_pack::command::init::create_pkg_dir(&fixture.path, &step).unwrap();
108108
assert!(
@@ -126,7 +126,7 @@ fn it_creates_a_package_json_provided_path_with_scope() {
126126

127127
#[test]
128128
fn it_creates_a_pkg_json_with_correct_files_on_node() {
129-
let fixture = utils::fixture(".");
129+
let fixture = fixture::fixture(".");
130130
let step = wasm_pack::progressbar::Step::new(1);
131131
wasm_pack::command::init::create_pkg_dir(&fixture.path, &step).unwrap();
132132
assert!(manifest::write_package_json(&fixture.path, &None, false, "nodejs", &step).is_ok());
@@ -155,7 +155,7 @@ fn it_creates_a_pkg_json_with_correct_files_on_node() {
155155

156156
#[test]
157157
fn it_creates_a_package_json_with_correct_keys_when_types_are_skipped() {
158-
let fixture = utils::fixture(".");
158+
let fixture = fixture::fixture(".");
159159
let step = wasm_pack::progressbar::Step::new(1);
160160
wasm_pack::command::init::create_pkg_dir(&fixture.path, &step).unwrap();
161161
assert!(manifest::write_package_json(&fixture.path, &None, true, "", &step).is_ok());
@@ -181,14 +181,14 @@ fn it_creates_a_package_json_with_correct_keys_when_types_are_skipped() {
181181

182182
#[test]
183183
fn it_errors_when_wasm_bindgen_is_not_declared() {
184-
let fixture = utils::fixture("tests/fixtures/bad-cargo-toml");
184+
let fixture = fixture::fixture("tests/fixtures/bad-cargo-toml");
185185
let step = wasm_pack::progressbar::Step::new(1);
186186
assert!(manifest::check_crate_config(&fixture.path, &step).is_err());
187187
}
188188

189189
#[test]
190190
fn it_does_not_error_when_wasm_bindgen_is_declared() {
191-
let fixture = utils::fixture("tests/fixtures/js-hello-world");
191+
let fixture = fixture::fixture("tests/fixtures/js-hello-world");
192192
let step = wasm_pack::progressbar::Step::new(1);
193193
assert!(manifest::check_crate_config(&fixture.path, &step).is_ok());
194194
}

tests/all/readme.rs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ extern crate wasm_pack;
33

44
use std::fs;
55

6-
use utils;
6+
use utils::{self, fixture};
77
use wasm_pack::readme;
88

99
#[test]
1010
fn it_copies_a_readme_default_path() {
11-
let fixture = utils::fixture(".");
11+
let fixture = fixture::fixture(".");
1212
fs::create_dir(fixture.path.join("pkg")).expect("should create pkg directory OK");
1313

1414
let step = wasm_pack::progressbar::Step::new(1);
@@ -25,14 +25,14 @@ fn it_copies_a_readme_default_path() {
2525

2626
assert!(fs::metadata(&pkg_readme_path).is_ok());
2727

28-
let crate_readme = utils::readme::read_file(&crate_readme_path).unwrap();
29-
let pkg_readme = utils::readme::read_file(&pkg_readme_path).unwrap();
28+
let crate_readme = utils::file::read_file(&crate_readme_path).unwrap();
29+
let pkg_readme = utils::file::read_file(&pkg_readme_path).unwrap();
3030
assert_eq!(crate_readme, pkg_readme);
3131
}
3232

3333
#[test]
3434
fn it_creates_a_package_json_provided_path() {
35-
let fixture = utils::fixture("tests/fixtures/js-hello-world");
35+
let fixture = fixture::fixture("tests/fixtures/js-hello-world");
3636
fs::create_dir(fixture.path.join("pkg")).expect("should create pkg directory OK");
3737

3838
let step = wasm_pack::progressbar::Step::new(1);
@@ -47,7 +47,7 @@ fn it_creates_a_package_json_provided_path() {
4747
assert!(fs::metadata(&crate_readme_path).is_ok());
4848
assert!(fs::metadata(&pkg_readme_path).is_ok());
4949

50-
let crate_readme = utils::readme::read_file(&crate_readme_path).unwrap();
51-
let pkg_readme = utils::readme::read_file(&pkg_readme_path).unwrap();
50+
let crate_readme = utils::file::read_file(&crate_readme_path).unwrap();
51+
let pkg_readme = utils::file::read_file(&pkg_readme_path).unwrap();
5252
assert_eq!(crate_readme, pkg_readme);
5353
}
File renamed without changes.

tests/all/utils/fixture.rs

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
use std::path::{Path, PathBuf};
2+
3+
use copy_dir::copy_dir;
4+
use tempfile;
5+
6+
pub struct Fixture {
7+
pub dir: tempfile::TempDir,
8+
pub path: PathBuf,
9+
}
10+
11+
/// Copy the given fixture into a unique temporary directory. This allows the
12+
/// test to mutate the copied fixture without messing up other tests that are
13+
/// also trying to read from or write to that fixture. The given path should be
14+
/// relative from the root of the repository, eg
15+
/// "tests/fixtures/im-from-brooklyn-the-place-where-stars-are-born".
16+
pub fn fixture<P>(fixture: P) -> Fixture
17+
where
18+
P: AsRef<Path>,
19+
{
20+
let fixture = fixture
21+
.as_ref()
22+
.canonicalize()
23+
.expect("should canonicalize fixture path OK");
24+
let dir = tempfile::tempdir().expect("should create temporary directory OK");
25+
let path = dir.path().join("wasm-pack");
26+
println!(
27+
"wasm-pack: copying test fixture '{}' to temporary directory '{}'",
28+
fixture.display(),
29+
path.display()
30+
);
31+
copy_dir(fixture, &path).expect("should copy fixture directory into temporary directory OK");
32+
Fixture { dir, path }
33+
}

tests/all/utils/mod.rs

Lines changed: 3 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,3 @@
1-
use std::path::{Path, PathBuf};
2-
3-
use copy_dir::copy_dir;
4-
use tempfile;
5-
6-
pub(crate) mod manifest;
7-
pub(crate) mod readme;
8-
9-
pub struct Fixture {
10-
pub dir: tempfile::TempDir,
11-
pub path: PathBuf,
12-
}
13-
14-
/// Copy the given fixture into a unique temporary directory. This allows the
15-
/// test to mutate the copied fixture without messing up other tests that are
16-
/// also trying to read from or write to that fixture. The given path should be
17-
/// relative from the root of the repository, eg
18-
/// "tests/fixtures/im-from-brooklyn-the-place-where-stars-are-born".
19-
pub fn fixture<P>(fixture: P) -> Fixture
20-
where
21-
P: AsRef<Path>,
22-
{
23-
let fixture = fixture
24-
.as_ref()
25-
.canonicalize()
26-
.expect("should canonicalize fixture path OK");
27-
let dir = tempfile::tempdir().expect("should create temporary directory OK");
28-
let path = dir.path().join("wasm-pack");
29-
println!(
30-
"wasm-pack: copying test fixture '{}' to temporary directory '{}'",
31-
fixture.display(),
32-
path.display()
33-
);
34-
copy_dir(fixture, &path).expect("should copy fixture directory into temporary directory OK");
35-
Fixture { dir, path }
36-
}
1+
pub mod file;
2+
pub mod fixture;
3+
pub mod manifest;

0 commit comments

Comments
 (0)