mirror of https://github.com/oxen-io/session-ios
parent
975cda312c
commit
1b02e186f8
@ -1,56 +1,63 @@
|
|||||||
#import <XCTest/XCTest.h>
|
#import <XCTest/XCTest.h>
|
||||||
#import "InitiatorSessionDescriptor.h"
|
#import "InitiatorSessionDescriptor.h"
|
||||||
|
#import "ResponderSessionDescriptor.h"
|
||||||
|
#import "SignalKeyingStorage.h"
|
||||||
#import "TestUtil.h"
|
#import "TestUtil.h"
|
||||||
|
|
||||||
|
@interface SignalKeyingStorage ()
|
||||||
|
+ (void)storeData:(NSData *)data forKey:(NSString *)key;
|
||||||
|
@end
|
||||||
|
|
||||||
@interface SessionDescriptorTest : XCTestCase
|
@interface SessionDescriptorTest : XCTestCase
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation SessionDescriptorTest
|
@implementation SessionDescriptorTest
|
||||||
|
|
||||||
-(void) testInitiatorSessionDescriptionJson {
|
- (void)testInitiatorSessionDescriptionJson {
|
||||||
InitiatorSessionDescriptor* d = [InitiatorSessionDescriptor initiatorSessionDescriptorWithSessionId:5
|
InitiatorSessionDescriptor *d = [InitiatorSessionDescriptor initiatorSessionDescriptorWithSessionId:5
|
||||||
andRelayServerName:@"example.com"
|
andRelayServerName:@"example.com"
|
||||||
andRelayPort:6];
|
andRelayPort:6];
|
||||||
test([d sessionId] == 5);
|
test([d sessionId] == 5);
|
||||||
test([d relayUdpPort] == 6);
|
test([d relayUdpPort] == 6);
|
||||||
test([d.relayServerName isEqualToString:@"example.com"]);
|
test([d.relayServerName isEqualToString:@"example.com"]);
|
||||||
|
|
||||||
// roundtrip
|
// roundtrip
|
||||||
InitiatorSessionDescriptor* d2 = [InitiatorSessionDescriptor initiatorSessionDescriptorFromJson:d.toJson];
|
InitiatorSessionDescriptor *d2 = [InitiatorSessionDescriptor initiatorSessionDescriptorFromJson:d.toJson];
|
||||||
test([d2 sessionId] == 5);
|
test([d2 sessionId] == 5);
|
||||||
test([d2 relayUdpPort] == 6);
|
test([d2 relayUdpPort] == 6);
|
||||||
test([d2.relayServerName isEqualToString:@"example.com"]);
|
test([d2.relayServerName isEqualToString:@"example.com"]);
|
||||||
|
|
||||||
// constant
|
// constant
|
||||||
InitiatorSessionDescriptor* d3 = [InitiatorSessionDescriptor initiatorSessionDescriptorFromJson:@"{\"sessionId\":5,\"serverName\":\"example.com\",\"relayPort\":6}"];
|
InitiatorSessionDescriptor *d3 = [InitiatorSessionDescriptor
|
||||||
|
initiatorSessionDescriptorFromJson:@"{\"sessionId\":5,\"serverName\":\"example.com\",\"relayPort\":6}"];
|
||||||
test([d3 sessionId] == 5);
|
test([d3 sessionId] == 5);
|
||||||
test([d3 relayUdpPort] == 6);
|
test([d3 relayUdpPort] == 6);
|
||||||
test([d3.relayServerName isEqualToString:@"example.com"]);
|
test([d3.relayServerName isEqualToString:@"example.com"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
-(void) testResponderSessionDescriptorFromEncryptedRemoteNotification2 {
|
- (void)testResponderSessionDescriptorFromEncryptedRemoteNotification2 {
|
||||||
|
NSDictionary *notification = @{
|
||||||
|
@"aps" : @{@"alert" : @"Incoming Call!"},
|
||||||
// todo: Rewrite test to support keychain storage with NSData
|
@"m" : @"AJV74NzwSbZ1KeV4pRwPfMZQ3a5n0V0/HV7eABUUCJvRVqGe3qFO/2XHKv1nEDwNg2naQDmd/nLOlvk="
|
||||||
|
};
|
||||||
// NSDictionary* notification = @{
|
|
||||||
// @"aps":@{@"alert":@"Incoming Call!"},
|
[Environment setCurrent:testEnv];
|
||||||
// @"m":@"AJV74NzwSbZ1KeV4pRwPfMZQ3a5n0V0/HV7eABUUCJvRVqGe3qFO/2XHKv1nEDwNg2naQDmd/nLOlvk="
|
[[TSStorageManager sharedManager] setupDatabase];
|
||||||
// };
|
|
||||||
//
|
[SignalKeyingStorage storeData:[@"0000000000000000000000000000000000000000" decodedAsHexString]
|
||||||
// [Environment setCurrent:testEnv];
|
forKey:SIGNALING_MAC_KEY];
|
||||||
// [[UICKeyChainStore keyChainStore]setValue:[@"0000000000000000000000000000000000000000" decodedAsHexString]forKey:@"Signaling Mac Key"];
|
[SignalKeyingStorage storeData:[@"00000000000000000000000000000000" decodedAsHexString]
|
||||||
//
|
forKey:SIGNALING_CIPHER_KEY];
|
||||||
// [[UICKeyChainStore keyChainStore] setValue:[@"00000000000000000000000000000000" decodedAsHexString] forKey:@"Signaling Cipher Key"];
|
|
||||||
//
|
ResponderSessionDescriptor *d =
|
||||||
// ResponderSessionDescriptor* d = [ResponderSessionDescriptor responderSessionDescriptorFromEncryptedRemoteNotification:notification];
|
[ResponderSessionDescriptor responderSessionDescriptorFromEncryptedRemoteNotification:notification];
|
||||||
//
|
|
||||||
// test(d.interopVersion == 1);
|
test(d.interopVersion == 1);
|
||||||
// test(d.relayUdpPort == 11235);
|
test(d.relayUdpPort == 11235);
|
||||||
// test(d.sessionId == 2357);
|
test(d.sessionId == 2357);
|
||||||
// test([d.relayServerName isEqualToString:@"Test"]);
|
test([d.relayServerName isEqualToString:@"Test"]);
|
||||||
// test([d.initiatorNumber.toE164 isEqualToString:@"+19027777777"]);
|
test([d.initiatorNumber.toE164 isEqualToString:@"+19027777777"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
Loading…
Reference in New Issue