diff options
author | Aurimas Liutikas <aurimas@google.com> | 2020-02-03 11:29:32 -0800 |
---|---|---|
committer | Aurimas Liutikas <aurimas@google.com> | 2020-02-04 14:58:25 -0800 |
commit | 897bc824aa83b4bd78ba6821c601fd254877e86b (patch) | |
tree | 3005414a3703b4caebe44885c9c0acb66e967ba8 /core | |
parent | 131dc7a2716ab5de6e9211cf51d2e2530d9307d8 (diff) | |
download | dokka-897bc824aa83b4bd78ba6821c601fd254877e86b.tar.gz |
Add tests for links to other classes in method return or parameters.android-r-preview-1
Bug: 136558221
Test: Newly added tests
Change-Id: I66a2d9fa135ec9515f2b5dc140b94497c118c0d2
Diffstat (limited to 'core')
10 files changed, 364 insertions, 0 deletions
diff --git a/core/src/test/kotlin/format/DacAsJavaFormatTest.kt b/core/src/test/kotlin/format/DacAsJavaFormatTest.kt index b0d9b2dbd..7cf6e4b51 100644 --- a/core/src/test/kotlin/format/DacAsJavaFormatTest.kt +++ b/core/src/test/kotlin/format/DacAsJavaFormatTest.kt @@ -30,4 +30,8 @@ class DacAsJavaFormatTest: DacFormatTestCase() { @Test fun javaMethodVisibilities() { verifyDirectory("javaMethodVisibilities") } + + @Test fun javaClassLinks() { + verifyDirectory("javaClassLinks") + } } diff --git a/core/src/test/kotlin/format/DacFormatTest.kt b/core/src/test/kotlin/format/DacFormatTest.kt index e84f11f68..d37afa2e2 100644 --- a/core/src/test/kotlin/format/DacFormatTest.kt +++ b/core/src/test/kotlin/format/DacFormatTest.kt @@ -14,4 +14,8 @@ class DacFormatTest: DacFormatTestCase() { @Test fun javaConstructor() { verifyDirectory("javaConstructor") } + + @Test fun javaClassLinks() { + verifyDirectory("javaClassLinks") + } }
\ No newline at end of file diff --git a/core/testdata/format/dac-as-java/javaClassLinks/Bar.html b/core/testdata/format/dac-as-java/javaClassLinks/Bar.html new file mode 100644 index 000000000..7d2b4831f --- /dev/null +++ b/core/testdata/format/dac-as-java/javaClassLinks/Bar.html @@ -0,0 +1,119 @@ +<html devsite="true"> + <head> + <title>Bar</title> +{% setvar book_path %}/_book.yaml{% endsetvar %} +{% include "_shared/_reference-head-tags.html" %} + </head> + <body> + <div id="api-info-block"></div> + <h1>Bar</h1> + <pre><span class="keyword">public</span> <span class="keyword">class</span> <span class="identifier">Bar</span> <span class="keyword">implements</span> <span class="identifier">java.lang.Object</span></pre> + <table class="jd-inheritance-table"> + <tr> + <td class="jd-inheritance-class-cell" colSpan="1"><a href="#">Bar</a></td> + </tr> + </table> + <h2>Summary</h2> + <table class="responsive" id="pubctors"> + <tbody> + <tr> + <th colSpan="2"> + <devsite-heading ds-is="heading" text="Public constructors" id="pubctors" level="h3" toc="" class=""> + <h3 is-upgraded="">Public constructors</h3> + </devsite-heading> + </th> + </tr> + <tr> + <td> + <div><code><a href="#Bar()">Bar</a>()</code></div> + <p></p> + </td> + </tr> + </tbody> + </table> + <table class="responsive" id="pubmethods"> + <tbody> + <tr> + <th colSpan="2"> + <devsite-heading ds-is="heading" text="Public methods" id="pubmethods" level="h3" toc="" class=""> + <h3 is-upgraded="">Public methods</h3> + </devsite-heading> + </th> + </tr> + <tr> + <td><a href="Foo.html#"><span class="identifier">Foo</span></a></td> + <td> + <div><code><a href="#getMyFoo(Foo)">getMyFoo</a>(<a href="Foo.html#"><span class="identifier">Foo</span></a> <span class="identifier">input</span>)</code></div> + <p></p> + </td> + </tr> + <tr> + <td><span class="identifier">java.util.ArrayList</span><span class="symbol"><</span><span class="identifier">java.lang.String</span><span class="symbol">></span></td> + <td> + <div><code><a href="#getMyList(java.util.HashSet)">getMyList</a>(<span class="identifier">java.util.HashSet</span> <span class="identifier">input</span>)</code></div> + <p></p> + </td> + </tr> + </tbody> + </table> + <h2>Public constructors</h2> +<a name="Bar()"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name">Bar</h3> + <pre class="api-signature no-pretty-print"><span class="keyword">public</span> <span class="identifier">Bar</span><span class="symbol">(</span><span class="symbol">)</span></pre> + </div> + <h2>Public methods</h2> +<a name="getMyFoo(Foo)"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name">getMyFoo</h3> + <pre class="api-signature no-pretty-print"><span class="keyword">public</span> <a href="Foo.html#"><span class="identifier">Foo</span></a> <span class="identifier">getMyFoo</span><span class="symbol">(</span><a href="Foo.html#"><span class="identifier">Foo</span></a> <span class="identifier">input</span><span class="symbol">)</span></pre> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Parameters</th> + </tr> + <tr> + <td><code>input</code></td> + <td><a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">:</span> The best foo you can find</td> + </tr> + </tbody> + </table> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Return</th> + </tr> + <tr> + <td colspan="2"><a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">:</span> Another spectacular Foo for you to use.</td> + </tr> + </tbody> + </table> + </div> +<a name="getMyList(java.util.HashSet)"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name">getMyList</h3> + <pre class="api-signature no-pretty-print"><span class="keyword">public</span> <span class="identifier">java.util.ArrayList</span><span class="symbol"><</span><span class="identifier">java.lang.String</span><span class="symbol">></span> <span class="identifier">getMyList</span><span class="symbol">(</span><span class="identifier">java.util.HashSet</span> <span class="identifier">input</span><span class="symbol">)</span></pre> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Parameters</th> + </tr> + <tr> + <td><code>input</code></td> + <td><span class="identifier">java.util.HashSet</span><span class="symbol">:</span> The best set you can afford.</td> + </tr> + </tbody> + </table> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Return</th> + </tr> + <tr> + <td colspan="2"><span class="identifier">java.util.ArrayList</span><span class="symbol"><</span><span class="identifier">java.lang.String</span><span class="symbol">></span><span class="symbol">:</span> A list that is full of joy.</td> + </tr> + </tbody> + </table> + </div> + </body> +</html> diff --git a/core/testdata/format/dac-as-java/javaClassLinks/Bar.java b/core/testdata/format/dac-as-java/javaClassLinks/Bar.java new file mode 100644 index 000000000..d970231e2 --- /dev/null +++ b/core/testdata/format/dac-as-java/javaClassLinks/Bar.java @@ -0,0 +1,16 @@ +import java.util.ArrayList; +import java.util.HashSet; + +public class Bar { + /** + * @param input The best foo you can find + * @return Another spectacular Foo for you to use. + */ + public Foo getMyFoo(Foo input) { return null; } + + /** + * @param input The best set you can afford. + * @return A list that is full of joy. + */ + public ArrayList<String> getMyList(HashSet input) { return null; } +}
\ No newline at end of file diff --git a/core/testdata/format/dac-as-java/javaClassLinks/Foo.html b/core/testdata/format/dac-as-java/javaClassLinks/Foo.html new file mode 100644 index 000000000..5717ecf6b --- /dev/null +++ b/core/testdata/format/dac-as-java/javaClassLinks/Foo.html @@ -0,0 +1,41 @@ +<html devsite="true"> + <head> + <title>Foo</title> +{% setvar book_path %}/_book.yaml{% endsetvar %} +{% include "_shared/_reference-head-tags.html" %} + </head> + <body> + <div id="api-info-block"></div> + <h1>Foo</h1> + <pre><span class="keyword">public</span> <span class="keyword">class</span> <span class="identifier">Foo</span> <span class="keyword">implements</span> <span class="identifier">java.lang.Object</span></pre> + <table class="jd-inheritance-table"> + <tr> + <td class="jd-inheritance-class-cell" colSpan="1"><a href="#">Foo</a></td> + </tr> + </table> + <h2>Summary</h2> + <table class="responsive" id="pubctors"> + <tbody> + <tr> + <th colSpan="2"> + <devsite-heading ds-is="heading" text="Public constructors" id="pubctors" level="h3" toc="" class=""> + <h3 is-upgraded="">Public constructors</h3> + </devsite-heading> + </th> + </tr> + <tr> + <td> + <div><code><a href="#Foo()">Foo</a>()</code></div> + <p></p> + </td> + </tr> + </tbody> + </table> + <h2>Public constructors</h2> +<a name="Foo()"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name">Foo</h3> + <pre class="api-signature no-pretty-print"><span class="keyword">public</span> <span class="identifier">Foo</span><span class="symbol">(</span><span class="symbol">)</span></pre> + </div> + </body> +</html> diff --git a/core/testdata/format/dac-as-java/javaClassLinks/Foo.java b/core/testdata/format/dac-as-java/javaClassLinks/Foo.java new file mode 100644 index 000000000..0a2b05268 --- /dev/null +++ b/core/testdata/format/dac-as-java/javaClassLinks/Foo.java @@ -0,0 +1,2 @@ +public class Foo { +}
\ No newline at end of file diff --git a/core/testdata/format/dac/javaClassLinks/Bar.html b/core/testdata/format/dac/javaClassLinks/Bar.html new file mode 100644 index 000000000..baae38c6f --- /dev/null +++ b/core/testdata/format/dac/javaClassLinks/Bar.html @@ -0,0 +1,119 @@ +<html devsite="true"> + <head> + <title>Bar</title> +{% setvar book_path %}/_book.yaml{% endsetvar %} +{% include "_shared/_reference-head-tags.html" %} + </head> + <body> + <div id="api-info-block"></div> + <h1>Bar</h1> + <pre><span class="keyword">open</span> <span class="keyword">class </span><span class="identifier">Bar</span></pre> + <table class="jd-inheritance-table"> + <tr> + <td class="jd-inheritance-class-cell" colSpan="1"><a href="#">Bar</a></td> + </tr> + </table> + <h2>Summary</h2> + <table class="responsive" id="pubctors"> + <tbody> + <tr> + <th colSpan="2"> + <devsite-heading ds-is="heading" text="Public constructors" id="pubctors" level="h3" toc="" class=""> + <h3 is-upgraded="">Public constructors</h3> + </devsite-heading> + </th> + </tr> + <tr> + <td> + <div><code><a href="#%3Cinit%3E()"><init></a>()</code></div> + <p></p> + </td> + </tr> + </tbody> + </table> + <table class="responsive" id="pubmethods"> + <tbody> + <tr> + <th colSpan="2"> + <devsite-heading ds-is="heading" text="Public methods" id="pubmethods" level="h3" toc="" class=""> + <h3 is-upgraded="">Public methods</h3> + </devsite-heading> + </th> + </tr> + <tr> + <td><span class="keyword">open</span> <a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">!</span></td> + <td> + <div><code><a href="#getMyFoo(Foo)">getMyFoo</a>(<span class="identifier" id="Bar$getMyFoo(Foo)/input">input</span><span class="symbol">:</span> <a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">!</span>)</code></div> + <p></p> + </td> + </tr> + <tr> + <td><span class="keyword">open</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html"><span class="identifier">ArrayList</span></a><span class="symbol"><</span><span class="identifier">String</span><span class="symbol">!</span><span class="symbol">></span><span class="symbol">!</span></td> + <td> + <div><code><a href="#getMyList(java.util.HashSet)">getMyList</a>(<span class="identifier" id="Bar$getMyList(java.util.HashSet((kotlin.Any)))/input">input</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/util/HashSet.html"><span class="identifier">HashSet</span></a><span class="symbol"><</span><span class="identifier">Any</span><span class="symbol">!</span><span class="symbol">></span><span class="symbol">!</span>)</code></div> + <p></p> + </td> + </tr> + </tbody> + </table> + <h2>Public constructors</h2> +<a name="%3Cinit%3E()"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name"><init></h3> + <pre class="api-signature no-pretty-print"><span class="identifier">Bar</span><span class="symbol">(</span><span class="symbol">)</span></pre> + </div> + <h2>Public methods</h2> +<a name="getMyFoo(Foo)"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name">getMyFoo</h3> + <pre class="api-signature no-pretty-print"><span class="keyword">open</span> <span class="keyword">fun </span><span class="identifier">getMyFoo</span><span class="symbol">(</span><span class="identifier" id="Bar$getMyFoo(Foo)/input">input</span><span class="symbol">:</span> <a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">!</span><span class="symbol">)</span><span class="symbol">: </span><a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">!</span></pre> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Parameters</th> + </tr> + <tr> + <td><code>input</code></td> + <td><a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">!</span><span class="symbol">:</span> The best foo you can find</td> + </tr> + </tbody> + </table> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Return</th> + </tr> + <tr> + <td colspan="2"><a href="Foo.html#"><span class="identifier">Foo</span></a><span class="symbol">!</span><span class="symbol">:</span> Another spectacular Foo for you to use.</td> + </tr> + </tbody> + </table> + </div> +<a name="getMyList(java.util.HashSet)"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name">getMyList</h3> + <pre class="api-signature no-pretty-print"><span class="keyword">open</span> <span class="keyword">fun </span><span class="identifier">getMyList</span><span class="symbol">(</span><span class="identifier" id="Bar$getMyList(java.util.HashSet((kotlin.Any)))/input">input</span><span class="symbol">:</span> <a href="http://docs.oracle.com/javase/6/docs/api/java/util/HashSet.html"><span class="identifier">HashSet</span></a><span class="symbol"><</span><span class="identifier">Any</span><span class="symbol">!</span><span class="symbol">></span><span class="symbol">!</span><span class="symbol">)</span><span class="symbol">: </span><a href="http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html"><span class="identifier">ArrayList</span></a><span class="symbol"><</span><span class="identifier">String</span><span class="symbol">!</span><span class="symbol">></span><span class="symbol">!</span></pre> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Parameters</th> + </tr> + <tr> + <td><code>input</code></td> + <td><a href="http://docs.oracle.com/javase/6/docs/api/java/util/HashSet.html"><span class="identifier">HashSet</span></a><span class="symbol"><</span><span class="identifier">Any</span><span class="symbol">!</span><span class="symbol">></span><span class="symbol">!</span><span class="symbol">:</span> The best set you can afford.</td> + </tr> + </tbody> + </table> + <table class="responsive"> + <tbody> + <tr> + <th colspan="2">Return</th> + </tr> + <tr> + <td colspan="2"><a href="http://docs.oracle.com/javase/6/docs/api/java/util/ArrayList.html"><span class="identifier">ArrayList</span></a><span class="symbol"><</span><span class="identifier">String</span><span class="symbol">!</span><span class="symbol">></span><span class="symbol">!</span><span class="symbol">:</span> A list that is full of joy.</td> + </tr> + </tbody> + </table> + </div> + </body> +</html> diff --git a/core/testdata/format/dac/javaClassLinks/Bar.java b/core/testdata/format/dac/javaClassLinks/Bar.java new file mode 100644 index 000000000..d970231e2 --- /dev/null +++ b/core/testdata/format/dac/javaClassLinks/Bar.java @@ -0,0 +1,16 @@ +import java.util.ArrayList; +import java.util.HashSet; + +public class Bar { + /** + * @param input The best foo you can find + * @return Another spectacular Foo for you to use. + */ + public Foo getMyFoo(Foo input) { return null; } + + /** + * @param input The best set you can afford. + * @return A list that is full of joy. + */ + public ArrayList<String> getMyList(HashSet input) { return null; } +}
\ No newline at end of file diff --git a/core/testdata/format/dac/javaClassLinks/Foo.html b/core/testdata/format/dac/javaClassLinks/Foo.html new file mode 100644 index 000000000..dc7637b6a --- /dev/null +++ b/core/testdata/format/dac/javaClassLinks/Foo.html @@ -0,0 +1,41 @@ +<html devsite="true"> + <head> + <title>Foo</title> +{% setvar book_path %}/_book.yaml{% endsetvar %} +{% include "_shared/_reference-head-tags.html" %} + </head> + <body> + <div id="api-info-block"></div> + <h1>Foo</h1> + <pre><span class="keyword">open</span> <span class="keyword">class </span><span class="identifier">Foo</span></pre> + <table class="jd-inheritance-table"> + <tr> + <td class="jd-inheritance-class-cell" colSpan="1"><a href="#">Foo</a></td> + </tr> + </table> + <h2>Summary</h2> + <table class="responsive" id="pubctors"> + <tbody> + <tr> + <th colSpan="2"> + <devsite-heading ds-is="heading" text="Public constructors" id="pubctors" level="h3" toc="" class=""> + <h3 is-upgraded="">Public constructors</h3> + </devsite-heading> + </th> + </tr> + <tr> + <td> + <div><code><a href="#%3Cinit%3E()"><init></a>()</code></div> + <p></p> + </td> + </tr> + </tbody> + </table> + <h2>Public constructors</h2> +<a name="%3Cinit%3E()"></a> + <div class="api apilevel-" data-version-added=""> + <h3 class="api-name"><init></h3> + <pre class="api-signature no-pretty-print"><span class="identifier">Foo</span><span class="symbol">(</span><span class="symbol">)</span></pre> + </div> + </body> +</html> diff --git a/core/testdata/format/dac/javaClassLinks/Foo.java b/core/testdata/format/dac/javaClassLinks/Foo.java new file mode 100644 index 000000000..0a2b05268 --- /dev/null +++ b/core/testdata/format/dac/javaClassLinks/Foo.java @@ -0,0 +1,2 @@ +public class Foo { +}
\ No newline at end of file |