public async Task WhenUserNotInRole_ThenGetProjectThrowsResourceAccessDeniedException( [Credential(Role = PredefinedRole.IapTunnelUser)] ResourceTask <ICredential> credential) { var adapter = new ComputeEngineAdapter(await credential); AssertEx.ThrowsAggregateException <ResourceAccessDeniedException>( () => adapter.GetProjectAsync( TestProject.ProjectId, CancellationToken.None).Wait()); }
public async Task WhenProjectIdInvalid_ThenGetProjectThrowsGoogleApiException( [Credential(Role = PredefinedRole.IapTunnelUser)] ResourceTask <ICredential> credential) { var adapter = new ComputeEngineAdapter(await credential); AssertEx.ThrowsAggregateException <GoogleApiException>( () => adapter.GetProjectAsync( "invalid", CancellationToken.None).Wait()); }
public async Task WhenUserInViewerRole_ThenGetProjectReturnsProject( [Credential(Role = PredefinedRole.ComputeViewer)] ResourceTask <ICredential> credential) { var adapter = new ComputeEngineAdapter(await credential); var project = await adapter.GetProjectAsync( TestProject.ProjectId, CancellationToken.None); Assert.IsNotNull(project); Assert.AreEqual(TestProject.ProjectId, project.Name); }