test/langtools/jdk/javadoc/doclet/testMemberInheritance/TestMemberInheritance.java
branchdatagramsocketimpl-branch
changeset 58678 9cf78a70fa4f
parent 53562 0d9dee001667
child 58679 9c3209ff7550
equal deleted inserted replaced
58677:13588c901957 58678:9cf78a70fa4f
    22  */
    22  */
    23 
    23 
    24 /*
    24 /*
    25  * @test
    25  * @test
    26  * @bug 4638588 4635809 6256068 6270645 8025633 8026567 8162363 8175200
    26  * @bug 4638588 4635809 6256068 6270645 8025633 8026567 8162363 8175200
    27  *      8192850 8182765
    27  *      8192850 8182765 8220217
    28  * @summary Test to make sure that members are inherited properly in the Javadoc.
    28  * @summary Test to make sure that members are inherited properly in the Javadoc.
    29  *          Verify that inheritance labels are correct.
    29  *          Verify that inheritance labels are correct.
    30  * @author jamieh
    30  * @author jamieh
    31  * @library ../../lib
    31  * @library ../../lib
    32  * @modules jdk.javadoc/jdk.javadoc.internal.tool
    32  * @modules jdk.javadoc/jdk.javadoc.internal.tool
    45 
    45 
    46     @Test
    46     @Test
    47     public void test() {
    47     public void test() {
    48         javadoc("-d", "out",
    48         javadoc("-d", "out",
    49                 "-sourcepath", testSrc,
    49                 "-sourcepath", testSrc,
    50                 "pkg", "diamond", "inheritDist", "pkg1");
    50                 "pkg", "diamond", "inheritDist", "pkg1", "pkg2");
    51         checkExit(Exit.OK);
    51         checkExit(Exit.OK);
    52 
    52 
    53         checkOutput("pkg/SubClass.html", true,
    53         checkOutput("pkg/SubClass.html", true,
    54                 // Public field should be inherited
    54                 // Public field should be inherited
    55                 "<a href=\"BaseClass.html#pubField\">",
    55                 "<a href=\"BaseClass.html#pubField\">",
    94                 // ensure the method makes it
    94                 // ensure the method makes it
    95                 "<td class=\"colFirst\"><code>static java.time.Period</code></td>\n"
    95                 "<td class=\"colFirst\"><code>static java.time.Period</code></td>\n"
    96                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
    96                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
    97                 + "<a href=\"#between(java.time.LocalDate,java.time.LocalDate)\">"
    97                 + "<a href=\"#between(java.time.LocalDate,java.time.LocalDate)\">"
    98                 + "between</a></span>&#8203;(java.time.LocalDate&nbsp;startDateInclusive,\n"
    98                 + "between</a></span>&#8203;(java.time.LocalDate&nbsp;startDateInclusive,\n"
    99                 + "       java.time.LocalDate&nbsp;endDateExclusive)</code></th>");
    99                 + "java.time.LocalDate&nbsp;endDateExclusive)</code></th>");
   100 
   100 
   101         checkOutput("pkg1/Implementer.html", false,
   101         checkOutput("pkg1/Implementer.html", false,
   102                 "<h3>Methods inherited from interface&nbsp;pkg1.<a href=\"Interface.html\""
   102                 "<h3>Methods inherited from interface&nbsp;pkg1.<a href=\"Interface.html\""
   103                 + " title=\"interface in pkg1\">Interface</a></h3>\n"
   103                 + " title=\"interface in pkg1\">Interface</a></h3>\n"
   104                 + "<code><a href=\"Interface.html#between(java.time.chrono.ChronoLocalDate"
   104                 + "<code><a href=\"Interface.html#between(java.time.chrono.ChronoLocalDate"
   105                 + ",java.time.chrono.ChronoLocalDate)\">between</a></code>"
   105                 + ",java.time.chrono.ChronoLocalDate)\">between</a></code>"
   106         );
   106         );
       
   107 
       
   108         checkOutput("pkg2/DocumentedNonGenericChild.html", true,
       
   109                 "<section class=\"description\">\n<hr>\n"
       
   110                 + "<pre>public abstract class <span class=\"typeNameLabel\">"
       
   111                 + "DocumentedNonGenericChild</span>\n"
       
   112                 + "extends java.lang.Object</pre>\n"
       
   113                 + "</section>");
       
   114 
       
   115         checkOutput("pkg2/DocumentedNonGenericChild.html", true,
       
   116                 "<td class=\"colFirst\"><code>protected abstract java.lang.String</code></td>\n"
       
   117                 + "<th class=\"colSecond\" scope=\"row\"><code><span class=\"memberNameLink\">"
       
   118                 + "<a href=\"#parentMethod()\">parentMethod</a></span>()</code></th>\n"
       
   119                 + "<td class=\"colLast\">\n"
       
   120                 + "<div class=\"block\">Returns some value.</div>\n"
       
   121                 + "</td>\n");
       
   122 
       
   123         checkOutput("pkg2/DocumentedNonGenericChild.html", true,
       
   124                 "<h3><a id=\"parentMethod()\">parentMethod</a></h3>\n"
       
   125                 + "<div class=\"memberSignature\"><span class=\"modifiers\">protected abstract</span>"
       
   126                 + "&nbsp;<span class=\"returnType\">java.lang.String</span>&nbsp;"
       
   127                 + "<span class=\"memberName\">parentMethod</span>()</div>");
       
   128 
   107     }
   129     }
   108 }
   130 }