Пример #1
0
        public async Task ProfileGetCredentialAsyncTest()
        {
            ProfileCredentialsProvider provider = new ProfileCredentialsProvider();

            Assert.Null(await provider.GetCredentialsAsync());

            string tempEnvironmentCredentialsFile = AuthUtils.EnvironmentCredentialsFile;
            string tempClientType = AuthUtils.ClientType;

            AuthUtils.EnvironmentCredentialsFile = string.Empty;
            await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); });

            AuthUtils.EnvironmentCredentialsFile = TestHelper.GetIniFilePath();
            AuthUtils.ClientType = "default";
            Assert.NotNull(provider.GetCredentialsAsync());

            AuthUtils.ClientType = "client2";
            await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); });

            AuthUtils.ClientType = "client4";
            AuthUtils.SetPrivateKey("test");
            await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); });

            AuthUtils.ClientType = "client1";
            await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); });

            AuthUtils.ClientType = "client5";
            Assert.Equal("The configured client type is empty",
                         (await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); })).Message);

            AuthUtils.ClientType = "clientNotExit";
            Assert.Equal("Client is not open in the specified credentials file",
                         (await Assert.ThrowsAsync <CredentialException>(async() => { await provider.GetCredentialsAsync(); })).Message);

            AuthUtils.ClientType = "client6";
            Assert.Null(await provider.GetCredentialsAsync());

            AuthUtils.ClientType = "client7";
            Assert.Null(await provider.GetCredentialsAsync());

            AuthUtils.EnvironmentCredentialsFile = tempEnvironmentCredentialsFile;
            AuthUtils.ClientType = tempClientType;
        }