aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tests/raw.rs4
-rw-r--r--tests/utils/mod.rs12
2 files changed, 14 insertions, 2 deletions
diff --git a/tests/raw.rs b/tests/raw.rs
index ea9b3a6..0aca2ed 100644
--- a/tests/raw.rs
+++ b/tests/raw.rs
@@ -12,7 +12,7 @@ use select::predicate::Name;
#[rstest]
/// The ui displays the correct wget command to download the folder recursively
-fn ui_displays_wget_element(server: TestServer) -> Result<(), Error> {
+fn ui_displays_wget_element(#[with(&["-W"])] server: TestServer) -> Result<(), Error> {
let client = Client::new();
let body = client.get(server.url()).send()?.error_for_status()?;
@@ -59,7 +59,7 @@ fn ui_displays_wget_element(server: TestServer) -> Result<(), Error> {
#[rstest]
/// All hrefs in raw mode are links to directories or files & directories end with ?raw=true
-fn raw_mode_links_to_directories_end_with_raw_true(server: TestServer) -> Result<(), Error> {
+fn raw_mode_links_to_directories_end_with_raw_true(#[with(&["-W"])] server: TestServer) -> Result<(), Error> {
fn verify_a_tags(parsed: Document) {
// Ensure all links end with ?raw=true or are files
for node in parsed.find(Name("a")) {
diff --git a/tests/utils/mod.rs b/tests/utils/mod.rs
new file mode 100644
index 0000000..b724945
--- /dev/null
+++ b/tests/utils/mod.rs
@@ -0,0 +1,12 @@
+use select::document::Document;
+use select::node::Node;
+use select::predicate::Name;
+use select::predicate::Predicate;
+
+/// Return the href attribute content for the closest anchor found by `text`.
+pub fn get_link_from_text(document: &Document, text: &str) -> Option<String> {
+ let a_elem = document
+ .find(Name("a").and(|x: &Node| x.children().any(|x| x.text() == text)))
+ .next()?;
+ Some(a_elem.attr("href")?.to_string())
+}