Sha256: fed28fd476db0a8e48288232f4d0e9c65a70ecc5fd1511c3ef25599332e06cc3
Contents?: true
Size: 1.51 KB
Versions: 396
Compression:
Stored size: 1.51 KB
Contents
#import <XCTest/XCTest.h> #if __has_include("RobotNameExample.h") # import "RobotNameExample.h" # else # import "RobotName.h" #endif NS_ASSUME_NONNULL_BEGIN @interface RobotNameTest : XCTestCase @end @implementation RobotNameTest - (BOOL)string:(NSString *)string matches:(NSString *)regexString { NSRegularExpression *expression = [NSRegularExpression regularExpressionWithPattern:regexString options:NSRegularExpressionCaseInsensitive error:NULL]; NSArray *matches = [expression matchesInString:string options:0 range:NSMakeRange(0,[string length])]; return [matches count] >= 1; } - (void)testHasName { Robot *robot = [[Robot alloc] init]; NSString *name = [robot name]; XCTAssert([self string:name matches:@"\\A\\w{2}\\d{3}\\z"], @"%@ is not a valid robot name", name); } - (void)testNameSticks { Robot *robot = [[Robot alloc] init]; [robot name]; XCTAssertEqualObjects([robot name], [robot name]); } - (void)testDifferentRobotsHaveDifferentNames { Robot *firstRobot = [[Robot alloc] init]; Robot *secondRobot = [[Robot alloc] init]; XCTAssertNotEqualObjects([firstRobot name], [secondRobot name]); } - (void)testResetName { Robot *robot = [[Robot alloc] init]; NSString *firstName = [robot name]; [robot reset]; NSString *secondName = [robot name]; XCTAssertNotEqualObjects(firstName, secondName); } @end NS_ASSUME_NONNULL_END
Version data entries
396 entries across 396 versions & 1 rubygems