コード例 #1
0
        //Tests the value returned by the LoadVideoMgmt method
        private void TestReturnValue(ActionResult result, string expectedMrdvrResult, string expectedDeviceActionResponse)
        {
            //Assert
            Assert.IsTrue(result != null, "result is null");

            //A partial view result is returned
            var resultPartial = result as PartialViewResult;
            Assert.IsTrue(resultPartial != null, "resultPartial is null");

            //It was the right type of partial view result
            Assert.IsTrue(resultPartial.ViewName.Equals("VideoManagement_Partial"),
                "Expected resultPartial.ViewName to be VideoManagement_Partial. It was actually "
                + resultPartial.ViewName + ".");

            //It has the correct information

            //Model is not null
            var model = resultPartial.Model;
            Assert.IsNotNull(model);

            //Model response is correct
            var modelResponse = model.ToJSON();
            string modelResponseString = new JavaScriptSerializer().Serialize(modelResponse);
            modelResponseString = modelResponseString.Replace(@"\", " ");
            modelResponseString = modelResponseString.Replace(@"""", @" ");
            Assert.IsTrue(modelResponseString.Contains(expectedMrdvrResult), "MRDVR Service was not found");

            //Compare the expected DeviceActionResponse
            int startResponse = modelResponseString.IndexOf("DeviceActionResponse", System.StringComparison.Ordinal);
            int endResponse = modelResponseString.IndexOf("NewDeviceSerial", System.StringComparison.Ordinal);
            string actualDeviceResponse = modelResponseString.Substring(startResponse, (endResponse - startResponse) - 1);

            Assert.IsTrue(modelResponseString.Contains(expectedDeviceActionResponse), "DeviceActionResponse had an unexpected value. Expected: " +
               expectedDeviceActionResponse + ", Actual: " + actualDeviceResponse + ".");

            //Model is correct type
            Assert.IsTrue(model is VideoManagementModel, "Model is not a VideoManagementModel as expected");
        }