#Использовать asserts #Использовать logos #Использовать tempfiles #Использовать "../src" Перем юТест; Перем Лог; Перем МенеджерВременныхФайлов; // Основная точка входа Функция ПолучитьСписокТестов(ЮнитТестирование) Экспорт юТест = ЮнитТестирование; ВсеТесты = Новый Массив; ВсеТесты.Добавить("ТестДолжен_ПрочитатьФайл"); ВсеТесты.Добавить("ТестДолжен_ЗаписатьФайл"); ВсеТесты.Добавить("ТестДолжен_ПроверитьПоискКаталогов"); ВсеТесты.Добавить("ТестДолжен_ПроверитьНовыйФайл"); Возврат ВсеТесты; КонецФункции Процедура ТестДолжен_ПрочитатьФайл() Экспорт ПутьКФайлу = ОбъединитьПути(КаталогТестовыхФикстур(), "NoBom.bsl"); СодержимоеФайла = ФайловыеОперации.ПрочитатьТекстФайла(ПутьКФайлу); Утверждения.ПроверитьЗаполненность(СодержимоеФайла); КонецПроцедуры Процедура ТестДолжен_ЗаписатьФайл() Экспорт Файл = Новый Файл(МенеджерВременныхФайлов.СоздатьФайл("bsl")); ФайловыеОперации.ЗаписатьТекстФайла(Файл.ПолноеИмя, Файл.ПолноеИмя); СодержимоеФайла = ФайловыеОперации.ПрочитатьТекстФайла(Файл.ПолноеИмя); Утверждения.ПроверитьРавенство(СодержимоеФайла, Файл.ПолноеИмя); КонецПроцедуры Процедура ТестДолжен_ПроверитьПоискКаталогов() Экспорт ТестовыйКаталог = МенеджерВременныхФайлов.СоздатьКаталог(); МенеджерВременныхФайлов.БазовыйКаталог = ТестовыйКаталог; НайденныеКаталоги = ФайловыеОперации.НайтиКаталоги(ТестовыйКаталог); Утверждения.ПроверитьРавенство(ТипЗнч(НайденныеКаталоги), Тип("Массив")); Утверждения.ПроверитьРавенство(ФайловыеОперации.НайтиКаталоги(ТестовыйКаталог).Количество(), 0); МенеджерВременныхФайлов.СоздатьКаталог(); Утверждения.ПроверитьРавенство(ФайловыеОперации.НайтиКаталоги(ТестовыйКаталог).Количество(), 1); МенеджерВременныхФайлов.СоздатьКаталог(); Утверждения.ПроверитьРавенство(ФайловыеОперации.НайтиКаталоги(ТестовыйКаталог).Количество(), 2); МенеджерВременныхФайлов.СоздатьКаталог(); Утверждения.ПроверитьРавенство(ФайловыеОперации.НайтиКаталоги(ТестовыйКаталог).Количество(), 3); МенеджерВременныхФайлов.СоздатьКаталог(); Утверждения.ПроверитьРавенство(ФайловыеОперации.НайтиКаталоги(ТестовыйКаталог).Количество(), 4); ИмяФайла = МенеджерВременныхФайлов.СоздатьФайл(); Файл = Новый Файл(ИмяФайла); Утверждения.ПроверитьРавенство(Файл.Путь, ТестовыйКаталог + ПолучитьРазделительПути()); Утверждения.ПроверитьРавенство(Файл.Существует(), Истина); Утверждения.ПроверитьРавенство(ФайловыеОперации.НайтиКаталоги(ТестовыйКаталог).Количество(), 4); КонецПроцедуры Процедура ТестДолжен_ПроверитьНовыйФайл() Экспорт ИмяФайла = МенеджерВременныхФайлов.СоздатьФайл(); Файл = ФайловыеОперации.НовыйФайл(ИмяФайла); Файл2 = ФайловыеОперации.НовыйФайл(Файл); Утверждения.ПроверитьРавенство(Файл, Файл2); Утверждения.ПроверитьРавенство(Файл.Путь, Новый Файл(ИмяФайла).Путь); КонецПроцедуры Процедура ПередЗапускомТеста() Экспорт ВремТестер = Новый Тестер; Лог = Логирование.ПолучитьЛог(ВремТестер.ИмяЛога()); ВключитьПоказОтладки(); МенеджерВременныхФайлов = Новый МенеджерВременныхФайлов; КонецПроцедуры Процедура ПослеЗапускаТеста() Экспорт МенеджерВременныхФайлов.Удалить(); МенеджерВременныхФайлов = Неопределено; КонецПроцедуры Процедура ВключитьПоказОтладки() Лог.УстановитьУровень(УровниЛога.Отладка); КонецПроцедуры Процедура ВыключитьПоказОтладки() Лог.УстановитьУровень(УровниЛога.Информация); КонецПроцедуры Функция КаталогТестовыхФикстур() Возврат ОбъединитьПути(КаталогИсходников(), "tests\fixtures"); КонецФункции Функция КаталогИсходников() Возврат ОбъединитьПути(ТекущийСценарий().Каталог, ".."); КонецФункции