Skip to content

Commit bf0c8dc

Browse files
authored
Merge pull request #152 from AzureAD/oldalton/added_app_install_links
Added app install URLs to the test config for the automated test multi-app execution
2 parents 2560045 + 3cd5de3 commit bf0c8dc

File tree

2 files changed

+32
-0
lines changed

2 files changed

+32
-0
lines changed

IdentityCore/tests/automation/MSIDTestAccountsProvider.h

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,30 @@
2929

3030
- (instancetype)init NS_UNAVAILABLE;
3131

32+
/*
33+
This information would normally come from a configuration file.
34+
@param certificate Base64 encoded client certificate to authenticate with keyvault
35+
@param password Certificate password in case it's password protected
36+
@param additionalConfigurations Additional local configurations that should override server configurations
37+
@param appInstallLinks Information necessary to install additional apps to run multi-app tests, e.g.
38+
39+
"msal": {
40+
"install_url": "https://...",
41+
"app_bundle_id": "com.microsoft.MSALTestApp",
42+
"app_name": "MSAL Test App"
43+
},
44+
"broker": {
45+
"install_url": "https://...",
46+
"app_bundle_id": "com.microsoft.broker",
47+
"app_name": "Broker"
48+
}
49+
@param apiPath Lab API path
50+
*/
51+
3252
- (instancetype)initWithClientCertificateContents:(NSString *)certificate
3353
certificatePassword:(NSString *)password
3454
additionalConfigurations:(NSDictionary *)additionalConfigurations
55+
appInstallLinks:(NSDictionary *)appInstallLinks
3556
apiPath:(NSString *)apiPath;
3657

3758
- (instancetype)initWithConfigurationPath:(NSString *)configurationPath;
@@ -42,4 +63,6 @@
4263
- (void)passwordForAccount:(MSIDTestAccount *)account
4364
completionHandler:(void (^)(NSString *password))completionHandler;
4465

66+
- (NSDictionary *)appInstallForConfiguration:(NSString *)appId;
67+
4568
@end

IdentityCore/tests/automation/MSIDTestAccountsProvider.m

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
@interface MSIDTestAccountsProvider()
2828

2929
@property (nonatomic, strong) NSMutableDictionary *cachedConfigurations;
30+
@property (nonatomic, strong) NSDictionary *appInstallLinks;
3031
@property (nonatomic, strong) KeyvaultAuthentication *keyvaultAuthentication;
3132
@property (nonatomic, strong) NSString *apiPath;
3233

@@ -37,6 +38,7 @@ @implementation MSIDTestAccountsProvider
3738
- (instancetype)initWithClientCertificateContents:(NSString *)certificate
3839
certificatePassword:(NSString *)password
3940
additionalConfigurations:(NSDictionary *)additionalConfigurations
41+
appInstallLinks:(NSDictionary *)appInstallLinks
4042
apiPath:(NSString *)apiPath
4143
{
4244
self = [super init];
@@ -47,6 +49,7 @@ - (instancetype)initWithClientCertificateContents:(NSString *)certificate
4749
_keyvaultAuthentication = [[KeyvaultAuthentication alloc] initWithCertContents:certificate certPassword:password];
4850
_apiPath = apiPath;
4951
[_cachedConfigurations addEntriesFromDictionary:additionalConfigurations];
52+
_appInstallLinks = appInstallLinks;
5053
}
5154

5255
return self;
@@ -90,10 +93,16 @@ - (instancetype)initWithConfigurationPath:(NSString *)configurationPath
9093
return [self initWithClientCertificateContents:encodedCertificate
9194
certificatePassword:certificatePassword
9295
additionalConfigurations:additionalConfsDictionary
96+
appInstallLinks:configurationDictionary[@"app_install_urls"]
9397
apiPath:apiPath];
9498

9599
}
96100

101+
- (NSDictionary *)appInstallForConfiguration:(NSString *)appId
102+
{
103+
return _appInstallLinks[appId];
104+
}
105+
97106
- (void)configurationWithRequest:(MSIDTestAutomationConfigurationRequest *)request
98107
completionHandler:(void (^)(MSIDTestAutomationConfiguration *configuration))completionHandler
99108
{

0 commit comments

Comments
 (0)