Skip to content

Commit

Permalink
Оптимизация расхода памяти #1806
Browse files Browse the repository at this point in the history
  • Loading branch information
Pr-Mex committed Nov 18, 2022
1 parent 0039cab commit 2452a5b
Showing 1 changed file with 35 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28619,7 +28619,7 @@
КонецЦикла;
КонецЕсли;
ЗаписатьЛогВТекстИнформация("" + ТекущаяДата() + ". " + ТекстСообщения, " " + ТекШаг.Имя);
Если ТекШаг.ШагСПараметрамиВТаблице Тогда
Если ТекШаг.Свойство("ШагСПараметрамиВТаблице") И ТекШаг.ШагСПараметрамиВТаблице И ТекШаг.Свойство("ПараметрыТаблицы") Тогда
ВывестиВЛогТаблицу(ТекШаг.ПараметрыТаблицы);
КонецЕсли;
КонецЕсли;
Expand All @@ -28635,17 +28635,23 @@
ДанныеВкладкиРедактора = ДанныеВкладкиРедактора();

Если УстановленыБрейкПоинты И Не Объект.РежимВыполненияОдногоШага Тогда
ЭтоШагПодсценария = ТекШаг.Свойство("ЭтоШагПодсценария") И ТекШаг.ЭтоШагПодсценария;
Если ЭтоШагПодсценария Тогда
СтрокаШагаПодсценарияФичи = ТекШаг.СтрокаШагаПодсценарияФичи;
Иначе
СтрокаШагаПодсценарияФичи = Неопределено;
КонецЕсли;
Если (НЕ Объект.ИспользоватьРедакторVanessaEditor И СтрокаШага.Брейкпоинт)
ИЛИ (Объект.ИспользоватьРедакторVanessaEditor И НЕ ТекШаг.ЭтоШагПодсценария И Брейкпоинты.Найти(ТекШаг.НомерСтрокиВФиче) <> Неопределено)
ИЛИ (Объект.ИспользоватьРедакторVanessaEditor И ТекШаг.ЭтоШагПодсценария И ДанныеВкладкиРедактора.БрейкпоинтыVanessaEditorВиджеты.Найти(ТекШаг.ИдСтроки) <> Неопределено)
ИЛИ (Объект.ИспользоватьРедакторVanessaEditor И ТекШаг.ЭтоШагПодсценария И Брейкпоинты.Найти(ТекШаг.СтрокаШагаПодсценарияФичи) <> Неопределено)
ИЛИ (Объект.ИспользоватьРедакторVanessaEditor И (НЕ ЭтоШагПодсценария) И Брейкпоинты.Найти(ТекШаг.НомерСтрокиВФиче) <> Неопределено)
ИЛИ (Объект.ИспользоватьРедакторVanessaEditor И ЭтоШагПодсценария И ДанныеВкладкиРедактора.БрейкпоинтыVanessaEditorВиджеты.Найти(ТекШаг.ИдСтроки) <> Неопределено)
ИЛИ (Объект.ИспользоватьРедакторVanessaEditor И ЭтоШагПодсценария И Брейкпоинты.Найти(СтрокаШагаПодсценарияФичи) <> Неопределено)
Тогда

