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.
		
		
		
		
		
			
		
			
				
	
	
		
			81 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Objective-C
		
	
			
		
		
	
	
			81 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Objective-C
		
	
| //
 | |
| //  Copyright (c) 2018 Open Whisper Systems. All rights reserved.
 | |
| //
 | |
| 
 | |
| #import "OWSFingerprint.h"
 | |
| #import "SSKBaseTestObjC.h"
 | |
| #import <SessionCurve25519Kit/Curve25519.h>
 | |
| 
 | |
| @interface OWSFingerprintTest : SSKBaseTestObjC
 | |
| 
 | |
| @end
 | |
| 
 | |
| #pragma mark -
 | |
| 
 | |
| @implementation OWSFingerprintTest
 | |
| 
 | |
| - (void)testDisplayableTextInsertsSpaces
 | |
| {
 | |
|     NSString *aliceStableId = @"+13231111111";
 | |
|     NSData *aliceIdentityKey = [Curve25519 generateKeyPair].publicKey;
 | |
|     NSString *bobStableId = @"+14152222222";
 | |
|     NSData *bobIdentityKey = [Curve25519 generateKeyPair].publicKey;
 | |
| 
 | |
|     OWSFingerprint *aliceFingerprint = [OWSFingerprint fingerprintWithMyStableId:aliceStableId
 | |
|                                                                    myIdentityKey:aliceIdentityKey
 | |
|                                                                    theirStableId:bobStableId
 | |
|                                                                 theirIdentityKey:bobIdentityKey
 | |
|                                                                        theirName:@"Bob"
 | |
|                                                                   hashIterations:2];
 | |
| 
 | |
|     NSString *displayableText = aliceFingerprint.displayableText;
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(0, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(1, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(2, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(3, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(4, 1)]);
 | |
|     XCTAssertEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(5, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(6, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(7, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(8, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(9, 1)]);
 | |
|     XCTAssertNotEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(10, 1)]);
 | |
|     XCTAssertEqualObjects(@" ", [displayableText substringWithRange:NSMakeRange(11, 1)]);
 | |
| }
 | |
| 
 | |
| - (void)testTextMatchesReciprocally
 | |
| {
 | |
|     NSString *aliceStableId = @"+13231111111";
 | |
|     NSData *aliceIdentityKey = [Curve25519 generateKeyPair].publicKey;
 | |
|     NSString *bobStableId = @"+14152222222";
 | |
|     NSData *bobIdentityKey = [Curve25519 generateKeyPair].publicKey;
 | |
|     NSString *charlieStableId = @"+14153333333";
 | |
|     NSData *charlieIdentityKey = [Curve25519 generateKeyPair].publicKey;
 | |
| 
 | |
|     OWSFingerprint *aliceFingerprint = [OWSFingerprint fingerprintWithMyStableId:aliceStableId
 | |
|                                                                    myIdentityKey:aliceIdentityKey
 | |
|                                                                    theirStableId:bobStableId
 | |
|                                                                 theirIdentityKey:bobIdentityKey
 | |
|                                                                        theirName:@"Bob"
 | |
|                                                                   hashIterations:2];
 | |
| 
 | |
|     OWSFingerprint *bobFingerprint = [OWSFingerprint fingerprintWithMyStableId:bobStableId
 | |
|                                                                  myIdentityKey:bobIdentityKey
 | |
|                                                                  theirStableId:aliceStableId
 | |
|                                                               theirIdentityKey:aliceIdentityKey
 | |
|                                                                      theirName:@"Alice"
 | |
|                                                                 hashIterations:2];
 | |
| 
 | |
|     OWSFingerprint *charlieFingerprint = [OWSFingerprint fingerprintWithMyStableId:charlieStableId
 | |
|                                                                      myIdentityKey:charlieIdentityKey
 | |
|                                                                      theirStableId:aliceStableId
 | |
|                                                                   theirIdentityKey:aliceIdentityKey
 | |
|                                                                          theirName:@"Alice"
 | |
|                                                                     hashIterations:2];
 | |
| 
 | |
|     XCTAssertEqualObjects(aliceFingerprint.displayableText, bobFingerprint.displayableText);
 | |
|     XCTAssertNotEqualObjects(aliceFingerprint.displayableText, charlieFingerprint.displayableText);
 | |
| }
 | |
| 
 | |
| @end
 |