Sha256: 00b0772ca8955378aa80d74b1fd60b45aa5d8b06ae86fea346b5b21d6139d1df
Contents?: true
Size: 1.1 KB
Versions: 71
Compression:
Stored size: 1.1 KB
Contents
#if swift(>=3.0) import XCTest #endif class RobotNameTest: XCTestCase { func robotNameIsCorrectlyFormatted(_ name: String) -> Bool { let robotNameRegex = try? NSRegularExpression(pattern: "\\A\\w{2}\\d{3}\\z", options: NSRegularExpression.Options.caseInsensitive) guard let matches = robotNameRegex?.matches(in: name, options: .withoutAnchoringBounds, range: NSRange(0..<name.utf16.count)) else { return false } return matches.count > 0 } func testHasName() { let robot = Robot() XCTAssert(robotNameIsCorrectlyFormatted(robot.name)) } func testNameSticks() { let robot = Robot() let name = robot.name XCTAssertEqual(name, robot.name) } func testDifferentRobotsHaveDifferentNames() { let firstRobot = Robot() let secondRobot = Robot() XCTAssertNotEqual(firstRobot.name, secondRobot.name) } func testResetName() { var robot = Robot() let firstName = robot.name robot.resetName() let secondName = robot.name XCTAssertNotEqual(firstName, secondName) } }
Version data entries
71 entries across 71 versions & 1 rubygems