about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/ci/docker/host-x86_64/x86_64-gnu-tools/browser-ui-test.version2
-rw-r--r--src/librustdoc/html/render/mod.rs2
-rw-r--r--src/test/rustdoc-gui/item-info-overflow.goml28
-rw-r--r--src/test/rustdoc-gui/src/lib2/lib.rs10
4 files changed, 40 insertions, 2 deletions
diff --git a/src/ci/docker/host-x86_64/x86_64-gnu-tools/browser-ui-test.version b/src/ci/docker/host-x86_64/x86_64-gnu-tools/browser-ui-test.version
index fcbb5375b7e..bbde4bee23f 100644
--- a/src/ci/docker/host-x86_64/x86_64-gnu-tools/browser-ui-test.version
+++ b/src/ci/docker/host-x86_64/x86_64-gnu-tools/browser-ui-test.version
@@ -1 +1 @@
-0.8.4
\ No newline at end of file
+0.8.5
\ No newline at end of file
diff --git a/src/librustdoc/html/render/mod.rs b/src/librustdoc/html/render/mod.rs
index ac07547de70..e223b306505 100644
--- a/src/librustdoc/html/render/mod.rs
+++ b/src/librustdoc/html/render/mod.rs
@@ -1772,7 +1772,7 @@ pub(crate) fn render_impl_summary(
     let is_trait = i.inner_impl().trait_.is_some();
     if is_trait {
         if let Some(portability) = portability(&i.impl_item, Some(parent)) {
-            write!(w, "<span class=\"item-info\">{}</span>", portability);
+            write!(w, "<div class=\"item-info\">{}</div>", portability);
         }
     }
 
diff --git a/src/test/rustdoc-gui/item-info-overflow.goml b/src/test/rustdoc-gui/item-info-overflow.goml
new file mode 100644
index 00000000000..4ff719bfb7d
--- /dev/null
+++ b/src/test/rustdoc-gui/item-info-overflow.goml
@@ -0,0 +1,28 @@
+// This test ensures that the "item-info" elements don't overflow.
+goto: file://|DOC_PATH|/lib2/struct.LongItemInfo.html
+// We set a fixed size so there is no chance of "random" resize.
+size: (1200, 870)
+// Logically, the "item-decl" and the "item-info" should have the same scroll width.
+compare-elements-property: (".docblock.item-decl", ".item-info", ["scrollWidth"])
+assert-property: (".item-info", {"scrollWidth": "890"})
+// Just to be sure we're comparing the correct "item-info":
+assert-text: (
+    ".item-info",
+    "This is supported on Android or Linux or Emscripten or DragonFly BSD",
+    STARTS_WITH,
+)
+
+// Checking the "item-info" on an impl block as well:
+goto: file://|DOC_PATH|/lib2/struct.LongItemInfo2.html
+compare-elements-property: (
+    "#impl-SimpleTrait .item-info",
+    "#impl-SimpleTrait + .docblock",
+    ["scrollWidth"],
+)
+assert-property: ("#impl-SimpleTrait .item-info", {"scrollWidth": "866"})
+// Just to be sure we're comparing the correct "item-info":
+assert-text: (
+    "#impl-SimpleTrait .item-info",
+    "This is supported on Android or Linux or Emscripten or DragonFly BSD",
+    STARTS_WITH,
+)
diff --git a/src/test/rustdoc-gui/src/lib2/lib.rs b/src/test/rustdoc-gui/src/lib2/lib.rs
index 5b6d236e8e0..83e86c43934 100644
--- a/src/test/rustdoc-gui/src/lib2/lib.rs
+++ b/src/test/rustdoc-gui/src/lib2/lib.rs
@@ -120,3 +120,13 @@ pub struct HasALongTraitWithParams {}
 pub trait LongTraitWithParamsBananaBananaBanana<T> {}
 
 impl LongTraitWithParamsBananaBananaBanana<usize> for HasALongTraitWithParams {}
+
+#[doc(cfg(any(target_os = "android", target_os = "linux", target_os = "emscripten", target_os = "dragonfly", target_os = "freebsd", target_os = "netbsd", target_os = "openbsd")))]
+pub struct LongItemInfo;
+
+pub trait SimpleTrait {}
+pub struct LongItemInfo2;
+
+/// Some docs.
+#[doc(cfg(any(target_os = "android", target_os = "linux", target_os = "emscripten", target_os = "dragonfly", target_os = "freebsd", target_os = "netbsd", target_os = "openbsd")))]
+impl SimpleTrait for LongItemInfo2 {}