Sha256: d2f64acd1d44d28d994ff4462c6154617c67ab1921a696f84b5594ba4303a6de

Contents?: true

Size: 824 Bytes

Versions: 89

Compression:

Stored size: 824 Bytes

Contents

import org.junit.Test
import kotlin.test.assertNotEquals
import kotlin.test.assertTrue

class RobotTest {

    companion object {
        val EXPECTED_ROBOT_NAME_PATTERN = Regex("[A-Z]{2}\\d{3}")
        private fun isValidName(name: String) = EXPECTED_ROBOT_NAME_PATTERN.matches(name)
    }

    val robot = Robot()

    @Test
    fun hasName() {
        assertTrue(isValidName(robot.name), "Robot name ${robot.name} didn't match expected pattern.")
    }

    @Test
    fun differentRobotsHaveDifferentNames() {
        assertNotEquals(robot.name, Robot().name)
    }

    @Test
    fun resetName() {
        val name = robot.name
        robot.reset()

        val name2 = robot.name
        assertNotEquals(name, name2)
        assertTrue(isValidName(name2), "Robot name $name2 didn't match expected pattern.")
    }

}

Version data entries

89 entries across 89 versions & 1 rubygems

Version Path
trackler-2.0.6.33 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.32 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.31 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.30 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.29 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.28 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.27 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.26 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.25 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.24 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.23 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.22 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.21 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.20 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.19 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.18 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.17 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.16 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.15 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt
trackler-2.0.6.14 tracks/kotlin/exercises/robot-name/src/test/kotlin/RobotTest.kt