Skip to content

Commit 2e451f1

Browse files
zeratulayurisartbear
authored andcommitted
* Тесты для mxl * Обновил v8Reader * Реализация для разбора mxl
1 parent 9805de0 commit 2e451f1

File tree

4 files changed

+49
-38
lines changed

4 files changed

+49
-38
lines changed
Lines changed: 38 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,38 @@
1-
# language: ru
2-
3-
Функционал: Выполнение операций по разборке на исходники
4-
Как Пользователь
5-
Я хочу иметь возможность разбирать внешние файлы на исходники
6-
Чтобы я мог проще следить за изменениями в коде
7-
8-
Контекст:
9-
Допустим я создаю временный каталог и сохраняю его в контекст
10-
И я сохраняю каталог проекта в контекст
11-
И я устанавливаю временный каталог как рабочий каталог
12-
И я установил рабочий каталог как текущий каталог
13-
14-
Сценарий: Разборка файла из заданной папки
15-
Когда я выполняю команду "oscript" с параметрами "<КаталогПроекта>/v8files-extractor.os --decompile <КаталогПроекта>/tests/Fixture.epf <РабочийКаталог>"
16-
Тогда в рабочем каталоге существует каталог "Fixture"
17-
И в подкаталоге "Fixture" рабочего каталога существует файл "renames.txt"
18-
И в подкаталоге "Fixture" рабочего каталога существует каталог "Form"
19-
И в подкаталоге "Fixture" рабочего каталога существует каталог "Макеты"
20-
И в подкаталоге "Fixture" рабочего каталога существует каталог "und"
21-
22-
Сценарий: Разборка каталога с вложенными каталогами
23-
Когда я создаю каталог "bin" в рабочем каталоге
24-
И я создаю каталог "1" в подкаталоге "bin" рабочего каталога
25-
И я копирую файл "Fixture.epf" из каталога "tests" проекта в подкаталог "bin/1" рабочего каталога
26-
И я создаю каталог "src" в рабочем каталоге
27-
И я выполняю команду "oscript" с параметрами "<КаталогПроекта>/v8files-extractor.os --decompile <РабочийКаталог>/bin <РабочийКаталог>/src"
28-
Тогда в рабочем каталоге существует каталог "src/1/Fixture"
29-
И в подкаталоге "src/1/Fixture" рабочего каталога существует файл "renames.txt"
30-
И в подкаталоге "src/1/Fixture" рабочего каталога существует каталог "Form"
31-
И в подкаталоге "src/1/Fixture" рабочего каталога существует каталог "Макеты"
32-
И в подкаталоге "src/1/Fixture" рабочего каталога существует каталог "und"
1+
# language: ru
2+
3+
Функционал: Выполнение операций по разборке на исходники
4+
Как Пользователь
5+
Я хочу иметь возможность разбирать внешние файлы на исходники
6+
Чтобы я мог проще следить за изменениями в коде
7+
8+
Контекст:
9+
Допустим я создаю временный каталог и сохраняю его в контекст
10+
И я сохраняю каталог проекта в контекст
11+
И я устанавливаю временный каталог как рабочий каталог
12+
И я установил рабочий каталог как текущий каталог
13+
14+
Сценарий: Разборка файла из заданной папки
15+
Когда я выполняю команду "oscript" с параметрами "<КаталогПроекта>/v8files-extractor.os --decompile <КаталогПроекта>/tests/Fixture.epf <РабочийКаталог>"
16+
Тогда в рабочем каталоге существует каталог "Fixture"
17+
И в подкаталоге "Fixture" рабочего каталога существует файл "renames.txt"
18+
И в подкаталоге "Fixture" рабочего каталога существует каталог "Form"
19+
И в подкаталоге "Fixture" рабочего каталога существует каталог "Макеты"
20+
И в подкаталоге "Fixture" рабочего каталога существует каталог "und"
21+
22+
Сценарий: Разборка макета из заданной папки
23+
Когда я создаю каталог "1" в рабочем каталоге
24+
И я копирую файл "Fixture.mxl" из каталога "tests" проекта в подкаталог "1" рабочего каталога
25+
И я выполняю команду "oscript" с параметрами "<КаталогПроекта>/v8files-extractor.os --decompile <РабочийКаталог>/1/Fixture.mxl <РабочийКаталог>/1"
26+
Тогда в подкаталоге "1" рабочего каталогасуществует файл "Fixture_mxl.txt"
27+
28+
Сценарий: Разборка каталога с вложенными каталогами
29+
Когда я создаю каталог "bin" в рабочем каталоге
30+
И я создаю каталог "1" в подкаталоге "bin" рабочего каталога
31+
И я копирую файл "Fixture.epf" из каталога "tests" проекта в подкаталог "bin/1" рабочего каталога
32+
И я создаю каталог "src" в рабочем каталоге
33+
И я выполняю команду "oscript" с параметрами "<КаталогПроекта>/v8files-extractor.os --decompile <РабочийКаталог>/bin <РабочийКаталог>/src"
34+
Тогда в рабочем каталоге существует каталог "src/1/Fixture"
35+
И в подкаталоге "src/1/Fixture" рабочего каталога существует файл "renames.txt"
36+
И в подкаталоге "src/1/Fixture" рабочего каталога существует каталог "Form"
37+
И в подкаталоге "src/1/Fixture" рабочего каталога существует каталог "Макеты"
38+
И в подкаталоге "src/1/Fixture" рабочего каталога существует каталог "und"

