Класс для тестирования XML
От: Дмитрий Писаренко Россия http://dmitripisarenko.me
Дата: 22.05.08 18:22
Оценка:
Здравствуйте!

У меня есть большое количество однотипных проверочных программ (NUnit), в которых сравнивается реальное значение узла в XML-документе (XPath) с ожидаемым.

Есть ли уже готовый класс для C#, при помощи которого можно было бы сделать вот так:

int[2][] expectedIntValuesAndXpaths = {
{ 1, "/path1"},
{ 2, "/path2"},
};

string[2][] expectedStringValuesAndXpaths = {
{ "string01", "/path3"},
{ "string04", "/path4"},
};

XmlDocument xml = getXml();

checkXml(xml, expectedIntValuesAndXpaths, expectedStringValuesAndXpaths);


checkXml устроен примерно так:

public static void checkXml(XmlDocument xmlDocument, int[2][] expectedIntValuesAndXpaths, string[2][] expectedStringValuesAndXpaths)
{
  for (int i=0; i < expectedIntValuesAndXpaths.Length; i++)
  {
    int expected = expectedIntValuesAndXpaths[i][0];
    string xpath = expectedIntValuesAndXpaths[i][1];
    int actual = getIntValueFromXml(xmlDocument, xpath);
    
    Assert.AreEqual(expected, actual);
  }

  // Аналогично с expectedStringValuesAndXpaths
}


Кроме int и string, мне ещё надо сравнивать значения DateTime, DateTime?, int?.

Я понимаю, что это можно написать самому, просто не хочется изобретать велосипед, если таковой уже имеется.

Заранее благодарен

Дмитрий
Дмитрий Писаренко

http://dmitripisarenko.me
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.