This is a sample code how to create random e-mail and phone number. I used it in my unit tests of authorization.
- (NSString *)randomEmail
{
//Format:xxxxx@rdw.ru
NSString *alphabet = @"abcdefghijklmnopqrstuvwxyz0123456789";
NSString *randomString = [self randomStringWithAlphabet:alphabet numberOfChars:5];
NSString *randomEmail = [NSString stringWithFormat:@"%@@rdw.ru", randomString];
NSLog(@"randomEmail: %@", randomEmail);
return randomEmail;
}
- (NSString *)randomPhoneNumber
{
//Format:89xxxxxxxxx
NSString *alphabet = @"0123456789";
NSString *randomString = [self randomStringWithAlphabet:alphabet numberOfChars:9];
NSString *randomPhoneNumber = [NSString stringWithFormat:@"89%@", randomString];
NSLog(@"randomPhoneNumber: %@", randomPhoneNumber);
return randomPhoneNumber;
}
- (NSString *)randomStringWithAlphabet:(NSString *)alphabet numberOfChars:(NSInteger)numberOfChars
{
NSMutableString *s = [NSMutableString stringWithCapacity:numberOfChars];
for (NSUInteger i = 0U; i < numberOfChars; i++) {
u_int32_t r = arc4random() % [alphabet length];
unichar c = [alphabet characterAtIndex:r];
[s appendFormat:@"%C", c];
}
return s;
}
