Skip to content

Commit c088458

Browse files
committed
migrate to maintained kuchiki fork for testing
1 parent 6c42373 commit c088458

11 files changed

+77
-67
lines changed

Diff for: .cargo/audit.toml

-3
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ ignore = [
88

99
"RUSTSEC-2023-0018", # rustwide -> remove_dir_all,TOCTOU / Race Condition
1010
# https://github.com/rust-lang/docs.rs/issues/2074
11-
12-
"RUSTSEC-2023-0019", # kuchiki is unmaintained
13-
# https://github.com/rust-lang/docs.rs/issues/2076
1411
]
1512
informational_warnings = ["unmaintained"] # warn for categories of informational advisories
1613
severity_threshold = "low" # CVSS severity ("none", "low", "medium", "high", "critical")

Diff for: Cargo.lock

+21-10
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Diff for: Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ procfs = "0.15.1"
124124

125125
[dev-dependencies]
126126
criterion = "0.5.1"
127-
kuchiki = "0.8"
127+
kuchikiki = "0.8"
128128
rand = "0.8"
129129
mockito = "1.0.2"
130130
test-case = "3.0.0"

Diff for: src/web/build_details.rs

+7-7
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ pub(crate) async fn build_details_handler(
9898
#[cfg(test)]
9999
mod tests {
100100
use crate::test::{wrapper, FakeBuild};
101-
use kuchiki::traits::TendrilSink;
101+
use kuchikiki::traits::TendrilSink;
102102
use test_case::test_case;
103103

104104
#[test]
@@ -112,7 +112,7 @@ mod tests {
112112
.db_build_log("A build log")])
113113
.create()?;
114114

115-
let page = kuchiki::parse_html().one(
115+
let page = kuchikiki::parse_html().one(
116116
env.frontend()
117117
.get("/crate/foo/0.1.0/builds")
118118
.send()?
@@ -123,7 +123,7 @@ mod tests {
123123
let attrs = node.attributes.borrow();
124124
let url = attrs.get("href").unwrap();
125125

126-
let page = kuchiki::parse_html().one(env.frontend().get(url).send()?.text()?);
126+
let page = kuchikiki::parse_html().one(env.frontend().get(url).send()?.text()?);
127127

128128
let log = page.select("pre").unwrap().next().unwrap().text_contents();
129129

@@ -142,7 +142,7 @@ mod tests {
142142
.builds(vec![FakeBuild::default().s3_build_log("A build log")])
143143
.create()?;
144144

145-
let page = kuchiki::parse_html().one(
145+
let page = kuchikiki::parse_html().one(
146146
env.frontend()
147147
.get("/crate/foo/0.1.0/builds")
148148
.send()?
@@ -153,7 +153,7 @@ mod tests {
153153
let attrs = node.attributes.borrow();
154154
let url = attrs.get("href").unwrap();
155155

156-
let page = kuchiki::parse_html().one(env.frontend().get(url).send()?.text()?);
156+
let page = kuchikiki::parse_html().one(env.frontend().get(url).send()?.text()?);
157157

158158
let log = page.select("pre").unwrap().next().unwrap().text_contents();
159159

@@ -174,7 +174,7 @@ mod tests {
174174
.db_build_log("Another build log")])
175175
.create()?;
176176

177-
let page = kuchiki::parse_html().one(
177+
let page = kuchikiki::parse_html().one(
178178
env.frontend()
179179
.get("/crate/foo/0.1.0/builds")
180180
.send()?
@@ -185,7 +185,7 @@ mod tests {
185185
let attrs = node.attributes.borrow();
186186
let url = attrs.get("href").unwrap();
187187

188-
let page = kuchiki::parse_html().one(env.frontend().get(url).send()?.text()?);
188+
let page = kuchikiki::parse_html().one(env.frontend().get(url).send()?.text()?);
189189

190190
let log = page.select("pre").unwrap().next().unwrap().text_contents();
191191

Diff for: src/web/builds.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ mod tests {
151151
web::cache::CachePolicy,
152152
};
153153
use chrono::{DateTime, Duration, Utc};
154-
use kuchiki::traits::TendrilSink;
154+
use kuchikiki::traits::TendrilSink;
155155
use reqwest::StatusCode;
156156

157157
#[test]
@@ -176,7 +176,7 @@ mod tests {
176176

177177
let response = env.frontend().get("/crate/foo/0.1.0/builds").send()?;
178178
assert_cache_control(&response, CachePolicy::NoCaching, &env.config());
179-
let page = kuchiki::parse_html().one(response.text()?);
179+
let page = kuchikiki::parse_html().one(response.text()?);
180180

181181
let rows: Vec<_> = page
182182
.select("ul > li a.release")
@@ -294,7 +294,7 @@ mod tests {
294294
],
295295
)?;
296296

297-
let page = kuchiki::parse_html().one(
297+
let page = kuchikiki::parse_html().one(
298298
env.frontend()
299299
.get("/crate/foo/0.1.0/builds")
300300
.send()?

Diff for: src/web/crate_details.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -474,7 +474,7 @@ mod tests {
474474
assert_cache_control, assert_redirect, assert_redirect_cached, wrapper, TestDatabase,
475475
};
476476
use anyhow::{Context, Error};
477-
use kuchiki::traits::TendrilSink;
477+
use kuchikiki::traits::TendrilSink;
478478
use std::collections::HashMap;
479479

480480
fn assert_last_successful_build_equals(
@@ -838,7 +838,7 @@ mod tests {
838838
.binary(true)
839839
.create()?;
840840

841-
let page = kuchiki::parse_html()
841+
let page = kuchikiki::parse_html()
842842
.one(env.frontend().get("/crate/binary/0.1.0").send()?.text()?);
843843
let warning = page.select_first("a.pure-menu-link.warn").unwrap();
844844

@@ -956,7 +956,7 @@ mod tests {
956956
.features(HashMap::new())
957957
.create()?;
958958

959-
let page = kuchiki::parse_html().one(
959+
let page = kuchikiki::parse_html().one(
960960
env.frontend()
961961
.get("/crate/library/0.1.0/features")
962962
.send()?
@@ -980,7 +980,7 @@ mod tests {
980980
.features(features)
981981
.create()?;
982982

983-
let page = kuchiki::parse_html().one(
983+
let page = kuchikiki::parse_html().one(
984984
env.frontend()
985985
.get("/crate/library/0.1.0/features")
986986
.send()?
@@ -1004,7 +1004,7 @@ mod tests {
10041004
.features(features)
10051005
.create()?;
10061006

1007-
let page = kuchiki::parse_html().one(
1007+
let page = kuchikiki::parse_html().one(
10081008
env.frontend()
10091009
.get("/crate/library/0.1.0/features")
10101010
.send()?
@@ -1036,7 +1036,7 @@ mod tests {
10361036
.features(features)
10371037
.create()?;
10381038

1039-
let page = kuchiki::parse_html().one(
1039+
let page = kuchikiki::parse_html().one(
10401040
env.frontend()
10411041
.get("/crate/library/0.1.0/features")
10421042
.send()?
@@ -1064,7 +1064,7 @@ mod tests {
10641064
.conn()
10651065
.query("UPDATE releases SET features = NULL WHERE id = $1", &[&id])?;
10661066

1067-
let page = kuchiki::parse_html().one(
1067+
let page = kuchikiki::parse_html().one(
10681068
env.frontend()
10691069
.get("/crate/library/0.1.0/features")
10701070
.send()?
@@ -1090,7 +1090,7 @@ mod tests {
10901090
let response = env.frontend().get("/crate/dummy/0.4.0").send()?;
10911091
assert!(response.status().is_success());
10921092

1093-
let platform_links: Vec<(String, String)> = kuchiki::parse_html()
1093+
let platform_links: Vec<(String, String)> = kuchikiki::parse_html()
10941094
.one(response.text()?)
10951095
.select(r#"a[aria-label="Platform"] + ul li a"#)
10961096
.expect("invalid selector")

Diff for: src/web/error.rs

+8-7
Original file line numberDiff line numberDiff line change
@@ -136,12 +136,12 @@ pub(crate) type AxumResult<T> = Result<T, AxumNope>;
136136
#[cfg(test)]
137137
mod tests {
138138
use crate::test::wrapper;
139-
use kuchiki::traits::TendrilSink;
139+
use kuchikiki::traits::TendrilSink;
140140

141141
#[test]
142142
fn check_404_page_content_crate() {
143143
wrapper(|env| {
144-
let page = kuchiki::parse_html().one(
144+
let page = kuchikiki::parse_html().one(
145145
env.frontend()
146146
.get("/crate-which-doesnt-exist")
147147
.send()?
@@ -164,7 +164,7 @@ mod tests {
164164
#[test]
165165
fn check_404_page_content_resource() {
166166
wrapper(|env| {
167-
let page = kuchiki::parse_html().one(
167+
let page = kuchikiki::parse_html().one(
168168
env.frontend()
169169
.get("/resource-which-doesnt-exist.js")
170170
.send()?
@@ -188,8 +188,8 @@ mod tests {
188188
fn check_404_page_content_not_semver_version() {
189189
wrapper(|env| {
190190
env.fake_release().name("dummy").create()?;
191-
let page =
192-
kuchiki::parse_html().one(env.frontend().get("/dummy/not-semver").send()?.text()?);
191+
let page = kuchikiki::parse_html()
192+
.one(env.frontend().get("/dummy/not-semver").send()?.text()?);
193193
assert_eq!(page.select("#crate-title").unwrap().count(), 1);
194194
assert_eq!(
195195
page.select("#crate-title")
@@ -208,7 +208,8 @@ mod tests {
208208
fn check_404_page_content_nonexistent_version() {
209209
wrapper(|env| {
210210
env.fake_release().name("dummy").version("1.0.0").create()?;
211-
let page = kuchiki::parse_html().one(env.frontend().get("/dummy/2.0").send()?.text()?);
211+
let page =
212+
kuchikiki::parse_html().one(env.frontend().get("/dummy/2.0").send()?.text()?);
212213
assert_eq!(page.select("#crate-title").unwrap().count(), 1);
213214
assert_eq!(
214215
page.select("#crate-title")
@@ -231,7 +232,7 @@ mod tests {
231232
.version("1.0.0")
232233
.yanked(true)
233234
.create()?;
234-
let page = kuchiki::parse_html().one(env.frontend().get("/dummy/*").send()?.text()?);
235+
let page = kuchikiki::parse_html().one(env.frontend().get("/dummy/*").send()?.text()?);
235236
assert_eq!(page.select("#crate-title").unwrap().count(), 1);
236237
assert_eq!(
237238
page.select("#crate-title")

Diff for: src/web/mod.rs

+8-7
Original file line numberDiff line numberDiff line change
@@ -584,7 +584,7 @@ mod test {
584584
use super::*;
585585
use crate::{docbuilder::DocCoverage, test::*, web::match_version};
586586
use axum::http::StatusCode;
587-
use kuchiki::traits::TendrilSink;
587+
use kuchikiki::traits::TendrilSink;
588588
use serde_json::json;
589589
use test_case::test_case;
590590

@@ -618,7 +618,7 @@ mod test {
618618

619619
fn clipboard_is_present_for_path(path: &str, web: &TestFrontend) -> bool {
620620
let data = web.get(path).send().unwrap().text().unwrap();
621-
let node = kuchiki::parse_html().one(data);
621+
let node = kuchikiki::parse_html().one(data);
622622
node.select("#clipboard").unwrap().count() == 1
623623
}
624624

@@ -647,15 +647,16 @@ mod test {
647647
.create()?;
648648
let web = env.frontend();
649649

650-
let foo_crate = kuchiki::parse_html().one(web.get("/crate/foo/0.0.1").send()?.text()?);
650+
let foo_crate =
651+
kuchikiki::parse_html().one(web.get("/crate/foo/0.0.1").send()?.text()?);
651652
for value in &["60%", "6", "10", "2", "1"] {
652653
assert!(foo_crate
653654
.select(".pure-menu-item b")
654655
.unwrap()
655656
.any(|e| dbg!(e.text_contents()).contains(value)));
656657
}
657658

658-
let foo_doc = kuchiki::parse_html().one(web.get("/foo/0.0.1/foo").send()?.text()?);
659+
let foo_doc = kuchikiki::parse_html().one(web.get("/foo/0.0.1/foo").send()?.text()?);
659660
assert!(foo_doc
660661
.select(".pure-menu-link b")
661662
.unwrap()
@@ -834,7 +835,7 @@ mod test {
834835
release("0.1.0", env);
835836
let web = env.frontend();
836837
let text = web.get("/foo/0.1.0/foo").send()?.text()?;
837-
let platform = kuchiki::parse_html()
838+
let platform = kuchikiki::parse_html()
838839
.one(text)
839840
.select(r#"ul > li > a[aria-label="Platform"]"#)
840841
.unwrap()
@@ -848,7 +849,7 @@ mod test {
848849
.add_platform("x86_64-unknown-linux-musl")
849850
.create()?;
850851
let text = web.get("/foo/0.2.0/foo").send()?.text()?;
851-
let platform = kuchiki::parse_html()
852+
let platform = kuchikiki::parse_html()
852853
.one(text)
853854
.select(r#"ul > li > a[aria-label="Platform"]"#)
854855
.unwrap()
@@ -1028,7 +1029,7 @@ mod test {
10281029
release("0.1.0", env);
10291030
let web = env.frontend();
10301031
let text = web.get("/foo/0.1.0/foo").send()?.text()?;
1031-
let tabindex = kuchiki::parse_html()
1032+
let tabindex = kuchikiki::parse_html()
10321033
.one(text)
10331034
.select(r#"#nav-search[tabindex="-1"]"#)
10341035
.unwrap()

0 commit comments

Comments
 (0)