Sha256: ad2155f6d3238734938f93932b077394818233961cf0fc72a36d12552d4f30f7

Contents?: true

Size: 1022 Bytes

Versions: 9

Compression:

Stored size: 1022 Bytes

Contents

import unittest

from robot_name import Robot
import random


class RobotTest(unittest.TestCase):
    name_re = r'^[A-Z]{2}\d{3}$'

    def test_has_name(self):
        self.assertRegexpMatches(Robot().name, self.name_re)

    def test_name_sticks(self):
        robot = Robot()
        robot.name
        self.assertEqual(robot.name, robot.name)

    def test_different_robots_have_different_names(self):
        self.assertNotEqual(
            Robot().name,
            Robot().name
        )

    def test_reset_name(self):
        # Set a seed
        seed = "Totally random."

        # Initialize RNG using the seed
        random.seed(seed)

        # Call the generator
        robot = Robot()
        name = robot.name

        # Reinitialize RNG using seed
        random.seed(seed)

        # Call the generator again
        robot.reset()
        name2 = robot.name
        self.assertNotEqual(name, name2)
        self.assertRegexpMatches(name2, self.name_re)

if __name__ == '__main__':
    unittest.main()

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
trackler-1.0.4.0 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.3.0 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.2.1 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.2.0 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.1.2 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.1.1 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.1.0 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.0.1 tracks/python/exercises/robot-name/robot_name_test.py
trackler-1.0.0 tracks/python/exercises/robot-name/robot_name_test.py