mirror of https://github.com/oxen-io/session-ios
				
				
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			63 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Objective-C
		
	
			
		
		
	
	
			63 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Objective-C
		
	
| //
 | |
| //  Copyright (c) 2017 Open Whisper Systems. All rights reserved.
 | |
| //
 | |
| 
 | |
| #import "OWSScrubbingLogFormatter.h"
 | |
| #import <XCTest/XCTest.h>
 | |
| 
 | |
| NS_ASSUME_NONNULL_BEGIN
 | |
| 
 | |
| @interface OWSScrubbingLogFormatterTest : XCTestCase
 | |
| 
 | |
| @end
 | |
| 
 | |
| @implementation OWSScrubbingLogFormatterTest
 | |
| 
 | |
| - (DDLogMessage *)messageWithString:(NSString *)string
 | |
| {
 | |
|     return [[DDLogMessage alloc] initWithMessage:string
 | |
|                                            level:DDLogLevelInfo
 | |
|                                             flag:0
 | |
|                                          context:0
 | |
|                                             file:nil
 | |
|                                         function:nil
 | |
|                                             line:0
 | |
|                                              tag:nil
 | |
|                                          options:0
 | |
|                                        timestamp:[NSDate new]];
 | |
| }
 | |
| 
 | |
| - (void)testPhoneNumbersScrubbed
 | |
| {
 | |
|     NSArray<NSString *> *phoneStrings = @[
 | |
|         @"+13331231234 ",
 | |
|         @"+4113331231234",
 | |
|         @"+13331231234 something something +13331231234",
 | |
|     ];
 | |
| 
 | |
|     for (NSString *phoneString in phoneStrings) {
 | |
|         OWSScrubbingLogFormatter *formatter = [OWSScrubbingLogFormatter new];
 | |
|         NSString *messageText = [NSString stringWithFormat:@"My phone number is %@", phoneString];
 | |
|         NSString *actual = [formatter formatLogMessage:[self messageWithString:messageText]];
 | |
|         NSRange redactedRange = [actual rangeOfString:@"My phone number is [ REDACTED_PHONE_NUMBER:xxx234 ]"];
 | |
|         XCTAssertNotEqual(NSNotFound, redactedRange.location, "Failed to redact phone string: %@", phoneString);
 | |
| 
 | |
|         NSRange phoneNumberRange = [actual rangeOfString:phoneString];
 | |
|         XCTAssertEqual(NSNotFound, phoneNumberRange.location, "Failed to redact phone string: %@", phoneString);
 | |
|     }
 | |
| }
 | |
| 
 | |
| - (void)testNonPhonenumberNotScrubbed
 | |
| {
 | |
|     OWSScrubbingLogFormatter *formatter = [OWSScrubbingLogFormatter new];
 | |
|     NSString *actual =
 | |
|         [formatter formatLogMessage:[self messageWithString:[NSString stringWithFormat:@"Some unfiltered string"]]];
 | |
| 
 | |
|     NSRange redactedRange = [actual rangeOfString:@"Some unfiltered string"];
 | |
|     XCTAssertNotEqual(NSNotFound, redactedRange.location, "Shouldn't touch non phone string.");
 | |
| }
 | |
| 
 | |
| @end
 | |
| 
 | |
| NS_ASSUME_NONNULL_END
 |