public void GetTheatersByCity_InternalServerError_Test()
        {
            var    theaterServiceMock = new Mock <ITheaterService>();
            string city = "";

            theaterServiceMock.Setup(x => x.GetTheatersByCity(city)).Throws <Exception>();

            var controller   = new TheaterController(theaterServiceMock.Object);
            var actualResult = controller.GetTheaters(city);

            var result       = (ObjectResult)actualResult;
            var asJson       = JsonConvert.SerializeObject(result.Value);
            var deserialized = JsonConvert.DeserializeObject <Dictionary <string, object> >(asJson);

            Assert.IsTrue((bool)deserialized["Success"] == false);

            theaterServiceMock.VerifyAll();
        }
        public void GetTheatersByCity_Successful_Test()
        {
            var    theaterServiceMock = new Mock <ITheaterService>();
            string city = "";

            theaterServiceMock.Setup(x => x.GetTheatersByCity(city));

            var controller   = new TheaterController(theaterServiceMock.Object);
            var actualResult = controller.GetTheaters(city);

            var okResult     = (OkObjectResult)actualResult;
            var asJson       = JsonConvert.SerializeObject(okResult.Value);
            var deserialized = JsonConvert.DeserializeObject <Dictionary <string, object> >(asJson);

            Assert.IsTrue((bool)deserialized["Success"]);

            theaterServiceMock.VerifyAll();
        }