public void RequestIsCorrectlyInitialized(
     IEnumerable<AuthenticationHeaderValue> challenges, HttpRequestMessage request)
 {
     // Exercise system
     var result = new JSendUnauthorizedResult(challenges, request);
     // Verify outcome
     result.Request.Should().Be(request);
 }
 public void RequestIsCorrectlyInitializedUsingController(
     IEnumerable<AuthenticationHeaderValue> challenges, ApiController controller)
 {
     // Exercise system
     var result = new JSendUnauthorizedResult(challenges, controller);
     // Verify outcome
     result.Request.Should().Be(controller.Request);
 }
        public async Task SetsLocationHeader(JSendUnauthorizedResult result)
        {
            // Exercise system
            var message = await result.ExecuteAsync(new CancellationToken());

            // Verify outcome
            message.Headers.WwwAuthenticate.Should().BeEquivalentTo(result.Challenges);
        }
        public async Task SetsContentTypeHeader(JSendUnauthorizedResult result)
        {
            // Exercise system
            var message = await result.ExecuteAsync(new CancellationToken());

            // Verify outcome
            message.Content.Headers.ContentType.MediaType.Should().Be("application/json");
        }
        public async Task SetsStatusCode(JSendUnauthorizedResult result)
        {
            // Exercise system
            var message = await result.ExecuteAsync(new CancellationToken());

            // Verify outcome
            message.StatusCode.Should().Be(result.StatusCode);
        }
        public void ChallengesAreCorrectlyInitialized(List <AuthenticationHeaderValue> challenges,
                                                      ApiController controller)
        {
            // Exercise system
            var result = new JSendUnauthorizedResult(challenges, controller);

            // Verify outcome
            result.Challenges.Should().BeEquivalentTo(challenges);
        }
        public void RequestIsCorrectlyInitializedUsingController(
            IEnumerable <AuthenticationHeaderValue> challenges, ApiController controller)
        {
            // Exercise system
            var result = new JSendUnauthorizedResult(challenges, controller);

            // Verify outcome
            result.Request.Should().Be(controller.Request);
        }
        public void RequestIsCorrectlyInitialized(
            IEnumerable <AuthenticationHeaderValue> challenges, HttpRequestMessage request)
        {
            // Exercise system
            var result = new JSendUnauthorizedResult(challenges, request);

            // Verify outcome
            result.Request.Should().Be(request);
        }
        /// <summary>
        /// Processes requests that fail authorization by creating a JSend formatted <see cref="HttpStatusCode.Unauthorized"/> result.
        /// </summary>
        /// <param name="actionContext">The context.</param>
        protected override void HandleUnauthorizedRequest(HttpActionContext actionContext)
        {
            if (actionContext == null) throw new ArgumentNullException(nameof(actionContext));
            Contract.Assert(actionContext.ControllerContext != null);

            var result = new JSendUnauthorizedResult(
                Enumerable.Empty<AuthenticationHeaderValue>(), actionContext.Request);

            actionContext.Response = result.ExecuteAsync(CancellationToken.None).Result;
        }
 public void ResponseIsCorrectlyInitialized(IEnumerable<AuthenticationHeaderValue> challenges,
     ApiController controller)
 {
     // Fixture setup
     var expectedResponse = new FailResponse(StringResources.RequestNotAuthorized);
     // Exercise system
     var result = new JSendUnauthorizedResult(challenges, controller);
     // Verify outcome
     result.Response.ShouldBeEquivalentTo(expectedResponse);
 }
        public void ResponseIsCorrectlyInitialized(IEnumerable <AuthenticationHeaderValue> challenges,
                                                   ApiController controller)
        {
            // Fixture setup
            var expectedResponse = new FailResponse(StringResources.RequestNotAuthorized);
            // Exercise system
            var result = new JSendUnauthorizedResult(challenges, controller);

            // Verify outcome
            result.Response.ShouldBeEquivalentTo(expectedResponse);
        }
        public void JSendUnauthorizedWithArray_CreatesNewJSendUnauthorizedResult(AuthenticationHeaderValue[] challenges,
                                                                                 JSendApiController controller)
        {
            // Fixture setup
            var expectedResult = new JSendUnauthorizedResult(challenges, controller);
            // Exercise system
            var result = controller.JSendUnauthorized(challenges);

            // Verify outcome
            result.ShouldBeEquivalentTo(expectedResult);
        }
        public async Task ResponseIsSerializedIntoBody(JSendUnauthorizedResult result)
        {
            // Fixture setup
            var serializedResponse = JsonConvert.SerializeObject(result.Response);
            // Exercise system
            var httpResponse = await result.ExecuteAsync(new CancellationToken());

            // Verify outcome
            var content = await httpResponse.Content.ReadAsStringAsync();

            content.Should().Be(serializedResponse);
        }