tests/Fixture.mxl

633 Bytes
Binary file not shown.

v8Reader

Submodule v8Reader updated 31 files

v8files-extractor.os

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@
275275
Возврат Ложь;
276276
КонецЕсли;
277277

278-
Поз = Найти(ВРег(".epf,.erf,.cfe,"), ВРег(Файл.Расширение+","));
278+
Поз = Найти(ВРег(".epf,.erf,.cfe,.mxl,"), ВРег(Файл.Расширение+","));
279279
Возврат Поз > 0;
280280

281281
КонецФункции
@@ -296,7 +296,10 @@
296296
Лог.Отладка("ПутьКаталогаИсходников <%1>", ПутьКаталогаИсходников);
297297
ПапкаИсходников = Новый Файл(ПутьКаталогаИсходников);
298298

299-
ОбеспечитьПустойКаталог(ПапкаИсходников);
299+
Если НЕ ВРег(Файл.Расширение) = ".MXL" Тогда
300+
ОбеспечитьПустойКаталог(ПапкаИсходников);
301+
КонецЕсли;
302+
300303
Если ВРег(Файл.Расширение) = ".CFE" Тогда
301304
ЗапуститьРаспаковкуРасширения(Файл, ПапкаИсходников);
302305
Иначе
@@ -369,12 +372,14 @@
369372
Конфигуратор.ИспользоватьКонтекст(КонтекстКонфигуратора);
370373
КонецЕсли;
371374

372-
373375
ЛогКонфигуратора = Логирование.ПолучитьЛог("oscript.lib.v8runner");
374376
ЛогКонфигуратора.УстановитьУровень(Лог.Уровень());
375377

378+
379+
ЭтоМакет = ВРег(Файл.Расширение) = ".MXL";
380+
376381
Параметры = Конфигуратор.ПолучитьПараметрыЗапуска();
377-
Если ИспользоватьКонфигуратор Тогда
382+
Если НЕ ЭтоМакет И ИспользоватьКонфигуратор Тогда
378383

379384
КоманднаяСтрокаРаспаковки = СтрШаблон("/DumpExternalDataProcessorOrReportToFiles ""%1\%2.xml"" ""%3""", ПапкаИсходников.ПолноеИмя, Файл.ИмяБезРасширения, Файл.ПолноеИмя);
380385

@@ -390,7 +395,7 @@
390395
Лог.Отладка("Путь к V8Reader: " + ПутьV8Reader);
391396
Ожидаем.Что(Новый Файл(ПутьV8Reader).Существует(), "Некорректно установлен V8Reader. Не обнаружен файл <" + ПутьV8Reader + ">").ЭтоИстина();
392397

393-
КоманднаяСтрокаV8Reader = СтрШаблон("/C""decompile;pathtocf;%1;pathout;%2;convert-mxl2txt;ЗавершитьРаботуПосле;""", Файл.ПолноеИмя, ПапкаИсходников.ПолноеИмя);
398+
КоманднаяСтрокаV8Reader = СтрШаблон("/C""decompile;pathtocf;%1;pathout;%2;convert-mxl2txt;ЗавершитьРаботуПосле;""", Файл.ПолноеИмя, ?(ЭтоМакет, Файл.Путь, ПапкаИсходников.ПолноеИмя));
394399

395400
Лог.Отладка("Командная строка V8Reader: " + КоманднаяСтрокаV8Reader);
396401

0 commit comments

Comments
 (0)