private IAuthenticationInformation GetAuthenticationInformation(string parameterSetName)
        {
            Contract.Requires(!string.IsNullOrWhiteSpace(parameterSetName));
            Contract.Ensures(null != Contract.Result <IAuthenticationInformation>());

            IAuthenticationInformation authInfo;

            switch (parameterSetName)
            {
            case ParameterSets.PLAIN:
                authInfo = new BasicAuthenticationInformation(Username, Password);
                break;

            case ParameterSets.CREDENTIAL:
                Username = Credential.UserName;
                Password = Credential.GetNetworkCredential().Password;
                authInfo = new BasicAuthenticationInformation(Username, Password);
                break;

            case ParameterSets.OAUTH2:
                authInfo = new OAuth2AuthenticationInformation(OAuth2Token);
                break;

            default:
                // ReSharper disable once NotResolvedInText
                throw new ArgumentOutOfRangeException("ParameterSetName", ParameterSetName, string.Format(Messages.EnterServerInvalidParameterSetName, ParameterSetName));
            }

            return(authInfo);
        }
Пример #2
0
        public void GetAuthenticationHeadersReturnsOAuth2AuthenticationHeader()
        {
            // Arrange
            var oAuth2AuthInfo = new OAuth2AuthenticationInformation(OAUTH2_TOKEN);

            // Act
            var authHeaders = oAuth2AuthInfo.GetAuthorizationHeaders();

            // Assert
            Assert.IsNotNull(authHeaders);
            Assert.AreEqual(1, authHeaders.Keys.Count);

            Assert.AreEqual("Bearer ARBITRARY_OAUTH2_TOKEN", authHeaders[Client.Constants.Authentication.AUTHORIZATION_HEADER_KEY]);
        }