1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.tools.plugin.javadoc;
20
21 import java.io.IOException;
22 import java.net.URI;
23 import java.util.stream.Stream;
24
25 import org.apache.maven.tools.plugin.javadoc.FullyQualifiedJavadocReference.MemberType;
26 import org.junit.jupiter.params.ParameterizedTest;
27 import org.junit.jupiter.params.provider.Arguments;
28 import org.junit.jupiter.params.provider.MethodSource;
29
30 class JavadocSiteIT {
31
32 static Stream<Arguments> javadocBaseUrls() {
33
34 return Stream.of(
35 Arguments.of(URI.create("https://docs.oracle.com/en/java/javase/17/docs/api/")),
36 Arguments.of(URI.create("https://docs.oracle.com/en/java/javase/11/docs/api/")),
37 Arguments.of(URI.create("https://docs.oracle.com/javase/8/docs/api/")));
38 }
39
40 @ParameterizedTest
41 @MethodSource("javadocBaseUrls")
42 void testConstructors(URI javadocBaseUrl) throws IOException {
43 JavadocSite site = new JavadocSite(javadocBaseUrl, null);
44 JavadocSiteTest.assertUrlValid(site.createLink(new FullyQualifiedJavadocReference(
45 "java.lang", "String", "String(byte[],int)", MemberType.CONSTRUCTOR, true)));
46 }
47
48 @ParameterizedTest
49 @MethodSource("javadocBaseUrls")
50 void testMethods(URI javadocBaseUrl) throws IOException {
51 JavadocSite site = new JavadocSite(javadocBaseUrl, null);
52 JavadocSiteTest.assertUrlValid(site.createLink(new FullyQualifiedJavadocReference(
53 "java.lang", "String", "copyValueOf(char[],int,int)", MemberType.METHOD, true)));
54 }
55
56 @ParameterizedTest
57 @MethodSource("javadocBaseUrls")
58 void testFields(URI javadocBaseUrl) throws IOException {
59 JavadocSite site = new JavadocSite(javadocBaseUrl, null);
60 JavadocSiteTest.assertUrlValid(site.createLink(new FullyQualifiedJavadocReference(
61 "java.lang", "String", "CASE_INSENSITIVE_ORDER", MemberType.FIELD, true)));
62 }
63
64 @ParameterizedTest
65 @MethodSource("javadocBaseUrls")
66 void testNestedClass(URI javadocBaseUrl) throws IOException {
67 JavadocSite site = new JavadocSite(javadocBaseUrl, null);
68 JavadocSiteTest.assertUrlValid(
69 site.createLink(new FullyQualifiedJavadocReference("java.util", "Map.Entry", true)));
70 }
71 }