diff --git a/src/web/mod.rs b/src/web/mod.rs index 0a58ea2b2..70d0e44a9 100644 --- a/src/web/mod.rs +++ b/src/web/mod.rs @@ -789,6 +789,36 @@ mod test { }); } + #[test] + fn platform_dropdown_not_shown_with_no_targets() { + wrapper(|env| { + release("0.1.0", env); + let web = env.frontend(); + let text = web.get("/foo/0.1.0/foo").send()?.text()?; + let platform = kuchiki::parse_html() + .one(text) + .select(r#"ul > li > a[aria-label="Platform"]"#) + .unwrap() + .count(); + assert_eq!(platform, 0); + + // sanity check the test is doing something + env.fake_release() + .name("foo") + .version("0.2.0") + .add_platform("x86_64-unknown-linux-musl") + .create()?; + let text = web.get("/foo/0.2.0/foo").send()?.text()?; + let platform = kuchiki::parse_html() + .one(text) + .select(r#"ul > li > a[aria-label="Platform"]"#) + .unwrap() + .count(); + assert_eq!(platform, 1); + Ok(()) + }); + } + #[test] // https://github.com/rust-lang/docs.rs/issues/221 fn yanked_crates_are_not_considered() { diff --git a/templates/header/package_navigation.html b/templates/header/package_navigation.html index 702285b27..d4f6eb1ac 100644 --- a/templates/header/package_navigation.html +++ b/templates/header/package_navigation.html @@ -3,7 +3,6 @@ * `title` A possibly-null string. If it is null, `metadata.name metadata.version` will be used as the title * `metadata` A non-null instance of the MetaData struct - * `platforms` A possibly-null vector of strings * `active_tab` A string with one of the following values: * `crate` * `source` @@ -13,7 +12,7 @@ Note: `false` here is acting as a pseudo-null value since you can't directly construct null values and tera requires all parameters without defaults to be filled #} -{% macro package_navigation(title=false, metadata, platforms=false, active_tab) %} +{% macro package_navigation(title=false, metadata, active_tab) %}