mirror of
https://github.com/bia-technologies/bsl-parser.git
synced 2024-11-24 08:12:17 +02:00
af9a04e89b
* Поддержка чтения формата EDT * Изменен доступ к API - использование фабрики для создания парсера, парсер - объект * Переименованы, некоторые модули * Дробление монолитных модулей
90 lines
4.8 KiB
Plaintext
90 lines
4.8 KiB
Plaintext
///////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Тестирование основной функциональности пакета
|
|
// Проверка на соответствие выгрузки эталону
|
|
//
|
|
// (с) 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");
|
|
|
|
КонецФункции |