Skip to content

Commit 18843c7

Browse files
authored
Merge pull request #35 from sfaqer/bugfix/jsonComments
Убрано дополнительное вырезание комментариев из json как ненужное
2 parents 70557a1 + 316d5a9 commit 18843c7

File tree

4 files changed

+14
-24
lines changed

4 files changed

+14
-24
lines changed

.gitignore

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
*.xml
22
*.ospx
33

4-
54
coverage/*
6-
7-
.vscode/*
5+
.vscode/*
6+
oscript_modules/*

src/Классы/internal/Классы/ПровайдерПараметровJSON.os

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,6 @@
125125
Лог.Отладка("Текст файла настроек:
126126
|%1", JsonСтрока);
127127

128-
JsonСтрока = ВырезатьКомментарииИзТекстаJSON(JsonСтрока);
129-
130128
ПарсерJSON = Новый ПарсерJSON();
131129
Параметры = ПарсерJSON.ПрочитатьJSON(JsonСтрока);
132130

@@ -145,19 +143,6 @@
145143
Возврат Рез;
146144
КонецФункции // ПрочитатьФайл()
147145

148-
Функция ВырезатьКомментарииИзТекстаJSON(Знач JsonСтрока)
149-
150-
// вырезаем обычные комменты типа "// комментарий"
151-
Регулярка = Новый РегулярноеВыражение("(^\/\/.*$)");
152-
Рез = Регулярка.Заменить(JsonСтрока, "$0" );
153-
154-
// вырезаем комменты после строки, например, "строка //комментарий"
155-
Регулярка = Новый РегулярноеВыражение("(^.*)(\/\/.*$)");
156-
Рез = Регулярка.Заменить(Рез, "$1" );
157-
158-
Возврат Рез;
159-
КонецФункции // ВырезатьКомментарииИзТекстаJSON()
160-
161146
Процедура ПоказатьПараметрыВРежимеОтладки(ЗначенияПараметров)
162147

163148
ПроцессорВывода = Новый ВыводВРежимеОтладки(Лог);

tests/КонструкторНастройки_test.os

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@
5959
.ПолеМассив("МассивСтрок", Тип("Строка"))
6060
.ПолеМассив("МассивЧисел", Тип("Число"))
6161
.ПолеМассив("МассивДат", Тип("Дата"))
62+
.ПолеСтрока("URL", Тип("Строка"))
6263
;
6364

6465
СтруктураПараметров = Новый Структура("version, СтрокаНастройки, ДатаНастройки,
@@ -79,6 +80,8 @@
7980
ПолучитьСоответствие("Ключ1, Ключ2", "Значение1, Значение2")
8081
);
8182

83+
СтруктураПараметров.Вставить("URL", "https://www.google.ru");
84+
8285
ПарсерJSON = Новый ПарсерJSON;
8386
ТекстФайлаПроверки = ПарсерJSON.ЗаписатьJSON(СтруктураПараметров);
8487

@@ -103,6 +106,7 @@
103106
ПроверитьРезультат(СтруктураПараметров.ПараметрСтруктура.СтрокаСтруктуры, МенеджерПараметров.Параметр("ПараметрСтруктура.СтрокаСтруктуры"));
104107
ПроверитьРезультат(СтруктураПараметров.ПараметрСтруктура.ЧислоСтруктуры, МенеджерПараметров.Параметр("ПараметрСтруктура.ЧислоСтруктуры"));
105108
ПроверитьРезультат(СтруктураПараметров.ДатаНастройки, МенеджерПараметров.Параметр("ДатаНастройки"));
109+
ПроверитьРезультат(СтруктураПараметров.URL, МенеджерПараметров.Параметр("URL"));
106110

107111
КонецПроцедуры
108112

tests/МенеджерЧтенияпараметров_test.os

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,11 @@
1111

1212
ТестовыеСлучаи = Новый Массив;
1313
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": ""1.0"" }", "version", "1.0"));
14-
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": 1.0,
15-
| ""values"":
16-
| { ""import"": ""тест"" }
14+
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": 1.0, // Тест
15+
| ""values"":
16+
| {
17+
| ""import"": ""тест"" // Тест
18+
| }
1719
|
1820
|}", "values.import", "тест"));
1921

@@ -26,9 +28,9 @@
2628
|
2729
|}", "values.0.import values.1.import", "тестмассива0 тестмассива1"));
2830
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": 1.0,
29-
| ""values"": [
30-
| { ""import"": ""тестмассива0"" },
31-
| { ""test"": ""тестмассива1"" }
31+
| ""values"": [ // Тест
32+
| { ""import"": ""тестмассива0"" }, // Тест
33+
| { ""test"": ""тестмассива1"" } // Тест
3234
| ]
3335
|}", "values.0.import values.1.test", "тестмассива0 тестмассива1"));
3436

0 commit comments

Comments
 (0)