session-ios/Signal/test/Models/OWSDeviceProvisioningURLPar...

50 lines
1.5 KiB
Objective-C

//
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
//
#import "OWSDeviceProvisioningURLParser.h"
#import "SignalBaseTest.h"
#import <SignalCoreKit/NSData+OWS.h>
@interface OWSDeviceProvisioningURLParserTest : SignalBaseTest
@end
@implementation OWSDeviceProvisioningURLParserTest
- (void)testValid
{
OWSDeviceProvisioningURLParser *parser = [[OWSDeviceProvisioningURLParser alloc] initWithProvisioningURL:@""];
XCTAssertFalse(parser.isValid);
parser = [[OWSDeviceProvisioningURLParser alloc] initWithProvisioningURL:@"ts:/?uuid=MTIz"];
XCTAssertFalse(parser.isValid);
parser = [[OWSDeviceProvisioningURLParser alloc] initWithProvisioningURL:@"ts:/?pub_key=MTIz"];
XCTAssertFalse(parser.isValid);
parser = [[OWSDeviceProvisioningURLParser alloc] initWithProvisioningURL:@"ts:/uuid=asd&pub_key=MTIz"];
XCTAssertFalse(parser.isValid);
parser = [[OWSDeviceProvisioningURLParser alloc] initWithProvisioningURL:@"ts:/?uuid=asd&pub_key=MTIz"];
XCTAssert(parser.isValid);
}
- (void)testPublicKey
{
OWSDeviceProvisioningURLParser *parser =
[[OWSDeviceProvisioningURLParser alloc] initWithProvisioningURL:@"ts:/?uuid=asd&pub_key=MTIz"];
XCTAssertEqualObjects(@"MTIz", [parser.publicKey base64EncodedString]);
}
- (void)testEphemeralDeviceId
{
OWSDeviceProvisioningURLParser *parser =
[[OWSDeviceProvisioningURLParser alloc] initWithProvisioningURL:@"ts:/?uuid=asd&pub_key=MTIz"];
XCTAssertEqualObjects(@"asd", parser.ephemeralDeviceId);
}
@end