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
|