public void BuildTestCase_should_return_correct_model_values_from_case()
        {
            // given
            var testCaseViewModelBuilder = new TestCaseViewModelBuilder();

            var testCase = new Case
            {
                Id = 1,
                ShortDescription = "Short Description",
                Url = "http://www.google.com",
                ErrorMessage = "Error",
                LogRequest = true,
                LogResponse = true,
                LongDescription = "Long Description",
                Method = "Method",
                PostBody = "PostBody",
                PostType = PostType.GET.ToString(),
                VerifyResponseCode = HttpStatusCode.Accepted,
                Sleep = 10,
                Headers = new List<HeaderItem>(),
                ParseResponses = new List<ParseResponseItem> { new ParseResponseItem() },
                VerifyNegatives = new List<VerificationItem> { new VerificationItem() },
                VerifyPositives = new List<VerificationItem> { new VerificationItem() },
                ParentFilename = "test.xml"
            };

            // when
            var testCaseViewModel = testCaseViewModelBuilder.BuildTestCase(testCase);

            // then
            Assert.NotNull(testCaseViewModel);
            Assert.AreEqual(testCase.Id, testCaseViewModel.Id);
            Assert.AreEqual(testCase.ShortDescription, testCaseViewModel.ShortDescription);
            Assert.AreEqual(testCase.Url, testCaseViewModel.Url);
            Assert.AreEqual(testCase.ErrorMessage, testCaseViewModel.ErrorMessage);
            Assert.AreEqual(testCase.LogRequest, testCaseViewModel.LogRequest);
            Assert.AreEqual(testCase.LogResponse, testCaseViewModel.LogResponse);
            Assert.AreEqual(testCase.LongDescription, testCaseViewModel.LongDescription);
            Assert.AreEqual(testCase.Method, testCaseViewModel.Method);
            Assert.AreEqual(testCase.PostBody, testCaseViewModel.PostBody);
            Assert.AreEqual(PostType.GET, testCaseViewModel.PostType);
            Assert.AreEqual(testCase.VerifyResponseCode, testCaseViewModel.VerifyResponseCode);
            Assert.AreEqual(testCase.ParentFilename, testCaseViewModel.ParentFilename);

            Assert.AreEqual(1, testCaseViewModel.ParseResponses.Count);
            Assert.AreEqual(2, testCaseViewModel.Verifications.Count);
        }
        public void BuildTestCases_should_throw_argumentnullexception_when_testcase_is_null()
        {
            var testCaseViewModelBuilder = new TestCaseViewModelBuilder();

            Assert.Throws<ArgumentNullException>(() => testCaseViewModelBuilder.BuildTestCase(null));
        }