public void AccessDependentProperties_UnsetContext() { // Arrange var controller = new ConcreteApiController(); // Act & Assert Assert.Null(controller.Context); Assert.Null(controller.ModelState); Assert.Null(controller.User); }
public void ApiController_Conflict() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.Conflict(); // Assert Assert.Equal(StatusCodes.Status409Conflict, Assert.IsType <ConflictResult>(result).StatusCode); }
public void ApiController_InternalServerError() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.InternalServerError(); // Assert Assert.Equal(StatusCodes.Status500InternalServerError, Assert.IsType <InternalServerErrorResult>(result).StatusCode); }
public void ApiController_BadRequest() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.BadRequest(); // Assert Assert.Equal(StatusCodes.Status400BadRequest, Assert.IsType<BadRequestResult>(result).StatusCode); }
public void ApiController_Redirect_String(string uri) { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.Redirect(uri); // Assert var redirect = Assert.IsType <RedirectResult>(result); Assert.Equal(uri, result.Url); }
public void ApiController_Ok_Content() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Ok(product); // Assert var okResult = Assert.IsType <HttpOkObjectResult>(result); Assert.Same(product, okResult.Value); }
public void ApiController_Json() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Json(product); // Assert var jsonResult = Assert.IsType <JsonResult>(result); Assert.Same(product, jsonResult.Value); }
public void ApiController_InternalServerError_Exception() { // Arrange var controller = new ConcreteApiController(); var exception = new ArgumentException(); // Act var result = controller.InternalServerError(exception); // Assert var exceptionResult = Assert.IsType <ExceptionResult>(result); Assert.Same(exception, exceptionResult.Exception); }
public void ApiController_RedirectToRoute() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.RedirectToRoute("api_route", new { controller = "Products" }); // Assert var created = Assert.IsType <RedirectToRouteResult>(result); Assert.Equal("api_route", created.RouteName); Assert.Equal("Products", created.RouteValues["controller"]); }
public void ApiController_Ok_Content() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Ok(product); // Assert var okResult = Assert.IsType <OkNegotiatedContentResult <Product> >(result); Assert.Same(product, okResult.Content); }
public void ApiController_ResponseMessage() { // Arrange var controller = new ConcreteApiController(); var response = new HttpResponseMessage(HttpStatusCode.NoContent); // Act var result = controller.ResponseMessage(response); // Assert var responseResult = Assert.IsType <ResponseMessageResult>(result); Assert.Same(response, responseResult.Response); }
public void ApiController_Redirect() { // Arrange var controller = new ConcreteApiController(); var uri = new Uri("http://contoso.com"); // Act var result = controller.Redirect(uri); // Assert var redirect = Assert.IsType <RedirectResult>(result); Assert.Equal(uri.AbsoluteUri, result.Url); }
public void ApiController_BadRequest_Message() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.BadRequest("Error"); // Assert var badRequest = Assert.IsType<BadRequestErrorMessageResult>(result); Assert.Equal("Error", badRequest.Message); var httpError = Assert.IsType<HttpError>(badRequest.Value); Assert.Equal("Error", httpError.Message); }
public void ApiController_Created_String(string uri) { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Created(uri, product); // Assert var created = Assert.IsType <CreatedResult>(result); Assert.Same(product, created.Value); Assert.Equal(uri, created.Location); }
public void ApiController_Content() { // Arrange var controller = new ConcreteApiController(); var content = new Product(); // Act var result = controller.Content(HttpStatusCode.Found, content); // Assert var contentResult = Assert.IsType <NegotiatedContentResult <Product> >(result); Assert.Equal(StatusCodes.Status302Found, contentResult.StatusCode); Assert.Equal(content, contentResult.Value); }
public void ApiController_Created_String(string uri) { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Created(uri, product); // Assert var created = Assert.IsType <CreatedNegotiatedContentResult <Product> >(result); Assert.Same(product, created.Content); Assert.Equal(uri, created.Location.OriginalString); }
public void ApiController_BadRequest_Message() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.BadRequest("Error"); // Assert var badRequest = Assert.IsType <BadRequestErrorMessageResult>(result); Assert.Equal("Error", badRequest.Message); var httpError = Assert.IsType <HttpError>(badRequest.Value); Assert.Equal("Error", httpError.Message); }
public void ApiController_Created_Uri() { // Arrange var controller = new ConcreteApiController(); var uri = new Uri("http://contoso.com/"); var product = new Product(); // Act var result = controller.Created(uri, product); // Assert var created = Assert.IsType <CreatedResult>(result); Assert.Same(product, created.Value); Assert.Equal(uri.OriginalString, created.Location); }
public void ApiController_CreatedAtRoute() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.CreatedAtRoute("api_route", new { controller = "Products" }, product); // Assert var created = Assert.IsType <CreatedAtRouteResult>(result); Assert.Same(product, created.Value); Assert.Equal("api_route", created.RouteName); Assert.Equal("Products", created.RouteValues["controller"]); }
public void ApiController_Created_Uri() { // Arrange var controller = new ConcreteApiController(); var uri = new Uri("http://contoso.com"); var product = new Product(); // Act var result = controller.Created(uri, product); // Assert var created = Assert.IsType <CreatedNegotiatedContentResult <Product> >(result); Assert.Same(product, created.Content); Assert.Same(uri, created.Location); }
public void ApiController_Json_Encoding() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var settings = new JsonSerializerSettings(); // Act var result = controller.Json(product, settings, Encoding.UTF8); // Assert var jsonResult = Assert.IsType <JsonResult>(result); Assert.Same(product, jsonResult.Value); Assert.Same(Encoding.UTF8, jsonResult.ContentType.Encoding); }
public void AccessDependentProperties() { // Arrange var controller = new ConcreteApiController(); var httpContext = new DefaultHttpContext(); httpContext.User = new ClaimsPrincipal(); var actionContext = new ActionContext(httpContext, new RouteData(), new ControllerActionDescriptor()); // Act controller.ControllerContext = new ControllerContext(actionContext); // Assert Assert.Same(httpContext, controller.Context); Assert.Same(actionContext.ModelState, controller.ModelState); Assert.Same(httpContext.User, controller.User); }
public void ApiController_Json_Settings() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var settings = new JsonSerializerSettings(); // Act var result = controller.Json(product, settings); // Assert var jsonResult = Assert.IsType <JsonResult>(result); Assert.Same(product, jsonResult.Value); var formatter = Assert.IsType <JsonOutputFormatter>(jsonResult.Formatter); Assert.Same(settings, formatter.SerializerSettings); }
public void ApiController_BadRequest_ModelState() { // Arrange var controller = new ConcreteApiController(); var modelState = new ModelStateDictionary(); modelState.AddModelError("product.Name", "Name is required"); // Act var result = controller.BadRequest(modelState); // Assert var badRequest = Assert.IsType <InvalidModelStateResult>(result); var modelError = Assert.IsType <HttpError>(badRequest.Value).ModelState; Assert.Equal(new string[] { "Name is required" }, modelError["product.Name"]); }
public void ApiController_CreatedAtRoute_Dictionary() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var values = new RouteValueDictionary(new { controller = "Products" }); // Act var result = controller.CreatedAtRoute("api_route", values, product); // Assert var created = Assert.IsType <CreatedAtRouteResult>(result); Assert.Same(product, created.Value); Assert.Equal("api_route", created.RouteName); Assert.Equal("Products", created.RouteValues["controller"]); Assert.Equal <KeyValuePair <string, object> >(values, created.RouteValues); }
public void ApiController_Json_Settings_Encoding() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var settings = new JsonSerializerSettings(); // Act var result = controller.Json(product, settings, Encoding.UTF8); // Assert var objectResult = Assert.IsType <ObjectResult>(result); Assert.Same(product, objectResult.Value); var formatter = Assert.IsType <JsonOutputFormatter>(Assert.Single(objectResult.Formatters)); Assert.Same(settings, formatter.SerializerSettings); Assert.Same(Encoding.UTF8, Assert.Single(formatter.SupportedEncodings)); }
public void ApiController_Conflict() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.Conflict(); // Assert Assert.Equal(StatusCodes.Status409Conflict, Assert.IsType<ConflictResult>(result).StatusCode); }
public void ApiController_Content() { // Arrange var controller = new ConcreteApiController(); var content = new Product(); // Act var result = controller.Content(HttpStatusCode.Found, content); // Assert var contentResult = Assert.IsType<NegotiatedContentResult<Product>>(result); Assert.Equal(StatusCodes.Status302Found, contentResult.StatusCode); Assert.Equal(content, contentResult.Value); }
public void ApiController_InternalServerError() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.InternalServerError(); // Assert Assert.Equal(StatusCodes.Status500InternalServerError, Assert.IsType<InternalServerErrorResult>(result).StatusCode); }
public void ApiController_RedirectToRoute_Dictionary() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var values = new RouteValueDictionary(new { controller = "Products" }); // Act var result = controller.RedirectToRoute("api_route", values); // Assert var created = Assert.IsType<RedirectToRouteResult>(result); Assert.Equal("api_route", created.RouteName); Assert.Equal("Products", created.RouteValues["controller"]); }
public void ApiController_InternalServerError_Exception() { // Arrange var controller = new ConcreteApiController(); var exception = new ArgumentException(); // Act var result = controller.InternalServerError(exception); // Assert var exceptionResult = Assert.IsType<ExceptionResult>(result); Assert.Same(exception, exceptionResult.Exception); }
public void ApiController_Json() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Json(product); // Assert var jsonResult = Assert.IsType<JsonResult>(result); Assert.Same(product, jsonResult.Value); }
public void ApiController_Json_Encoding() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var settings = new JsonSerializerSettings(); // Act var result = controller.Json(product, settings, Encoding.UTF8); // Assert var jsonResult = Assert.IsType<JsonResult>(result); Assert.Same(product, jsonResult.Value); Assert.Same(Encoding.UTF8, jsonResult.ContentType.Encoding); }
public void ApiController_BadRequest_ModelState() { // Arrange var controller = new ConcreteApiController(); var modelState = new ModelStateDictionary(); modelState.AddModelError("product.Name", "Name is required"); // Act var result = controller.BadRequest(modelState); // Assert var badRequest = Assert.IsType<InvalidModelStateResult>(result); var modelError = Assert.IsType<HttpError>(badRequest.Value).ModelState; Assert.Equal(new string[] { "Name is required" }, modelError["product.Name"]); }
public void ApiController_NotFound() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.NotFound(); // Assert Assert.Equal(404, Assert.IsType<HttpNotFoundResult>(result).StatusCode); }
public void ApiController_Ok() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.Ok(); // Assert Assert.Equal(200, Assert.IsType<HttpOkResult>(result).StatusCode); }
public void ApiController_Ok_Content() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Ok(product); // Assert var okResult = Assert.IsType<HttpOkObjectResult>(result); Assert.Same(product, okResult.Value); }
public void ApiController_StatusCode() { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.StatusCode(HttpStatusCode.ExpectationFailed); // Assert Assert.Equal(StatusCodes.Status417ExpectationFailed, Assert.IsType<HttpStatusCodeResult>(result).StatusCode); }
public void ApiController_ResponseMessage() { // Arrange var controller = new ConcreteApiController(); var response = new HttpResponseMessage(HttpStatusCode.NoContent); // Act var result = controller.ResponseMessage(response); // Assert var responseResult = Assert.IsType<ResponseMessageResult>(result); Assert.Same(response, responseResult.Response); }
public void ApiController_Redirect() { // Arrange var controller = new ConcreteApiController(); var uri = new Uri("http://contoso.com"); // Act var result = controller.Redirect(uri); // Assert var redirect = Assert.IsType<RedirectResult>(result); Assert.Equal(uri.AbsoluteUri, result.Url); }
public void ApiController_Json_Settings_Encoding() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var settings = new JsonSerializerSettings(); // Act var result = controller.Json(product, settings, Encoding.UTF8); // Assert var jsonResult = Assert.IsType<JsonResult>(result); Assert.Same(product, jsonResult.Value); var formatter = Assert.IsType<JsonOutputFormatter>(jsonResult.Formatter); Assert.Same(settings, formatter.SerializerSettings); Assert.Same(Encoding.UTF8, Assert.Single(formatter.SupportedEncodings)); }
public void ApiController_Redirect_String(string uri) { // Arrange var controller = new ConcreteApiController(); // Act var result = controller.Redirect(uri); // Assert var redirect = Assert.IsType<RedirectResult>(result); Assert.Equal(uri, result.Url); }
public void ApiController_Ok_Content() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Ok(product); // Assert var okResult = Assert.IsType<OkNegotiatedContentResult<Product>>(result); Assert.Same(product, okResult.Content); }
public void ApiController_Created_Uri() { // Arrange var controller = new ConcreteApiController(); var uri = new Uri("http://contoso.com/"); var product = new Product(); // Act var result = controller.Created(uri, product); // Assert var created = Assert.IsType<CreatedResult>(result); Assert.Same(product, created.Value); Assert.Equal(uri.OriginalString, created.Location); }
public void ApiController_Created_String(string uri) { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.Created(uri, product); // Assert var created = Assert.IsType<CreatedResult>(result); Assert.Same(product, created.Value); Assert.Equal(uri, created.Location); }
public void ApiController_CreatedAtRoute_Dictionary() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); var values = new RouteValueDictionary(new { controller = "Products" }); // Act var result = controller.CreatedAtRoute("api_route", values, product); // Assert var created = Assert.IsType<CreatedAtRouteResult>(result); Assert.Same(product, created.Value); Assert.Equal("api_route", created.RouteName); Assert.Equal("Products", created.RouteValues["controller"]); Assert.Equal<KeyValuePair<string, object>>(values, created.RouteValues); }
public void ApiController_CreatedAtRoute() { // Arrange var controller = new ConcreteApiController(); var product = new Product(); // Act var result = controller.CreatedAtRoute("api_route", new { controller = "Products" }, product); // Assert var created = Assert.IsType<CreatedAtRouteResult>(result); Assert.Same(product, created.Value); Assert.Equal("api_route", created.RouteName); Assert.Equal("Products", created.RouteValues["controller"]); }