From a83488aae453f1bf01cfb5507317acf0b9ddfb82 Mon Sep 17 00:00:00 2001 From: Ilya Ryzhenkov Date: Sat, 12 Jul 2014 03:55:20 +0400 Subject: Implement section parsing. --- test/data/comments/emptySection.kt | 6 +++ test/data/comments/emptySectionOnOneLine.kt | 2 + test/data/comments/multilineSection.kt | 7 +++ test/data/comments/section1.kt | 5 ++ test/data/comments/section2.kt | 6 +++ test/data/comments/sectionOnOneLine.kt | 2 + test/src/model/CommentTest.kt | 83 +++++++++++++++++++++++++++++ 7 files changed, 111 insertions(+) create mode 100644 test/data/comments/emptySection.kt create mode 100644 test/data/comments/emptySectionOnOneLine.kt create mode 100644 test/data/comments/multilineSection.kt create mode 100644 test/data/comments/section1.kt create mode 100644 test/data/comments/section2.kt create mode 100644 test/data/comments/sectionOnOneLine.kt (limited to 'test') diff --git a/test/data/comments/emptySection.kt b/test/data/comments/emptySection.kt new file mode 100644 index 00000000..0e618b2a --- /dev/null +++ b/test/data/comments/emptySection.kt @@ -0,0 +1,6 @@ + +/** + * Summary + * $one + */ +val property = "test" \ No newline at end of file diff --git a/test/data/comments/emptySectionOnOneLine.kt b/test/data/comments/emptySectionOnOneLine.kt new file mode 100644 index 00000000..4bb6c6f6 --- /dev/null +++ b/test/data/comments/emptySectionOnOneLine.kt @@ -0,0 +1,2 @@ +/** Summary $one*/ +val property = "test" \ No newline at end of file diff --git a/test/data/comments/multilineSection.kt b/test/data/comments/multilineSection.kt new file mode 100644 index 00000000..be83b641 --- /dev/null +++ b/test/data/comments/multilineSection.kt @@ -0,0 +1,7 @@ +/** + * Summary + * $one + * line one + * line two + */ +val property = "test" \ No newline at end of file diff --git a/test/data/comments/section1.kt b/test/data/comments/section1.kt new file mode 100644 index 00000000..0a27d394 --- /dev/null +++ b/test/data/comments/section1.kt @@ -0,0 +1,5 @@ +/** + * Summary + * $one section one + */ +val property = "test" \ No newline at end of file diff --git a/test/data/comments/section2.kt b/test/data/comments/section2.kt new file mode 100644 index 00000000..a34aa853 --- /dev/null +++ b/test/data/comments/section2.kt @@ -0,0 +1,6 @@ +/** + * Summary + * $one section one + * $two section two + */ +val property = "test" \ No newline at end of file diff --git a/test/data/comments/sectionOnOneLine.kt b/test/data/comments/sectionOnOneLine.kt new file mode 100644 index 00000000..cab5c69c --- /dev/null +++ b/test/data/comments/sectionOnOneLine.kt @@ -0,0 +1,2 @@ +/** Summary $one same line */ +val property = "test" \ No newline at end of file diff --git a/test/src/model/CommentTest.kt b/test/src/model/CommentTest.kt index f7d313fe..6c835f8d 100644 --- a/test/src/model/CommentTest.kt +++ b/test/src/model/CommentTest.kt @@ -74,4 +74,87 @@ doc3""", doc.summary) } } } + + Test fun emptySection() { + verifyModel("test/data/comments/emptySection.kt") { model -> + with(model.nodes.single().members.single()) { + assertEquals("Summary", doc.summary) + assertEquals(1, doc.sections.count()) + with (doc.sections.elementAt(0)) { + assertEquals("one", label) + assertEquals("", text) + } + } + } + } + + Test fun section1() { + verifyModel("test/data/comments/section1.kt") { model -> + with(model.nodes.single().members.single()) { + assertEquals("Summary", doc.summary) + assertEquals(1, doc.sections.count()) + with (doc.sections.elementAt(0)) { + assertEquals("one", label) + assertEquals("section one", text) + } + } + } + } + + Test fun section2() { + verifyModel("test/data/comments/section2.kt") { model -> + with(model.nodes.single().members.single()) { + assertEquals("Summary", doc.summary) + assertEquals(2, doc.sections.count()) + with (doc.sections.elementAt(0)) { + assertEquals("one", label) + assertEquals("section one", text) + } + with (doc.sections.elementAt(1)) { + assertEquals("two", label) + assertEquals("section two", text) + } + } + } + } + + Test fun sectionOnOneLine() { + verifyModel("test/data/comments/sectionOnOneLine.kt") { model -> + with(model.nodes.single().members.single()) { + assertEquals("Summary", doc.summary) + assertEquals(1, doc.sections.count()) + with (doc.sections.elementAt(0)) { + assertEquals("one", label) + assertEquals("same line", text) + } + } + } + } + + Test fun emptySectionOnOneLine() { + verifyModel("test/data/comments/emptySectionOnOneLine.kt") { model -> + with(model.nodes.single().members.single()) { + assertEquals("Summary", doc.summary) + assertEquals(1, doc.sections.count()) + with (doc.sections.elementAt(0)) { + assertEquals("one", label) + assertEquals("", text) + } + } + } + } + + Test fun multilineSection() { + verifyModel("test/data/comments/multilineSection.kt") { model -> + with(model.nodes.single().members.single()) { + assertEquals("Summary", doc.summary) + assertEquals(1, doc.sections.count()) + with (doc.sections.elementAt(0)) { + assertEquals("one", label) + assertEquals("""line one +line two""", text) + } + } + } + } } -- cgit