public void GetCity_ById_Async_Return_City_OkObjectResult()
        {
            //Arrange
            CityDomainModel cityDomainModel = new CityDomainModel
            {
                Id          = 123,
                CinemasList = new List <CinemaDomainModel>(),
                Name        = "Zrenjanin"
            };

            int expectedStatusCode = 200;
            Task <CityDomainModel> responseTask = Task.FromResult(cityDomainModel);

            _cityService = new Mock <ICityService>();
            _cityService.Setup(x => x.GetByIdAsync(It.IsAny <int>())).Returns(responseTask);
            CitiesController citiesController = new CitiesController(_cityService.Object);

            //Act
            var             result           = citiesController.GetById(cityDomainModel.Id).ConfigureAwait(false).GetAwaiter().GetResult().Result;
            var             objectResult     = ((OkObjectResult)result).Value;
            CityDomainModel cityDomainResult = (CityDomainModel)objectResult;

            //Assert
            Assert.IsNotNull(objectResult);
            Assert.IsInstanceOfType(result, typeof(OkObjectResult));
            Assert.AreEqual(expectedStatusCode, ((OkObjectResult)result).StatusCode);
            Assert.AreEqual(cityDomainModel.Id, cityDomainResult.Id);
        }
        public void GetCity_ById_Async_Return_Not_Found()
        {
            //Arrange
            string                 expectedMessage    = Messages.CITY_NOT_FOUND;
            int                    expectedStatusCode = 404;
            CityDomainModel        cityDomainModel    = null;
            Task <CityDomainModel> responseTask       = Task.FromResult(cityDomainModel);

            _cityService = new Mock <ICityService>();
            _cityService.Setup(x => x.GetByIdAsync(It.IsAny <int>())).Returns(responseTask);
            CitiesController citiesController = new CitiesController(_cityService.Object);

            //Act
            var    result       = citiesController.GetById(123).ConfigureAwait(false).GetAwaiter().GetResult().Result;
            var    objectResult = ((NotFoundObjectResult)result).Value;
            string message      = (string)objectResult;

            //Assert
            Assert.IsNotNull(objectResult);
            Assert.IsInstanceOfType(result, typeof(NotFoundObjectResult));
            Assert.AreEqual(expectedStatusCode, ((NotFoundObjectResult)result).StatusCode);
            Assert.AreEqual(expectedMessage, message);
        }