aboutsummaryrefslogtreecommitdiffstats
path: root/tests/fixtures/mod.rs
diff options
context:
space:
mode:
authorSven-Hendrik Haase <svenstaro@gmail.com>2019-05-01 05:56:35 +0000
committerGitHub <noreply@github.com>2019-05-01 05:56:35 +0000
commitf099134d2b86924fad0ddc615e5fecfb716c7ee0 (patch)
treed1142b0fd13b2ed92f1216b0672df8befc81d928 /tests/fixtures/mod.rs
parentMerge pull request #96 from svenstaro/dependabot/cargo/reqwest-0.9.16 (diff)
parentAllow dead code to fix false negative warnings (diff)
downloadminiserve-f099134d2b86924fad0ddc615e5fecfb716c7ee0.tar.gz
miniserve-f099134d2b86924fad0ddc615e5fecfb716c7ee0.zip
Merge pull request #91 from KSXGitHub/split-integration-test
Split integration test into multiple files
Diffstat (limited to 'tests/fixtures/mod.rs')
-rw-r--r--tests/fixtures/mod.rs39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/fixtures/mod.rs b/tests/fixtures/mod.rs
new file mode 100644
index 0000000..d074cb0
--- /dev/null
+++ b/tests/fixtures/mod.rs
@@ -0,0 +1,39 @@
+#![allow(dead_code)]
+
+pub use assert_cmd::prelude::*;
+pub use assert_fs::fixture::TempDir;
+pub use assert_fs::prelude::*;
+pub use clap::{crate_name, crate_version};
+pub use port_check::free_local_port;
+pub use reqwest;
+pub use reqwest::multipart;
+pub use rstest::rstest;
+pub use select::document::Document;
+pub use select::predicate::{Attr, Text};
+pub use std::process::{Command, Stdio};
+pub use std::thread::sleep;
+pub use std::time::Duration;
+pub use rstest::rstest_parametrize;
+
+/// Error type used by tests
+pub type Error = Box<std::error::Error>;
+
+/// File names for testing purpose
+pub static FILES: &[&str] = &["test.txt", "test.html", "test.mkv"];
+
+/// Test fixture which creates a temporary directory with a few files inside.
+pub fn tmpdir() -> TempDir {
+ let tmpdir = assert_fs::TempDir::new().expect("Couldn't create a temp dir for tests");
+ for &file in FILES {
+ tmpdir
+ .child(file)
+ .write_str("Test Hello Yes")
+ .expect("Couldn't write to file");
+ }
+ tmpdir
+}
+
+/// Get a free port.
+pub fn port() -> u16 {
+ free_local_port().expect("Couldn't find a free local port")
+}