public void GivenActorParameter_ValidateString_ReturnsValidMethodName(string queryProperty, string queryValue, ActorQueryParameters parameterObject) { // Arrange var logger = new Mock <ILogger <ActorsController> >(); var mockIDAL = new Mock <IDAL>(); var controller = new ActorsController(logger.Object, mockIDAL.Object) { ControllerContext = new ControllerContext() }; var request = new Dictionary <string, StringValues> { { queryProperty, queryValue } }; var queryCollection = new QueryCollection(request); var query = new QueryFeature(queryCollection); var features = new FeatureCollection(); features.Set <IQueryFeature>(query); controller.ControllerContext.HttpContext = new DefaultHttpContext(features); // Act var expectedResult = $"GetActors:{queryProperty}:{queryValue}"; var actualResult = parameterObject.GetMethodText(controller.HttpContext); // Assert Assert.Equal(expectedResult, actualResult); }
public async Task <IActionResult> GetActorsAsync([FromQuery] ActorQueryParameters actorQueryParameters) { _ = actorQueryParameters ?? throw new ArgumentNullException(nameof(actorQueryParameters)); return(await ResultHandler.Handle( dal.GetActorsAsync(actorQueryParameters), actorQueryParameters.GetMethodText(HttpContext), Constants.ActorsControllerException, logger) .ConfigureAwait(false)); }