Как передать нулевое значение в управляемый данными модульный тест из файла CSV? - PullRequest
6 голосов
/ 24 ноября 2010

У меня есть модульный тест, написанный на c #, который использует .CSV в качестве источника данных:

    [DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\TestData.csv", "TestData#csv", DataAccessMethod.Sequential), DeploymentItem("TxRP.Tests\\TestData.csv"), TestMethod()]
    public void CompareOrgsTest()
    {
        // Arrange
        var vdd = new Mock<ViewDataDictionary>().Object;
        HtmlHelper helper = MVCMocks.CreateMockHelper(vdd);
        string orgOne = testContextInstance.DataRow["OrgOne"].ToString();
        string orgTwo = testContextInstance.DataRow["OrgTwo"].ToString();
        bool expected = Convert.ToBoolean(testContextInstance.DataRow["OrgCompareExpected"]); 

        // Act
        bool actual = HtmlHelpers.CompareOrg(helper, orgOne, orgTwo);

        // Assert
        Assert.AreEqual(expected, actual, "Did not return " + expected + ".  Org1=" + orgOne + ", Org2=" + orgTwo);
    }

Работает сказочно, пока мне не нужно было добавить тестирование нулевого значения. Я не могу понять, как передать значение NULL в качестве одного из элементов данных ... кто-нибудь делал это раньше?

Спасибо!

1 Ответ

5 голосов
/ 24 ноября 2010

Вы не можете.Вы читаете в значения из файла CSV.В CSV-файле нет такого понятия, как «нулевое» значение.Следующая лучшая вещь, которую я знаю, это написать код для проверки 'null', если из файла CSV читается 'волшебная строка'.

...