НадоОстановитьсяНаТочкеОстанова = Истина;
Если Объект.ИспользоватьРедакторVanessaEditor
И ТекущаяПозицияVanessaEditor <> Неопределено
И ПустаяСтрока(ТекущаяПозицияVanessaEditor.codeWidget)
И (ТекШаг.НомерСтрокиВФиче = ТекущаяПозицияVanessaEditor.lineNumber ИЛИ ТекШаг.СтрокаШагаПодсценарияФичи = ТекущаяПозицияVanessaEditor.lineNumber)
И (ТекШаг.НомерСтрокиВФиче = ТекущаяПозицияVanessaEditor.lineNumber ИЛИ СтрокаШагаПодсценарияФичи = ТекущаяПозицияVanessaEditor.lineNumber)
И (Объект.РежимВыполненияДанногоСценарияСТекущегоШага ИЛИ Объект.РежимВыполненияДанногоСценарияСТекущегоШагаСПродолжением) Тогда
НадоОстановитьсяНаТочкеОстанова = Ложь;
КонецЕсли;
Expand All @@ -28656,7 +28662,7 @@
ПрекратитьВыполнениеВсехСценариев = Истина;
ПерейтиКВыполнениюСледующегоСценария();
Если Объект.ИспользоватьРедакторVanessaEditor Тогда
Если ТекШаг.ЭтоШагПодсценария Тогда
Если ТекШаг.Свойство("ЭтоШагПодсценария") И ТекШаг.ЭтоШагПодсценария Тогда
АктивизироватьСтрокуРедактораПоИдСтрокиИНомеруСтрокиФичи(ТекШаг.ИДСтроки, ТекШаг.СтрокаШагаПодсценарияФичи);
Иначе
АктивизироватьСтрокуРедактораПоИдСтрокиИНомеруСтрокиФичи(СтрокаШага.ИДСтроки, СтрокаШага.НомерСтрокиВФиче);
Expand All @@ -28671,7 +28677,7 @@

Если Объект.ИспользоватьРедакторVanessaEditor Тогда
ДанныеСценария = МассивСценариевДляВыполнения[ТекИД_СценарияВМассиве];
Если ТекШаг.ЭтоШагПодсценария Тогда
Если ТекШаг.Свойство("ЭтоШагПодсценария") И ТекШаг.ЭтоШагПодсценария Тогда
Если НЕ ДанныеСценария.ЭтоСтруктураСценария Тогда
Если ДанныеСценария.ТекущийНомерСтрокиПодсценария = Неопределено
ИЛИ ДанныеСценария.ТекущийНомерСтрокиПодсценария <> ТекШаг.СтрокаШагаПодсценарияФичи Тогда
Expand Down Expand Up @@ -28715,7 +28721,11 @@
РезультатПрохожденияШага.Вставить("ВремяОкончания", ТекущаяУниверсальнаяДатаВМиллисекундах());
РезультатПрохожденияШага.Вставить("НомерСтрокиВФиче", СтрокаШага.НомерСтрокиВФиче);
РезультатПрохожденияШага.Вставить("ИДСтроки", ИДСтрокиШага);
РезультатПрохожденияШага.Вставить("ЭтоШагКонтекста", ТекШаг.ЭтоШагКонтекста);
Если ТекШаг.Свойство("ЭтоШагКонтекста") И ТекШаг.ЭтоШагКонтекста Тогда
РезультатПрохожденияШага.Вставить("ЭтоШагКонтекста", Истина);
Иначе
РезультатПрохожденияШага.Вставить("ЭтоШагКонтекста", Ложь);
КонецЕсли;
РезультатПрохожденияШага.Вставить("Статус", "Broken");

РезультатПрохожденияТестовШагов.Добавить(РезультатПрохожденияШага);
Expand Down Expand Up @@ -30016,7 +30026,7 @@
Если ТекИД_ШагаВМассиве <= (Шаги.Количество() - 1) Тогда
ТекШаг = Шаги[ТекИД_ШагаВМассиве];

Если ТекШаг.ШагСчитаетсяУпавшим Тогда
Если ТекШаг.Свойство("ШагСчитаетсяУпавшим") И ТекШаг.ШагСчитаетсяУпавшим Тогда
СтатусЗапускаСценариев = Ложь;

ИДСтрокиШага = ТекШаг.СтрокаШага;
Expand All @@ -30038,8 +30048,12 @@
ТекШаг.Имя
));

ОписаниеОшибки = ТекШаг.ОписаниеОшибки;
Если НЕ ЗначениеЗаполнено(ТекШаг.ОписаниеОшибки) Тогда
Если ТекШаг.Свойство("ОписаниеОшибки") Тогда
ОписаниеОшибки = ТекШаг.ОписаниеОшибки;
Иначе
ОписаниеОшибки = "";
КонецЕсли;
Если НЕ ЗначениеЗаполнено(ОписаниеОшибки) Тогда
ОписаниеОшибки = ОписаниеОшибки();
КонецЕсли;