Exemple #14
0
        /// <summary>
        /// Processes requests that fail authorization by creating a JSend formatted <see cref="HttpStatusCode.Unauthorized"/> result.
        /// </summary>
        /// <param name="actionContext">The context.</param>
        protected override void HandleUnauthorizedRequest(HttpActionContext actionContext)
        {
            if (actionContext == null)
            {
                throw new ArgumentNullException(nameof(actionContext));
            }
            Contract.Assert(actionContext.ControllerContext != null);

            var result = new JSendUnauthorizedResult(
                Enumerable.Empty <AuthenticationHeaderValue>(), actionContext.Request);

            actionContext.Response = result.ExecuteAsync(CancellationToken.None).Result;
        }
 public async Task SetsStatusCode(JSendUnauthorizedResult result)
 {
     // Exercise system
     var message = await result.ExecuteAsync(new CancellationToken());
     // Verify outcome
     message.StatusCode.Should().Be(result.StatusCode);
 }
 public void ChallengesAreCorrectlyInitialized(List<AuthenticationHeaderValue> challenges,
     ApiController controller)
 {
     // Exercise system
     var result = new JSendUnauthorizedResult(challenges, controller);
     // Verify outcome
     result.Challenges.Should().BeEquivalentTo(challenges);
 }
 public async Task ResponseIsSerializedIntoBody(JSendUnauthorizedResult result)
 {
     // Fixture setup
     var serializedResponse = JsonConvert.SerializeObject(result.Response);
     // Exercise system
     var httpResponseMessage = await result.ExecuteAsync(new CancellationToken());
     // Verify outcome
     var content = await httpResponseMessage.Content.ReadAsStringAsync();
     content.Should().Be(serializedResponse);
 }
 public void IsHttpActionResult(JSendUnauthorizedResult result)
 {
     // Exercise system and verify outcome
     result.Should().BeAssignableTo <IHttpActionResult>();
 }
 public void StatusCodeIs401(JSendUnauthorizedResult result)
 {
     // Exercise system and verify outcome
     result.StatusCode.Should().Be(HttpStatusCode.Unauthorized);
 }
 public void StatusCodeIs401(JSendUnauthorizedResult result)
 {
     // Exercise system and verify outcome
     result.StatusCode.Should().Be(HttpStatusCode.Unauthorized);
 }
 public async Task SetsLocationHeader(JSendUnauthorizedResult result)
 {
     // Exercise system
     var message = await result.ExecuteAsync(new CancellationToken());
     // Verify outcome
     message.Headers.WwwAuthenticate.Should().BeEquivalentTo(result.Challenges);
 }
 public void IsHttpActionResult(JSendUnauthorizedResult result)
 {
     // Exercise system and verify outcome
     result.Should().BeAssignableTo<IHttpActionResult>();
 }
 public async Task SetsContentTypeHeader(JSendUnauthorizedResult result)
 {
     // Exercise system
     var message = await result.ExecuteAsync(new CancellationToken());
     // Verify outcome
     message.Content.Headers.ContentType.MediaType.Should().Be("application/json");
 }
 public void JSendUnauthorizedWithArray_CreatesNewJSendUnauthorizedResult(AuthenticationHeaderValue[] challenges,
     JSendApiController controller)
 {
     // Fixture setup
     var expectedResult = new JSendUnauthorizedResult(challenges, controller);
     // Exercise system
     var result = controller.JSendUnauthorized(challenges);
     // Verify outcome
     result.ShouldBeEquivalentTo(expectedResult);
 }