Пример #1
0
        public async Task ThenIShouldReturnCorrectOrganisations()
        {
            var response = new SearchOrganisationsResponse
            {
                Organisations = new List <Organisation>
                {
                    new Organisation()
                }
            };

            var searchTerm     = "Test";
            var maximumResults = 500;

            _mediator.Setup(x => x.SendAsync(It.Is <SearchOrganisationsQuery>(y => y.SearchTerm == searchTerm && y.MaximumResults == maximumResults))).ReturnsAsync(response);

            //Act
            var result = await _controller.SearchOrganisations(searchTerm, maximumResults) as OkNegotiatedContentResult <IEnumerable <Organisation> >;

            //Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(response.Organisations, result.Content);
        }
        public async Task <IHttpActionResult> SearchOrganisations(string searchTerm = "", int maximumResults = 500)
        {
            var query = new SearchOrganisationsQuery
            {
                SearchTerm     = searchTerm,
                MaximumResults = maximumResults
            };
            SearchOrganisationsResponse response;

            try
            {
                response = await _mediator.SendAsync(query);
            }
            catch (Exception e)
            {
                _logger.Error(e, "Unhandled exception retreiving organisations");
                response = new SearchOrganisationsResponse()
                {
                    Organisations = new List <Organisation>()
                };
            }

            return(Ok(response.Organisations));
        }