<lambda>null1 package org.jetbrains.dokka.tests
2 
3 import org.junit.Test
4 import org.junit.Assert.*
5 import org.jetbrains.dokka.*
6 
7 public class CommentTest {
8 
9     @Test fun codeBlockComment() {
10         verifyModel("testdata/comments/codeBlockComment.kt") { model ->
11             with(model.members.single().members.first()) {
12                 assertEqualsIgnoringSeparators("""[code lang=brainfuck]
13                                 |
14                                 |++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.
15                                 |
16                                 |[/code]
17                                 |""".trimMargin(),
18                         content.toTestString())
19             }
20             with(model.members.single().members.last()) {
21                 assertEqualsIgnoringSeparators("""[code]
22                                 |
23                                 |a + b - c
24                                 |
25                                 |[/code]
26                                 |""".trimMargin(),
27                         content.toTestString())
28             }
29         }
30     }
31 
32     @Test fun emptyDoc() {
33         verifyModel("testdata/comments/emptyDoc.kt") { model ->
34             with(model.members.single().members.single()) {
35                 assertEquals(Content.Empty, content)
36             }
37         }
38     }
39 
40     @Test fun emptyDocButComment() {
41         verifyModel("testdata/comments/emptyDocButComment.kt") { model ->
42             with(model.members.single().members.single()) {
43                 assertEquals(Content.Empty, content)
44             }
45         }
46     }
47 
48     @Test fun multilineDoc() {
49         verifyModel("testdata/comments/multilineDoc.kt") { model ->
50             with(model.members.single().members.single()) {
51                 assertEquals("doc1", content.summary.toTestString())
52                 assertEquals("doc2\ndoc3", content.description.toTestString())
53             }
54         }
55     }
56 
57     @Test fun multilineDocWithComment() {
58         verifyModel("testdata/comments/multilineDocWithComment.kt") { model ->
59             with(model.members.single().members.single()) {
60                 assertEquals("doc1", content.summary.toTestString())
61                 assertEquals("doc2\ndoc3", content.description.toTestString())
62             }
63         }
64     }
65 
66     @Test fun oneLineDoc() {
67         verifyModel("testdata/comments/oneLineDoc.kt") { model ->
68             with(model.members.single().members.single()) {
69                 assertEquals("doc", content.summary.toTestString())
70             }
71         }
72     }
73 
74     @Test fun oneLineDocWithComment() {
75         verifyModel("testdata/comments/oneLineDocWithComment.kt") { model ->
76             with(model.members.single().members.single()) {
77                 assertEquals("doc", content.summary.toTestString())
78             }
79         }
80     }
81 
82     @Test fun oneLineDocWithEmptyLine() {
83         verifyModel("testdata/comments/oneLineDocWithEmptyLine.kt") { model ->
84             with(model.members.single().members.single()) {
85                 assertEquals("doc", content.summary.toTestString())
86             }
87         }
88     }
89 
90     @Test fun emptySection() {
91         verifyModel("testdata/comments/emptySection.kt") { model ->
92             with(model.members.single().members.single()) {
93                 assertEquals("Summary", content.summary.toTestString())
94                 assertEquals(1, content.sections.count())
95                 with (content.findSectionByTag("one")!!) {
96                     assertEquals("One", tag)
97                     assertEquals("", toTestString())
98                 }
99             }
100         }
101     }
102 
103     @Test fun quotes() {
104         verifyModel("testdata/comments/quotes.kt") { model ->
105             with(model.members.single().members.single()) {
106                 assertEquals("it's \"useful\"", content.summary.toTestString())
107             }
108         }
109     }
110 
111     @Test fun section1() {
112         verifyModel("testdata/comments/section1.kt") { model ->
113             with(model.members.single().members.single()) {
114                 assertEquals("Summary", content.summary.toTestString())
115                 assertEquals(1, content.sections.count())
116                 with (content.findSectionByTag("one")!!) {
117                     assertEquals("One", tag)
118                     assertEquals("section one", toTestString())
119                 }
120             }
121         }
122     }
123 
124     @Test fun section2() {
125         verifyModel("testdata/comments/section2.kt") { model ->
126             with(model.members.single().members.single()) {
127                 assertEquals("Summary", content.summary.toTestString())
128                 assertEquals(2, content.sections.count())
129                 with (content.findSectionByTag("one")!!) {
130                     assertEquals("One", tag)
131                     assertEquals("section one", toTestString())
132                 }
133                 with (content.findSectionByTag("two")!!) {
134                     assertEquals("Two", tag)
135                     assertEquals("section two", toTestString())
136                 }
137             }
138         }
139     }
140 
141     @Test fun multilineSection() {
142         verifyModel("testdata/comments/multilineSection.kt") { model ->
143             with(model.members.single().members.single()) {
144                 assertEquals("Summary", content.summary.toTestString())
145                 assertEquals(1, content.sections.count())
146                 with (content.findSectionByTag("one")!!) {
147                     assertEquals("One", tag)
148                     assertEquals("""line one
149 line two""", toTestString())
150                 }
151             }
152         }
153     }
154 
155     @Test fun directive() {
156         verifyModel("testdata/comments/directive.kt") { model ->
157             with(model.members.single().members[3]) {
158                 assertEquals("Summary", content.summary.toTestString())
159                 with (content.description) {
160                     assertEqualsIgnoringSeparators("""
161                         |[code lang=kotlin]
162                         |if (true) {
163                         |    println(property)
164                         |}
165                         |[/code]
166                         |[code lang=kotlin]
167                         |if (true) {
168                         |    println(property)
169                         |}
170                         |[/code]
171                         |[code lang=kotlin]
172                         |if (true) {
173                         |    println(property)
174                         |}
175                         |[/code]
176                         |[code lang=kotlin]
177                         |if (true) {
178                         |    println(property)
179                         |}
180                         |[/code]
181                         |""".trimMargin(), toTestString())
182                 }
183             }
184         }
185     }
186 }
187