summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorVlad Ureche <vlad.ureche@epfl.ch>2014-11-05 17:56:29 +0100
committerVlad Ureche <vlad.ureche@epfl.ch>2014-11-05 17:56:29 +0100
commitcd50464cd019bc6a489a72b98293c30b91352bab (patch)
tree4c9bb45efd08b83755f804dff2bc6a09faade13a /test
parent954b57b45f16109b4e366397e19c6b6114a7a642 (diff)
parent9d0d44c8f87bfd227d4da08aec970c4d29461705 (diff)
downloadscala-cd50464cd019bc6a489a72b98293c30b91352bab.tar.gz
scala-cd50464cd019bc6a489a72b98293c30b91352bab.tar.bz2
scala-cd50464cd019bc6a489a72b98293c30b91352bab.zip
Merge pull request #4089 from gourlaysama/wip/t6626-scaladoc-throws-links
SI-6626 make @throws tags create links to exceptions
Diffstat (limited to 'test')
-rw-r--r--test/scaladoc/run/t6626.check7
-rw-r--r--test/scaladoc/run/t6626.scala42
2 files changed, 49 insertions, 0 deletions
diff --git a/test/scaladoc/run/t6626.check b/test/scaladoc/run/t6626.check
new file mode 100644
index 0000000000..de3a6c5c0b
--- /dev/null
+++ b/test/scaladoc/run/t6626.check
@@ -0,0 +1,7 @@
+newSource:10: warning: Could not find any member to link for "SomeUnknownException".
+ /**
+ ^
+newSource:10: warning: Could not find any member to link for "IOException".
+ /**
+ ^
+Done.
diff --git a/test/scaladoc/run/t6626.scala b/test/scaladoc/run/t6626.scala
new file mode 100644
index 0000000000..6c61c605d6
--- /dev/null
+++ b/test/scaladoc/run/t6626.scala
@@ -0,0 +1,42 @@
+import scala.tools.nsc.doc.base._
+import scala.tools.nsc.doc.base.comment._
+import scala.tools.nsc.doc.model._
+import scala.tools.partest.ScaladocModelTest
+
+object Test extends ScaladocModelTest {
+
+ override def code = """
+
+package org.foo
+
+class MyException extends Exception
+
+class MyOtherException extends Exception
+
+object Foo {
+ /**
+ * Test exception linking
+ *
+ * @throws org.foo.MyException linked with a fully-qualified name
+ * @throws MyOtherException linked with a relative name
+ * @throws SomeUnknownException not linked at all (but with some text)
+ * @throws IOException
+ */
+ def test(): Unit = ???
+}
+ """
+
+ def scaladocSettings = ""
+
+ def testModel(rootPackage: Package) = {
+ // get the quick access implicit defs in scope (_package(s), _class(es), _trait(s), object(s) _method(s), _value(s))
+ import access._
+
+ val a = rootPackage._package("org")._package("foo")._object("Foo")._method("test")
+ val throws = a.comment.get.throws
+ val allbodies = Body(throws.values.flatMap(_.blocks).toSeq)
+
+ val links = countLinksInBody(allbodies, _.link.isInstanceOf[LinkToTpl[_]])
+ assert(links == 2, links + " == 2 (links to MyException and MyOtherException)")
+ }
+}