Expand Down Expand Up @@ -30230,9 +30244,9 @@
ТекИД_ШагаВМассиве = ИдСледующегоШага.ИД;
КонецЕсли;

ИначеЕсли (ТекИД_ШагаВМассиве - 1 >= 0) И Шаги[ТекИД_ШагаВМассиве - 1].ЭтоШагКонтекста Тогда
ИначеЕсли (ТекИД_ШагаВМассиве - 1 >= 0) И Шаги[ТекИД_ШагаВМассиве - 1].Свойство("ЭтоШагКонтекста") И Шаги[ТекИД_ШагаВМассиве - 1].ЭтоШагКонтекста Тогда
Для Ккк = ТекИД_ШагаВМассиве По Шаги.Количество() - 1 Цикл
Если НЕ Шаги[Ккк].ЭтоШагКонтекста Тогда
Если НЕ Шаги[Ккк].Свойство("ЭтоШагКонтекста") ИЛИ НЕ Шаги[Ккк].ЭтоШагКонтекста Тогда
ТекИД_ШагаВМассиве = Ккк;
Прервать;
КонецЕсли;
Expand Down Expand Up @@ -30308,7 +30322,7 @@
Если ТекИД_ШагаВМассиве >= 0 Тогда
ТекШаг = Шаги[ТекИД_ШагаВМассиве];

Если НЕ ТекШаг.ЭтоШагКонтекста Тогда
Если НЕ ТекШаг.Свойство("ЭтоШагКонтекста") ИЛИ НЕ ТекШаг.ЭтоШагКонтекста Тогда
// Тут надо сделать запись одного шага, плюс записать для каждого шага файл параметров: ИД, строка субтитров, файлTTS
// если есть

Expand All @@ -30332,7 +30346,7 @@
ИнтервалДляВыполненияШага = Объект.ИнтервалВыполненияШага;
НуженМинимальныйИнтервал = Объект.ИдетЗаписьВидео
И (ЭтоПрерывающйВидеоШаг(ТекШаг)
ИЛИ ТекШаг.ЭтоШагКонтекста
ИЛИ (ТекШаг.Свойство("ЭтоШагКонтекста") И ТекШаг.ЭтоШагКонтекста)
ИЛИ МассивTTS <> Неопределено);
Если НуженМинимальныйИнтервал Тогда
ИнтервалДляВыполненияШага = 0.1;
Expand All @@ -30341,7 +30355,7 @@
ОбработкаПрерыванияПользователя();

Если ТекШаг <> Неопределено И ТекШаг.Свойство("НадоНачатьЗаписьВыполненияТестов")
И ТекШаг.НадоНачатьЗаписьВыполненияТестов Тогда
И ТекШаг.Свойство("НадоНачатьЗаписьВыполненияТестов") И ТекШаг.НадоНачатьЗаписьВыполненияТестов Тогда

ИДСтрокиСценария = МассивСценариевДляВыполнения[ТекИД_СценарияВМассиве].СтрокаДерева;
СтрокаСценария = ПолучитьСтрокуСценарияИзДанныхФормы(ИДСтрокиСценария);
Expand Down Expand Up @@ -30381,7 +30395,11 @@
РезультатПрохожденияШага.Вставить("ОписаниеОшибки", "Пропущен");
РезультатПрохожденияШага.Вставить("Статус", "Skipped");
РезультатПрохожденияШага.Вставить("ИДСтроки", ТекШаг.СтрокаШага);
РезультатПрохожденияШага.Вставить("ЭтоШагКонтекста", ТекШаг.ЭтоШагКонтекста);
Если ТекШаг.Свойство("ЭтоШагКонтекста") И ТекШаг.ЭтоШагКонтекста Тогда
РезультатПрохожденияШага.Вставить("ЭтоШагКонтекста", Истина);
Иначе
РезультатПрохожденияШага.Вставить("ЭтоШагКонтекста", Ложь);
КонецЕсли;

РезультатПрохожденияТестовШагов.Добавить(РезультатПрохожденияШага);

Expand Down

0 comments on commit 2452a5b

Please sign in to comment.