public open class TestsINeedThem2 { fun testMe2() { } } class TestsINeedThem2AnotherClass { fun thisNeedsATest() { println("thisNeedsATest") } } enum class ProtocolState { WAITING { override fun signal() = TALKING }, TALKING { override fun signal() = WAITING }; abstract fun signal(): ProtocolState } value class Password(private val s: String) sealed class Error(val message: String) { class NetworkError : Error("Network failure") class DatabaseError : Error("Database cannot be reached") class UnknownError : Error("An unknown error has occurred") }