Skip to content

Commit

Permalink
Merge pull request #35 from sfaqer/bugfix/jsonComments
Browse files Browse the repository at this point in the history
Убрано дополнительное вырезание комментариев из json как ненужное
  • Loading branch information
nixel2007 authored Sep 17, 2024
2 parents 70557a1 + 316d5a9 commit 18843c7
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 24 deletions.
5 changes: 2 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
*.xml
*.ospx


coverage/*

.vscode/*
.vscode/*
oscript_modules/*
Original file line number Diff line number Diff line change
Expand Up @@ -125,8 +125,6 @@
Лог.Отладка("Текст файла настроек:
|%1", JsonСтрока);

JsonСтрока = ВырезатьКомментарииИзТекстаJSON(JsonСтрока);

ПарсерJSON = Новый ПарсерJSON();
Параметры = ПарсерJSON.ПрочитатьJSON(JsonСтрока);

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

Функция ВырезатьКомментарииИзТекстаJSON(Знач JsonСтрока)

// вырезаем обычные комменты типа "// комментарий"
Регулярка = Новый РегулярноеВыражение("(^\/\/.*$)");
Рез = Регулярка.Заменить(JsonСтрока, "$0" );

// вырезаем комменты после строки, например, "строка //комментарий"
Регулярка = Новый РегулярноеВыражение("(^.*)(\/\/.*$)");
Рез = Регулярка.Заменить(Рез, "$1" );

Возврат Рез;
КонецФункции // ВырезатьКомментарииИзТекстаJSON()

Процедура ПоказатьПараметрыВРежимеОтладки(ЗначенияПараметров)

ПроцессорВывода = Новый ВыводВРежимеОтладки(Лог);
Expand Down
4 changes: 4 additions & 0 deletions tests/КонструкторНастройки_test.os
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
.ПолеМассив("МассивСтрок", Тип("Строка"))
.ПолеМассив("МассивЧисел", Тип("Число"))
.ПолеМассив("МассивДат", Тип("Дата"))
.ПолеСтрока("URL", Тип("Строка"))
;

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

СтруктураПараметров.Вставить("URL", "https://www.google.ru");

ПарсерJSON = Новый ПарсерJSON;
ТекстФайлаПроверки = ПарсерJSON.ЗаписатьJSON(СтруктураПараметров);

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

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

Expand Down
14 changes: 8 additions & 6 deletions tests/МенеджерЧтенияпараметров_test.os
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,11 @@

ТестовыеСлучаи = Новый Массив;
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": ""1.0"" }", "version", "1.0"));
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": 1.0,
| ""values"":
| { ""import"": ""тест"" }
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": 1.0, // Тест
| ""values"":
| {
| ""import"": ""тест"" // Тест
| }
|
|}", "values.import", "тест"));

Expand All @@ -26,9 +28,9 @@
|
|}", "values.0.import values.1.import", "тестмассива0 тестмассива1"));
ТестовыеСлучаи.Добавить(ТестовыйСлучай("{ ""version"": 1.0,
| ""values"": [
| { ""import"": ""тестмассива0"" },
| { ""test"": ""тестмассива1"" }
| ""values"": [ // Тест
| { ""import"": ""тестмассива0"" }, // Тест
| { ""test"": ""тестмассива1"" } // Тест
| ]
|}", "values.0.import values.1.test", "тестмассива0 тестмассива1"));

Expand Down

0 comments on commit 18843c7

Please sign in to comment.