summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorLukas Rytz <lukas.rytz@gmail.com>2017-03-02 10:43:07 +0100
committerGitHub <noreply@github.com>2017-03-02 10:43:07 +0100
commitf2e05c2276cad276f1cc8b2cad393a1acee6ede8 (patch)
tree4f7ad1360c529cd116abf97a632f96f238ccef4a /test
parent920bc4e31c5415d98c1a7f26aebc790250aafe4a (diff)
parente3c5df8ec369047d73a54ed94caebe0a4f26627c (diff)
downloadscala-f2e05c2276cad276f1cc8b2cad393a1acee6ede8.tar.gz
scala-f2e05c2276cad276f1cc8b2cad393a1acee6ede8.tar.bz2
scala-f2e05c2276cad276f1cc8b2cad393a1acee6ede8.zip
Merge pull request #5728 from Philippus/issue/html-tag-in-hover
inlineToStr is not exhaustive and does not remove html tags inside HtmlTag [ci: last-only]
Diffstat (limited to 'test')
-rw-r--r--test/scaladoc/run/inlineToStr-strips-unwanted-text.check13
-rw-r--r--test/scaladoc/run/inlineToStr-strips-unwanted-text.scala51
-rw-r--r--test/scaladoc/run/shortDescription-annotation.scala19
3 files changed, 68 insertions, 15 deletions
diff --git a/test/scaladoc/run/inlineToStr-strips-unwanted-text.check b/test/scaladoc/run/inlineToStr-strips-unwanted-text.check
new file mode 100644
index 0000000000..986b58d469
--- /dev/null
+++ b/test/scaladoc/run/inlineToStr-strips-unwanted-text.check
@@ -0,0 +1,13 @@
+Chain(List(Chain(List(Text(This comment contains ), Superscript(Text(superscript))))))
+Chain(List(Chain(List(Text(This comment contains ), Subscript(Text(subscript))))))
+Chain(List(Chain(List(Text(This comment contains a link ), Link(https://scala.epfl.ch/,Text(https://scala.epfl.ch/))))))
+Chain(List(Chain(List(Text(This comment contains an ), HtmlTag(<strong>html tag</strong>)))))
+Chain(List(Chain(List(Text(This comment contains a), HtmlTag(<br>), Text( single html tag)))))
+Chain(List(Chain(List(Text(This comment contains nested ), HtmlTag(<strong>html<br> tags</strong>)))))
+This comment contains superscript
+This comment contains subscript
+This comment contains a link https://scala.epfl.ch/
+This comment contains an html tag
+This comment contains a single html tag
+This comment contains nested html tags
+Done.
diff --git a/test/scaladoc/run/inlineToStr-strips-unwanted-text.scala b/test/scaladoc/run/inlineToStr-strips-unwanted-text.scala
new file mode 100644
index 0000000000..f51b7d6b3f
--- /dev/null
+++ b/test/scaladoc/run/inlineToStr-strips-unwanted-text.scala
@@ -0,0 +1,51 @@
+import scala.tools.nsc.doc.html.Page
+import scala.tools.nsc.doc.model._
+import scala.tools.partest.ScaladocModelTest
+
+object Test extends ScaladocModelTest {
+
+ override def code = """
+ /** This comment contains ^superscript^ */
+ class Foo {
+ /** This comment contains ,,subscript,, */
+ def bar = ???
+
+ /** This comment contains a link [[https://scala.epfl.ch/]] */
+ def baz = ???
+
+ /** This comment contains an <strong>html tag</strong> */
+ def qux = ???
+
+ /** This comment contains a<br> single html tag */
+ def quux = ???
+
+ /** This comment contains nested <strong>html<br> tags</strong> */
+ def quuz = ???
+ }
+ """
+ def scaladocSettings = ""
+
+ def testModel(root: Package) = {
+ import scala.tools.nsc.doc.base.comment._
+ import access._
+
+ val foo = root._class("Foo")
+ val bar = foo._method("bar")
+ val baz = foo._method("baz")
+ val qux = foo._method("qux")
+ val quux = foo._method("quux")
+ val quuz = foo._method("quuz")
+ println(foo.comment.get.short)
+ println(bar.comment.get.short)
+ println(baz.comment.get.short)
+ println(qux.comment.get.short)
+ println(quux.comment.get.short)
+ println(quuz.comment.get.short)
+ println(Page.inlineToStr(foo.comment.get.short))
+ println(Page.inlineToStr(bar.comment.get.short))
+ println(Page.inlineToStr(baz.comment.get.short))
+ println(Page.inlineToStr(qux.comment.get.short))
+ println(Page.inlineToStr(quux.comment.get.short))
+ println(Page.inlineToStr(quuz.comment.get.short))
+ }
+}
diff --git a/test/scaladoc/run/shortDescription-annotation.scala b/test/scaladoc/run/shortDescription-annotation.scala
index 0e2950f4f9..4f9a891133 100644
--- a/test/scaladoc/run/shortDescription-annotation.scala
+++ b/test/scaladoc/run/shortDescription-annotation.scala
@@ -1,3 +1,4 @@
+import scala.tools.nsc.doc.html.Page
import scala.tools.nsc.doc.model._
import scala.tools.partest.ScaladocModelTest
@@ -26,30 +27,18 @@ object Test extends ScaladocModelTest {
import scala.tools.nsc.doc.base.comment._
import access._
- def inlineToStr(inl: Inline): String = inl match {
- case Chain(items) => items flatMap (inlineToStr(_)) mkString ""
- case Italic(in) => inlineToStr(in)
- case Bold(in) => inlineToStr(in)
- case Underline(in) => inlineToStr(in)
- case Monospace(in) => inlineToStr(in)
- case Text(text) => text
- case Summary(in) => inlineToStr(in)
- case EntityLink(Text(text), _) => text
- case _ => inl.toString
- }
-
val foo = rootPackage._package("a")._class("Foo")
// Assert that the class has the correct short description
- val classDesc = inlineToStr(foo.comment.get.short)
+ val classDesc = Page.inlineToStr(foo.comment.get.short)
assert(classDesc == "This one should appear", classDesc)
// Assert that the `foo` method has the correct short description
- val fooDesc = inlineToStr(foo._method("foo").comment.get.short)
+ val fooDesc = Page.inlineToStr(foo._method("foo").comment.get.short)
assert(fooDesc == "This comment should appear", fooDesc)
// Assert that the `goo` method has the correct short description
- val gooDesc = inlineToStr(foo._method("goo").comment.get.short)
+ val gooDesc = Page.inlineToStr(foo._method("goo").comment.get.short)
assert(gooDesc == "This comment should appear", gooDesc)
}
}