TDD с зависимостями файловой системы

У меня есть интеграционный тест LoadFile_DataLoaded_Successfully () . И я хочу преобразовать его в модульный тест для разрыва зависимости с файловой системой.

PS Я новичок в TDD:

Вот мой рабочий класс:

public class LocalizationData
{
    private bool IsValidFileName(string fileName)
    {
        if (fileName.ToLower().EndsWith("xml"))
        {
            return true;
        }
        return false;
    }

    public XmlDataProvider LoadFile(string fileName)
    {
        if (IsValidFileName(fileName))
        {
            XmlDataProvider provider = 
                            new XmlDataProvider
                                 {
                                      IsAsynchronous = false,
                                      Source = new Uri(fileName, UriKind.Absolute)
                                 };

            return provider;
        }
        return null;
    }
}

и мой тестовый класс (Nunit)

[TestFixture]
class LocalizationDataTest
{
    [Test]
    public void LoadFile_DataLoaded_Successfully()
    {
        var data = new LocalizationData();
        string fileName = "d:/azeri.xml";
        XmlDataProvider result = data.LoadFile(fileName);
        Assert.IsNotNull(result);
        Assert.That(result.Document, Is.Not.Null);
    }
}

Любая идея как его реорганизовать, чтобы сломать зависимость файловой системы

6
задан akjoshi 31 May 2012 в 11:26
поделиться