/////////////////////////////////////////////////////////////////////////////// // // Тестирование основной функциональности пакета // Проверка на соответствие выгрузки эталону // // (с) BIA Technologies, LLC // /////////////////////////////////////////////////////////////////////////////// #Использовать ".." #Использовать logos #Использовать asserts #Использовать fs /////////////////////////////////////////////////////////////////////////////// Перем Лог; /////////////////////////////////////////////////////////////////////////////// // ПРОГРАММНЫЙ ИНТЕРФЕЙС /////////////////////////////////////////////////////////////////////////////// Функция ПолучитьСписокТестов(Знач ЮнитТестирование) Экспорт Лог = Логирование.ПолучитьЛог("Тест"); МассивТестов = Новый Массив; МассивТестов.Добавить("ТестДолженПрочитатьВыгрузкуВИерархическомФорматеКонфигуратора"); МассивТестов.Добавить("ТестДолженПрочитатьВыгрузкуВФорматеEDT"); Возврат МассивТестов; КонецФункции Процедура ПередЗапускомТеста() Экспорт КонецПроцедуры Процедура ПослеЗапускаТеста() Экспорт КонецПроцедуры Процедура ТестДолженПрочитатьВыгрузкуВИерархическомФорматеКонфигуратора() Экспорт Парсер = ПарсерBSL.ПарсерКонфигурации(ОбъединитьПути(КаталогФикстур(), "designer", "configuration-8.3.10")); Парсер.ПрочитатьСтруктуруКонфигурации(); Парсер.НайтиМодулиКонфигурации(); ПроверитьРезультатЧтенияВыгрузки(Парсер, 42, 47); КонецПроцедуры Процедура ТестДолженПрочитатьВыгрузкуВФорматеEDT() Экспорт Парсер = ПарсерBSL.ПарсерКонфигурации(ОбъединитьПути(КаталогФикстур(), "edt", "configuration-8.3.10")); Парсер.ПрочитатьСтруктуруКонфигурации(); Парсер.НайтиМодулиКонфигурации(); ПроверитьРезультатЧтенияВыгрузки(Парсер, 41, 47); КонецПроцедуры /////////////////////////////////////////////////////////////////////////////// // СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ /////////////////////////////////////////////////////////////////////////////// Процедура ПроверитьРезультатЧтенияВыгрузки(Парсер, КоличествоОбъектов, КоличествоМодулей) Ожидаем.Что(Парсер.ОписаниеКонфигурации().ОбъектыКонфигурации.Количество(), "Количество найденных объектов не соответствует фактическому").Равно(КоличествоОбъектов); Ожидаем.Что(Парсер.ОписаниеКонфигурации().МодулиКонфигурации.Количество(), "Количество найденных модулей не соответствует фактическому").Равно(КоличествоМодулей); Для Каждого Объект Из Парсер.ОписаниеКонфигурации().ОбъектыКонфигурации Цикл Ожидаем.Что(ФС.ФайлСуществует(Объект.ПутьКФайлу), СтрШаблон("Не существует файл [%2] описания объекта ""%1""", Парсер.ПолноеИмяОбъекта(Объект), Объект.ПутьКФайлу)).ЭтоИстина(); КонецЦикла; Для Каждого Объект Из Парсер.ОписаниеКонфигурации().МодулиКонфигурации Цикл Ожидаем.Что(ФС.ФайлСуществует(Объект.ПутьКФайлу), СтрШаблон("Не существует файл [%2] модуля объекта ""%1""", Парсер.ПолноеИмяОбъекта(Объект), Объект.ПутьКФайлу)).ЭтоИстина(); КонецЦикла; КонецПроцедуры Функция КаталогФикстур() Возврат ОбъединитьПути(ТекущийСценарий().Каталог, "fixtures"); КонецФункции