use of com.yahoo.athenz.zts.store.CloudStore in project athenz by yahoo.
the class CloudStoreTest method testFetchRoleCredentialInvalidCreds.
@Test
public void testFetchRoleCredentialInvalidCreds() throws InterruptedException, ExecutionException, TimeoutException {
CloudStore store = new CloudStore(null);
store.awsRole = "athenz.zts";
HttpClient httpClient = Mockito.mock(HttpClient.class);
ContentResponse response = Mockito.mock(ContentResponse.class);
Mockito.when(response.getStatus()).thenReturn(200);
Mockito.when(response.getContentAsString()).thenReturn("invalid-creds");
store.setHttpClient(httpClient);
Mockito.when(httpClient.GET("http://169.254.169.254/latest/meta-data/iam/security-credentials/athenz.zts")).thenReturn(response);
assertFalse(store.fetchRoleCredentials());
store.close();
}
use of com.yahoo.athenz.zts.store.CloudStore in project athenz by yahoo.
the class CloudStoreTest method testParseInstanceProfileArnCloud.
@Test
public void testParseInstanceProfileArnCloud() {
CloudStore store = new CloudStore(null);
// cloud name is optional for backwards compatibility
assertTrue(store.parseInstanceProfileArn("arn:aws:iam::111111111111:instance-profile/athenz.zts"));
assertEquals(store.awsRole, "athenz.zts");
assertTrue(store.parseInstanceProfileArn("arn:aws:iam::111111111111:instance-profile/athenz.proxy,athenz,test"));
assertEquals(store.awsRole, "athenz.proxy");
store.close();
}
use of com.yahoo.athenz.zts.store.CloudStore in project athenz by yahoo.
the class CloudStoreTest method testGetTokenServiceClient.
@Test
public void testGetTokenServiceClient() {
CloudStore store = new CloudStore(null);
store.credentials = new BasicSessionCredentials("accessKey", "secretKey", "token");
store.awsEnabled = true;
assertNotNull(store.getTokenServiceClient());
store.close();
}
use of com.yahoo.athenz.zts.store.CloudStore in project athenz by yahoo.
the class CloudStoreTest method testGetMetaDataValidResponse.
@Test
public void testGetMetaDataValidResponse() throws InterruptedException, ExecutionException, TimeoutException {
CloudStore store = new CloudStore(null);
HttpClient httpClient = Mockito.mock(HttpClient.class);
ContentResponse response = Mockito.mock(ContentResponse.class);
Mockito.when(response.getStatus()).thenReturn(200);
Mockito.when(response.getContentAsString()).thenReturn("json-document");
store.setHttpClient(httpClient);
Mockito.when(httpClient.GET("http://169.254.169.254/latest/iam-info")).thenReturn(response);
assertEquals(store.getMetaData("/iam-info"), "json-document");
store.close();
}
use of com.yahoo.athenz.zts.store.CloudStore in project athenz by yahoo.
the class CloudStoreTest method testParseInstanceProfileArnInvalidNoProfile.
@Test
public void testParseInstanceProfileArnInvalidNoProfile() {
CloudStore store = new CloudStore(null);
// no profile name
assertFalse(store.parseInstanceProfileArn("arn:aws:iam::111111111111:instance-profile/"));
store.close();
}
Aggregations