예제 #1
0
        public static MockHttpMessageHandler AddTokenResponse(
            this MockHttpManager httpManager,
            TokenResponseType responseType,
            IDictionary <string, string> expectedRequestHeaders = null)
        {
            HttpResponseMessage responseMessage;

            switch (responseType)
            {
            case TokenResponseType.Valid_UserFlows:
                responseMessage = MockHelpers.CreateSuccessTokenResponseMessage(
                    TestConstants.Uid,
                    TestConstants.DisplayableId,
                    TestConstants.s_scope.ToArray());

                break;

            case TokenResponseType.Valid_ClientCredentials:
                responseMessage = MockHelpers.CreateSuccessfulClientCredentialTokenResponseMessage();

                break;

            case TokenResponseType.Invalid_AADUnavailable503:
                responseMessage = MockHelpers.CreateFailureMessage(
                    System.Net.HttpStatusCode.ServiceUnavailable, "service down");

                break;

            case TokenResponseType.InvalidGrant:
                responseMessage = MockHelpers.CreateInvalidGrantTokenResponseMessage();
                break;

            case TokenResponseType.InvalidClient:

                responseMessage = MockHelpers.CreateInvalidClientResponseMessage();
                break;

            default:
                throw new NotImplementedException();
            }

            var responseHandler = new MockHttpMessageHandler()
            {
                ExpectedMethod         = HttpMethod.Post,
                ExpectedRequestHeaders = expectedRequestHeaders,
                ResponseMessage        = responseMessage,
            };

            httpManager.AddMockHandler(responseHandler);

            return(responseHandler);
        }
예제 #2
0
 public static void AddRegionDiscoveryMockHandlerNotFound(
     this MockHttpManager httpManager)
 {
     httpManager.AddMockHandler(
         new MockHttpMessageHandler
     {
         ExpectedMethod         = HttpMethod.Get,
         ExpectedUrl            = "http://169.254.169.254/metadata/instance/compute/api-version=2020-06-01",
         ExpectedRequestHeaders = new Dictionary <string, string>
         {
             { "Metadata", "true" }
         },
         ResponseMessage = MockHelpers.CreateFailureMessage(HttpStatusCode.NotFound, "")
     });
 }