Skip to content

Commit 6a779e9

Browse files
committed
Переход на библиотеку coverage
1 parent aaca8a1 commit 6a779e9

File tree

1 file changed

+11
-55
lines changed

1 file changed

+11
-55
lines changed

tasks/coverage.os

Lines changed: 11 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,29 @@
1+
#Использовать coverage
12
#Использовать 1commands
2-
#Использовать asserts
3-
#Использовать fs
4-
#Использовать json
5-
6-
СистемнаяИнформация = Новый СистемнаяИнформация;
7-
ЭтоWindows = Найти(НРег(СистемнаяИнформация.ВерсияОС), "windows") > 0;
83

94
ФС.ОбеспечитьПустойКаталог("coverage");
105
ПутьКСтат = "coverage/stat.json";
116

127
Команда = Новый Команда;
138
Команда.УстановитьКоманду("oscript");
14-
Если НЕ ЭтоWindows Тогда
15-
Команда.ДобавитьПараметр("-encoding=utf-8");
16-
КонецЕсли;
9+
Команда.ДобавитьПараметр("-encoding=utf-8");
1710
Команда.ДобавитьПараметр(СтрШаблон("-codestat=%1", ПутьКСтат));
1811
Команда.ДобавитьПараметр("tasks/test.os");
1912
Команда.ПоказыватьВыводНемедленно(Истина);
2013

2114
КодВозврата = Команда.Исполнить();
2215

2316
Файл_Стат = Новый Файл(ПутьКСтат);
24-
Ожидаем.Что(Файл_Стат.Существует(), СтрШаблон("Файл <%1> с результатами покрытия не существует!", Файл_Стат.ПолноеИмя)).ЭтоИстина();
25-
26-
ЧтениеТекста = Новый ЧтениеТекста(ПутьКСтат, КодировкаТекста.UTF8);
27-
28-
СтрокаJSON = ЧтениеТекста.Прочитать();
29-
ЧтениеТекста.Закрыть();
30-
31-
Парсер = Новый ПарсерJSON();
32-
ДанныеПокрытия = Парсер.ПрочитатьJSON(СтрокаJSON);
3317

34-
ЗаписьXML = Новый ЗаписьXML;
35-
ЗаписьXML.ОткрытьФайл("coverage/genericCoverage.xml");
36-
ЗаписьXML.ЗаписатьОбъявлениеXML();
37-
ЗаписьXML.ЗаписатьНачалоЭлемента("coverage");
38-
ЗаписьXML.ЗаписатьАтрибут("version", "1");
18+
ИмяПакета = "cli";
3919

40-
Для Каждого Файл Из ДанныеПокрытия Цикл
41-
42-
ДанныеФайла = Файл.Значение;
43-
44-
ЗаписьXML.ЗаписатьНачалоЭлемента("file");
45-
ЗаписьXML.ЗаписатьАтрибут("path", ДанныеФайла.Получить("#path"));
46-
47-
Для Каждого КлючИЗначение Из ДанныеФайла Цикл
48-
49-
Если КлючИЗначение.Ключ = "#path" Тогда
50-
Продолжить;
51-
КонецЕсли;
52-
53-
ДанныеПроцедуры = КлючИЗначение.Значение;
54-
Для Каждого ДанныеСтроки Из ДанныеПроцедуры Цикл
55-
56-
ЗаписьXML.ЗаписатьНачалоЭлемента("lineToCover");
57-
58-
ЗаписьXML.ЗаписатьАтрибут("lineNumber", ДанныеСтроки.Ключ);
59-
Покрыто = Число(ДанныеСтроки.Значение.Получить("count")) > 0;
60-
ЗаписьXML.ЗаписатьАтрибут("covered", Формат(Покрыто, "БИ=true; БЛ=false"));
61-
62-
ЗаписьXML.ЗаписатьКонецЭлемента(); // lineToCover
63-
КонецЦикла
64-
КонецЦикла;
65-
66-
ЗаписьXML.ЗаписатьКонецЭлемента(); // file
67-
68-
КонецЦикла;
20+
ПроцессорГенерации = Новый ГенераторОтчетаПокрытия();
6921

70-
ЗаписьXML.ЗаписатьКонецЭлемента(); // coverage
71-
ЗаписьXML.Закрыть();
22+
ПроцессорГенерации.ОтносительныеПути()
23+
.ФайлСтатистики(Файл_Стат.ПолноеИмя)
24+
.GenericCoverage()
25+
.Cobertura()
26+
.Clover(ИмяПакета)
27+
.Сформировать();
7228

73-
ЗавершитьРаботу(КодВозврата);
29+
ЗавершитьРаботу(КодВозврата);

0 commit comments

Comments
 (0)