public IActionResult GetHelpdesk([FromRoute] int id)
        {
            try
            {
                var facade   = new HelpdeskFacade();
                var response = facade.GetHelpdesk(id);

                switch (response.Status)
                {
                case HttpStatusCode.OK:
                    return(Ok(response));

                case HttpStatusCode.BadRequest:
                    return(BadRequest(BuildBadRequestMessage(response)));

                case HttpStatusCode.InternalServerError:
                    return(StatusCode(StatusCodes.Status500InternalServerError));

                case HttpStatusCode.NotFound:
                    return(NotFound());
                }
                s_logger.Fatal("This code should be unreachable, unknown result has occured.");
            }
            catch (Exception ex)
            {
                s_logger.Error(ex, "Unable to get helpdesk.");
            }
            return(StatusCode(StatusCodes.Status500InternalServerError));
        }
        public void GetHelpdeskNotFound()
        {
            var facade   = new HelpdeskFacade();
            var response = facade.GetHelpdesk(-1);

            Assert.AreEqual(HttpStatusCode.NotFound, response.Status);
            Assert.IsNull(response.Helpdesk);
        }
        public void GetHelpdeskSuccess()
        {
            var factory = new TestEntityFactory();

            var data = factory.AddHelpdesk(AlphaNumericStringGenerator.GetString(10));

            var facade   = new HelpdeskFacade();
            var response = facade.GetHelpdesk(data.Response.HelpdeskID);

            Assert.AreEqual(HttpStatusCode.OK, response.Status);
            Assert.IsNotNull(response.Helpdesk);
        }