Cleaned up tests
This commit is contained in:
parent
96fbbd6634
commit
4821274d13
4 changed files with 67 additions and 40 deletions
2
.idea/kotlinc.xml
generated
2
.idea/kotlinc.xml
generated
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="KotlinJpsPluginSettings">
|
<component name="KotlinJpsPluginSettings">
|
||||||
<option name="version" value="1.7.10" />
|
<option name="version" value="1.7.20" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
|
@ -10,7 +10,7 @@ plugins {
|
||||||
id("java")
|
id("java")
|
||||||
id("maven-publish")
|
id("maven-publish")
|
||||||
id("org.jetbrains.dokka") version "1.7.10"
|
id("org.jetbrains.dokka") version "1.7.10"
|
||||||
id("org.jetbrains.kotlinx.kover") version "0.6.0"
|
id("org.jetbrains.kotlinx.kover") version "0.6.1"
|
||||||
id("org.sonarqube") version "3.4.0.2513"
|
id("org.sonarqube") version "3.4.0.2513"
|
||||||
id("signing")
|
id("signing")
|
||||||
kotlin("jvm") version "1.7.20"
|
kotlin("jvm") version "1.7.20"
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
<SmellBaseline>
|
<SmellBaseline>
|
||||||
<ManuallySuppressedIssues/>
|
<ManuallySuppressedIssues/>
|
||||||
<CurrentIssues>
|
<CurrentIssues>
|
||||||
|
<ID>LongMethod:ReadingTimeTest.kt$ReadingTimeTest$@Test fun testReadingTimeInSec()</ID>
|
||||||
<ID>LongParameterList:ReadingTime.kt$ReadingTime$( text: String, wpm: Int = 275, var postfix: String = "min read", var plural: String = "min read", excludeImages: Boolean = false, extra: Int = 0, var roundingMode: RoundingMode = RoundingMode.HALF_EVEN )</ID>
|
<ID>LongParameterList:ReadingTime.kt$ReadingTime$( text: String, wpm: Int = 275, var postfix: String = "min read", var plural: String = "min read", excludeImages: Boolean = false, extra: Int = 0, var roundingMode: RoundingMode = RoundingMode.HALF_EVEN )</ID>
|
||||||
<ID>MagicNumber:ReadingTime.kt$ReadingTime$10</ID>
|
<ID>MagicNumber:ReadingTime.kt$ReadingTime$10</ID>
|
||||||
<ID>MagicNumber:ReadingTime.kt$ReadingTime$12</ID>
|
<ID>MagicNumber:ReadingTime.kt$ReadingTime$12</ID>
|
||||||
|
|
|
@ -63,113 +63,139 @@ class ReadingTimeTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testWordCount() {
|
fun testWordCount() {
|
||||||
assertEquals(0, ReadingTime.wordCount(" "), "empty")
|
assertEquals(0, ReadingTime.wordCount(" "), "wordCount(empty)")
|
||||||
assertEquals(3, ReadingTime.wordCount("one two three"), "one two three")
|
assertEquals(3, ReadingTime.wordCount("one two three"), "wordCount(one two three)")
|
||||||
assertEquals(2, ReadingTime.wordCount(" one two "), "one two")
|
assertEquals(2, ReadingTime.wordCount(" one two "), "wordCount(one two)")
|
||||||
assertEquals(7, ReadingTime.wordCount(rt.text), "text")
|
assertEquals(7, ReadingTime.wordCount(rt.text), "wordCount(text)")
|
||||||
assertEquals(505, ReadingTime.wordCount(blogPost), "blogPost")
|
assertEquals(505, ReadingTime.wordCount(blogPost), "wordCount(blogPost)")
|
||||||
assertEquals(391, ReadingTime.wordCount(mediumPost), "mediumPost")
|
assertEquals(391, ReadingTime.wordCount(mediumPost), "wordCount(mediumPost)")
|
||||||
assertEquals(275, ReadingTime.wordCount(twoSeventyFive), "275")
|
assertEquals(275, ReadingTime.wordCount(twoSeventyFive), "wordCount(275)")
|
||||||
assertEquals(275, ReadingTime.wordCount("$twoSeventyFive $img"), "275 + image")
|
assertEquals(275, ReadingTime.wordCount("$twoSeventyFive $img"), "wordCount(275 + image)")
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testImgCount() {
|
fun testImgCount() {
|
||||||
assertEquals(1, ReadingTime.imgCount(rt.text), "text")
|
assertEquals(1, ReadingTime.imgCount(rt.text), "imgCount(text)")
|
||||||
assertEquals(11, ReadingTime.imgCount(blogPost), "blogPost")
|
assertEquals(11, ReadingTime.imgCount(blogPost), "imgCount(blogPost)")
|
||||||
assertEquals(3, ReadingTime.imgCount(mediumPost), "mediumPost")
|
assertEquals(3, ReadingTime.imgCount(mediumPost), "imgCount(mediumPost)")
|
||||||
assertEquals(1, ReadingTime.imgCount("$twoSeventyFive $img"), "275 + image")
|
assertEquals(1, ReadingTime.imgCount("$twoSeventyFive $img"), "imgCount(275 + image)")
|
||||||
assertEquals(2, ReadingTime.imgCount("$twoSeventyFive $img $img"), "275 + 2 images")
|
assertEquals(2, ReadingTime.imgCount("$twoSeventyFive $img $img"), "imgCount(275 + 2 images)")
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testReadingTimeInSec() {
|
fun testReadingTimeInSec() {
|
||||||
assertEquals(calcReadingTime(rt.text, rt.wpm) + calcImgTime(1), rt.calcReadingTimeInSec(), "text + image")
|
assertEquals(
|
||||||
|
calcReadingTime(rt.text, rt.wpm) + calcImgTime(1),
|
||||||
|
rt.calcReadingTimeInSec(),
|
||||||
|
"calcReadingTimeInSec(text + image)"
|
||||||
|
)
|
||||||
|
|
||||||
rt.text = "$img ${img.uppercase()}"
|
rt.text = "$img ${img.uppercase()}"
|
||||||
assertEquals(calcImgTime(2), rt.calcReadingTimeInSec(), "2 images")
|
assertEquals(calcImgTime(2), rt.calcReadingTimeInSec(), "calcReadingTimeInSec(2 images)")
|
||||||
rt.excludeImages = true
|
rt.excludeImages = true
|
||||||
assertEquals(0.0, rt.calcReadingTimeInSec(), "image uppercase")
|
assertEquals(0.0, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(image uppercase)")
|
||||||
rt.excludeImages = false
|
rt.excludeImages = false
|
||||||
|
|
||||||
rt.text = blogPost
|
rt.text = blogPost
|
||||||
assertEquals(
|
assertEquals(
|
||||||
calcReadingTime(rt.text, rt.wpm) + calcImgTime(11), rt.calcReadingTimeInSec(), "blogPost"
|
calcReadingTime(rt.text, rt.wpm) + calcImgTime(11),
|
||||||
|
rt.calcReadingTimeInSec(),
|
||||||
|
"calcReadingTimeInSec(blogPost)"
|
||||||
)
|
)
|
||||||
|
|
||||||
rt.excludeImages = true
|
rt.excludeImages = true
|
||||||
assertEquals(calcReadingTime(rt.text, rt.wpm), rt.calcReadingTimeInSec(), "exclude images")
|
assertEquals(
|
||||||
|
calcReadingTime(rt.text, rt.wpm),
|
||||||
|
rt.calcReadingTimeInSec(),
|
||||||
|
"calcReadingTimeInSec(exclude images)"
|
||||||
|
)
|
||||||
rt.extra = 60
|
rt.extra = 60
|
||||||
assertEquals(calcReadingTime(rt.text, rt.wpm) + 60L, rt.calcReadingTimeInSec(), "extra 60")
|
assertEquals(
|
||||||
|
calcReadingTime(rt.text, rt.wpm) + 60L,
|
||||||
|
rt.calcReadingTimeInSec(),
|
||||||
|
"calcReadingTimeInSec(extra 60)"
|
||||||
|
)
|
||||||
rt.extra = 0
|
rt.extra = 0
|
||||||
rt.excludeImages = false
|
rt.excludeImages = false
|
||||||
|
|
||||||
rt.text = mediumPost
|
rt.text = mediumPost
|
||||||
rt.wpm = 300
|
rt.wpm = 300
|
||||||
assertEquals(calcReadingTime(rt.text, 300) + calcImgTime(3), rt.calcReadingTimeInSec(), "mediumPost 300 wpm")
|
assertEquals(
|
||||||
|
calcReadingTime(rt.text, 300) + calcImgTime(3),
|
||||||
|
rt.calcReadingTimeInSec(),
|
||||||
|
"calcReadingTimeInSec(mediumPost 300 wpm)"
|
||||||
|
)
|
||||||
rt.wpm = 275
|
rt.wpm = 275
|
||||||
|
|
||||||
rt.text = "This is a test"
|
rt.text = "This is a test"
|
||||||
assertEquals(0.0, rt.calcReadingTimeInSec(), "test")
|
assertEquals(0.0, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(test)")
|
||||||
|
|
||||||
rt.text = twoSeventyFive
|
rt.text = twoSeventyFive
|
||||||
assertEquals(60.0, rt.calcReadingTimeInSec(), "275")
|
assertEquals(60.0, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(275)")
|
||||||
|
|
||||||
rt.text = "$twoSeventyFive $img"
|
rt.text = "$twoSeventyFive $img"
|
||||||
assertEquals(72.0, rt.calcReadingTimeInSec(), "275 + image")
|
assertEquals(72.0, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(275 + image)")
|
||||||
|
|
||||||
rt.text = "$twoSeventyFive $img $img"
|
rt.text = "$twoSeventyFive $img $img"
|
||||||
assertEquals(83.0, rt.calcReadingTimeInSec(), "275 + 2 images")
|
assertEquals(83.0, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(275 + 2 images)")
|
||||||
|
|
||||||
rt.text = "$twoSeventyFive ${img.repeat(10)}"
|
rt.text = "$twoSeventyFive ${img.repeat(10)}"
|
||||||
assertEquals(60.0 + 12 + 11 + 10 + 9 + 8 + 7 + 6 + 5 + 4 + 3, rt.calcReadingTimeInSec(), "10 images")
|
assertEquals(
|
||||||
|
60.0 + 12 + 11 + 10 + 9 + 8 + 7 + 6 + 5 + 4 + 3,
|
||||||
|
rt.calcReadingTimeInSec(),
|
||||||
|
"calcReadingTimeInSec(10 images)"
|
||||||
|
)
|
||||||
|
|
||||||
rt.text = "$twoSeventyFive ${img.repeat(10)} $img"
|
rt.text = "$twoSeventyFive ${img.repeat(10)} $img"
|
||||||
assertEquals(135.0 + 3, rt.calcReadingTimeInSec(), "11 images")
|
assertEquals(135.0 + 3, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(11 images)")
|
||||||
|
|
||||||
rt.text = "$twoSeventyFive $twoSeventyFive"
|
rt.text = "$twoSeventyFive $twoSeventyFive"
|
||||||
assertEquals(120.0, rt.calcReadingTimeInSec(), "275*2")
|
assertEquals(120.0, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(275*2)")
|
||||||
|
|
||||||
rt.text = ""
|
rt.text = ""
|
||||||
assertEquals(0.0, rt.calcReadingTimeInSec(), "empty")
|
assertEquals(0.0, rt.calcReadingTimeInSec(), "calcReadingTimeInSec(text=empty)")
|
||||||
rt.postfix = ""
|
rt.postfix = ""
|
||||||
assertEquals(rt.calcReadingTime(), rt.calcReadingTimeInSec().toInt().toString(), "toInt(0)")
|
assertEquals(
|
||||||
|
rt.calcReadingTime(),
|
||||||
|
rt.calcReadingTimeInSec().toInt().toString(),
|
||||||
|
"calcReadingTimeInSec(postfix=empty)"
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testReadingTime() {
|
fun testReadingTime() {
|
||||||
rt.text = blogPost
|
rt.text = blogPost
|
||||||
assertEquals("2 min read", rt.calcReadingTime(), "blogPost")
|
assertEquals("2 min read", rt.calcReadingTime(), "calcReadingTime(blogPost)")
|
||||||
|
|
||||||
rt.plural = "mins read"
|
rt.plural = "mins read"
|
||||||
assertEquals("2 mins read", rt.calcReadingTime(), "plural")
|
assertEquals("2 mins read", rt.calcReadingTime(), "calcReadingTime(plural)")
|
||||||
|
|
||||||
rt.text = mediumPost
|
rt.text = mediumPost
|
||||||
rt.plural = ""
|
rt.plural = ""
|
||||||
assertEquals("2", rt.calcReadingTime(), "mediumPost")
|
assertEquals("2", rt.calcReadingTime(), "calcReadingTime(mediumPost)")
|
||||||
|
|
||||||
rt.text = "This is a test."
|
rt.text = "This is a test."
|
||||||
rt.postfix = ""
|
rt.postfix = ""
|
||||||
assertEquals("0", rt.calcReadingTime(), "test")
|
assertEquals("0", rt.calcReadingTime(), "calcReadingTime(test)")
|
||||||
|
|
||||||
rt.text = ""
|
rt.text = ""
|
||||||
assertEquals("0", rt.calcReadingTime(), "empty")
|
assertEquals("0", rt.calcReadingTime(), "calcReadingTime(empty)")
|
||||||
|
|
||||||
rt.text = twoSeventyFive
|
rt.text = twoSeventyFive
|
||||||
assertEquals("1", rt.calcReadingTime(), "275")
|
assertEquals("1", rt.calcReadingTime(), "calcReadingTime(275)")
|
||||||
|
|
||||||
rt.text = "$twoSeventyFive $twoSeventyFive"
|
rt.text = "$twoSeventyFive $twoSeventyFive"
|
||||||
assertEquals("2", rt.calcReadingTime(), "275 * 2")
|
assertEquals("2", rt.calcReadingTime(), "calcReadingTime(275 * 2)")
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun testRoundingMode() {
|
fun testRoundingMode() {
|
||||||
rt.text = blogPost
|
rt.text = blogPost
|
||||||
rt.roundingMode = RoundingMode.UP
|
rt.roundingMode = RoundingMode.UP
|
||||||
assertEquals("3 min read", rt.calcReadingTime(), "UP")
|
assertEquals("3 min read", rt.calcReadingTime(), "RoundingMode.UP")
|
||||||
|
|
||||||
rt.text = mediumPost
|
rt.text = mediumPost
|
||||||
rt.roundingMode = RoundingMode.DOWN
|
rt.roundingMode = RoundingMode.DOWN
|
||||||
assertEquals("1 min read", rt.calcReadingTime(), "DOWN")
|
assertEquals("1 min read", rt.calcReadingTime(), "RoundingMode.DOWN")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue