public async Task InvalidTokenReported(string rootUrl, string username, string password, string relativeUrl) { var tokenProvider = new TokenProvider(rootUrl, username, password); var gateway = new PortalGateway(rootUrl, tokenProvider: tokenProvider); var endpoint = new ArcGISServerEndpoint(relativeUrl); var token = await IntegrationTestFixture.TestPolicy.Execute(() => { return(tokenProvider.CheckGenerateToken(CancellationToken.None)); }); Assert.NotNull(token); Assert.NotNull(token.Value); Assert.False(token.IsExpired); Assert.Null(token.Error); token.Value += "chuff"; var query = new Query(endpoint) { Token = token.Value }; var exception = await Assert.ThrowsAsync <InvalidOperationException>(() => gateway.Query <Point>(query)); Assert.NotNull(exception); Assert.Contains("invalid token", exception.Message.ToLowerInvariant()); }
public async Task CanGenerateToken(string rootUrl, string username, string password) { var tokenProvider = new TokenProvider(rootUrl, username, password); var token = await IntegrationTestFixture.TestPolicy.Execute(() => { return(tokenProvider.CheckGenerateToken(CancellationToken.None)); }); Assert.NotNull(token); Assert.NotNull(token.Value); Assert.False(token.IsExpired); Assert.Null(token.Error); }
public async Task CanUseServerInfoToGenerateToken(string rootUrl, string username, string password) { var gateway = new PortalGateway(rootUrl); var serverInfo = await IntegrationTestFixture.TestPolicy.Execute(() => { return(gateway.Info()); }); var tokenProvider = new TokenProvider(serverInfo.AuthenticationInfo.TokenServicesUrl, username, password); var token = await IntegrationTestFixture.TestPolicy.Execute(() => { return(tokenProvider.CheckGenerateToken(CancellationToken.None)); }); Assert.NotNull(token); Assert.NotNull(token.Value); Assert.False(token.IsExpired); Assert.Null(token.Error); }