Как получить тестовое покрытие для класса Kotlin только со статическими константами (константы объекта-компаньона) - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть класс в Kotlin с только статическими константами, класс с сопутствующим объектом, содержащим только const val, как мы его называем в Kotlin.Это выглядит примерно так ..

package com.abc.xyz.util

class Constants {
    companion object {
        const val DEFAULT_VAL = 0
        const val USERNAME_FOR_ABC = "*"
    }
}

Я написал метод с использованием только Assert.assertEquals, например Assert.assertEquals(Constants.DEFAULT_VAL, 0) & Assert.assertEquals(Constants.USERNAME_FOR_ABC, "*"), но он не увеличил охват тестового примера.

IХотите узнать, есть ли способ, которым я могу покрыть этот класс при тестировании и увеличить свое тестовое покрытие?

1 Ответ

0 голосов
/ 21 сентября 2018

Вам не нужно companion object для достижения нужного поведения:

object Constants {
    const val DEFAULT_VAL = 0
    const val USERNAME_FOR_ABC = "*"
}

Что касается тестового покрытия, вы должны учитывать, что это константы времени компиляции.Вы не увеличиваете свое покрытие этим, потому что это не засчитано.Вы могли бы взглянуть на свои отчеты и обнаружить, что эти строки не учитываются.

...