Skip to content

Commit 356421d

Browse files
committed
Update ТестСвойствМетодовTUI.os
1 parent cb09769 commit 356421d

1 file changed

Lines changed: 148 additions & 28 deletions

File tree

tests/ТестСвойствМетодовTUI.os

Lines changed: 148 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
// КаталогБиблиотеки задан как "C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug".
44
Перем Ф, ИмяВременногоФайла, Таймер, ПолеВвода1, Форма1;
55
Перем СписокОшибок, КаталогСправки, КаталогБиблиотеки, КаталогТестов, ИмяЛогФайла;
6+
Перем Вин;
67

78
Функция СтрНайтиМежду(СтрПараметр, Фрагмент1 = Неопределено, Фрагмент2 = Неопределено, ИсключитьФрагменты = Истина, БезНаложения = Истина)
89
//Стр - исходная строка
@@ -54,11 +55,77 @@
5455
КонецФункции
5556

5657
Процедура ТестированиеКодов()
57-
Если Ф.ПлатформаWin Тогда
58-
ВыбранныеФайлы = НайтиФайлы(КаталогСправки, "*.html", Истина);
59-
Иначе
60-
// ВыбранныеФайлы = НайтиФайлы(КаталогСправки + "/OneScriptFormsru", "*.html", Истина);
61-
КонецЕсли;
58+
Массив0 = НайтиФайлы(КаталогСправки, "*.html", Истина);
59+
ВыбранныеФайлы = Новый Массив();
60+
МассивГолова = Новый Массив();
61+
МассивХвост = Новый Массив();
62+
Для А = 0 По Массив0.ВГраница() Цикл
63+
// Пропустить класс или поставить в конец списка.
64+
Если (СтрНайти(Массив0[А].ПолноеИмя, "MessageBoxInterval") > 0)
65+
или (СтрНайти(Массив0[А].ПолноеИмя, "OneScriptTerminalGuiButtonEnterMethod") > 0)
66+
Тогда // Этот не работает в линуксе и в линуксе пропустим.
67+
Если Вин Тогда
68+
МассивГолова.Добавить(Массив0[А]);
69+
Иначе
70+
Продолжить;
71+
КонецЕсли;
72+
ИначеЕсли (СтрНайти(Массив0[А].ПолноеИмя, "ToplevelMouseEnterEvent") > 0)
73+
или (СтрНайти(Массив0[А].ПолноеИмя, "ToplevelMouseLeaveEvent") > 0)
74+
или (СтрНайти(Массив0[А].ПолноеИмя, "ToplevelMouseClickEvent") > 0)
75+
или (СтрНайти(Массив0[А].ПолноеИмя, "OneScriptTerminalGuiResizedEvent") > 0)
76+
или (СтрНайти(Массив0[А].ПолноеИмя, "BorderBorderChangedEvent") > 0)
77+
или (СтрНайти(Массив0[А].ПолноеИмя, "ButtonMouseEnterEvent") > 0)
78+
или (СтрНайти(Массив0[А].ПолноеИмя, "ButtonMouseLeaveEvent") > 0)
79+
или (СтрНайти(Массив0[А].ПолноеИмя, "ButtonMouseClickEvent") > 0)
80+
или (СтрНайти(Массив0[А].ПолноеИмя, "WindowMouseEnterEvent") > 0)
81+
или (СтрНайти(Массив0[А].ПолноеИмя, "WindowMouseLeaveEvent") > 0)
82+
или (СтрНайти(Массив0[А].ПолноеИмя, "WindowMouseClickEvent") > 0)
83+
или (СтрНайти(Массив0[А].ПолноеИмя, "MenuBarMouseEnterEvent") > 0)
84+
или (СтрНайти(Массив0[А].ПолноеИмя, "MenuBarMouseLeaveEvent") > 0)
85+
или (СтрНайти(Массив0[А].ПолноеИмя, "MenuOpening") > 0)
86+
или (СтрНайти(Массив0[А].ПолноеИмя, "StatusBarMouseClickEvent") > 0)
87+
или (СтрНайти(Массив0[А].ПолноеИмя, "StatusBarMouseEnterEvent") > 0)
88+
или (СтрНайти(Массив0[А].ПолноеИмя, "StatusBarMouseLeaveEvent") > 0)
89+
или (СтрНайти(Массив0[А].ПолноеИмя, "EventArgsBorderProperty") > 0)
90+
или (СтрНайти(Массив0[А].ПолноеИмя, "EventArgsFlagsProperty") > 0)
91+
или (СтрНайти(Массив0[А].ПолноеИмя, "EventArgsSizeProperty") > 0)
92+
или (СтрНайти(Массив0[А].ПолноеИмя, "EventArgsViewProperty") > 0)
93+
или (СтрНайти(Массив0[А].ПолноеИмя, "EventArgsXProperty") > 0)
94+
или (СтрНайти(Массив0[А].ПолноеИмя, "EventArgsYProperty") > 0)
95+
или (СтрНайти(Массив0[А].ПолноеИмя, "MenuBarItemClickedEvent") > 0)
96+
или (СтрНайти(Массив0[А].ПолноеИмя, "OneScriptTerminalGuiUpArrowMethod") > 0)
97+
или (СтрНайти(Массив0[А].ПолноеИмя, "OneScriptTerminalGuiLeftArrowMethod") > 0)
98+
или (СтрНайти(Массив0[А].ПолноеИмя, "OneScriptTerminalGuiDownArrowMethod") > 0)
99+
или (СтрНайти(Массив0[А].ПолноеИмя, "OneScriptTerminalGuiRightArrowMethod") > 0)
100+
101+
102+
103+
104+
105+
106+
107+
108+
109+
110+
111+
112+
113+
114+
115+
116+
Тогда // Этот интерактивный и будет тестироваться в конце.
117+
МассивХвост.Добавить(Массив0[А]);
118+
Иначе
119+
МассивГолова.Добавить(Массив0[А]);
120+
КонецЕсли;
121+
КонецЦикла;
122+
Для А = 0 По МассивГолова.ВГраница() Цикл
123+
ВыбранныеФайлы.Добавить(МассивГолова[А]);
124+
КонецЦикла;
125+
Для А = 0 По МассивХвост.ВГраница() Цикл
126+
ВыбранныеФайлы.Добавить(МассивХвост[А]);
127+
КонецЦикла;
128+
62129
Для А = 0 По ВыбранныеФайлы.ВГраница() Цикл
63130
Сообщить(" (" + Ф.Математика().Окр(((ТекущаяУниверсальнаяДатаВМиллисекундах() - Таймер)/1000)/60, 2) + " мин." + " " + А + " из " +
64131
ВыбранныеФайлы.ВГраница() + ") " + ВыбранныеФайлы[А].ПолноеИмя);
@@ -67,6 +134,13 @@
67134
// Если Не (СтрНайти(ВыбранныеФайлы[А].ПолноеИмя, "CircularProgressBar") > 0) Тогда
68135
// Продолжить;
69136
// КонецЕсли;
137+
138+
// Пропустить класс
139+
// Если (СтрНайти(ВыбранныеФайлы[А].ПолноеИмя, "MessageBoxInterval") > 0)
140+
// или (СтрНайти(ВыбранныеФайлы[А].ПолноеИмя, "ToplevelMouseEnterEvent") > 0)
141+
// Тогда
142+
// Продолжить;
143+
// КонецЕсли;
70144

71145
ТекстДок = Новый ТекстовыйДокумент;
72146
ТекстДок.Прочитать(ВыбранныеФайлы[А].ПолноеИмя);
@@ -87,7 +161,11 @@
87161
Если Не (СокрЛП(ТестовыйКод) = "") Тогда
88162
// Заменим Сообщить на ТФ.ДобавитьВесьТекст
89163
ПодстрокаПоиска = "Сообщить(?(";
90-
ПодстрокаЗамены = "ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""\LogTUI.txt"", (?(";
164+
Если Вин Тогда
165+
ПодстрокаЗамены = "ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""\LogTUI.txt"", (?(";
166+
Иначе
167+
ПодстрокаЗамены = "ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""/LogTUI.txt"", (?(";
168+
КонецЕсли;
91169
ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены);
92170

93171
ПодстрокаПоиска = """ + "" "" + ТекущаяДата() + Символы.ПС);";
@@ -98,14 +176,24 @@
98176
Голова = "Попытка
99177
|
100178
|";
101-
Хвост = "
102-
|Исключение
103-
| ИнформацияОбОшибке1 = ИнформацияОбОшибке();
104-
| Ошибка = ""{" + Заголовок + " Модуль "" + ИнформацияОбОшибке1.ИмяМодуля + "" / Ошибка в строке: "" + ИнформацияОбОшибке1.НомерСтроки + "" / "" + ИнформацияОбОшибке1.Описание + ""}"";
105-
| ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""\LogTUI.txt"", Ошибка + Символы.ПС);
106-
|КонецПопытки;
107-
|";
108179

180+
Если Вин Тогда
181+
Хвост = "
182+
|Исключение
183+
| ИнформацияОбОшибке1 = ИнформацияОбОшибке();
184+
| Ошибка = ""{" + Заголовок + " Модуль "" + ИнформацияОбОшибке1.ИмяМодуля + "" / Ошибка в строке: "" + ИнформацияОбОшибке1.НомерСтроки + "" / "" + ИнформацияОбОшибке1.Описание + ""}"";
185+
| ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""\LogTUI.txt"", Ошибка + Символы.ПС);
186+
|КонецПопытки;
187+
|";
188+
Иначе
189+
Хвост = "
190+
|Исключение
191+
| ИнформацияОбОшибке1 = ИнформацияОбОшибке();
192+
| Ошибка = ""{" + Заголовок + " Модуль "" + ИнформацияОбОшибке1.ИмяМодуля + "" / Ошибка в строке: "" + ИнформацияОбОшибке1.НомерСтроки + "" / "" + ИнформацияОбОшибке1.Описание + ""}"";
193+
| ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""/LogTUI.txt"", Ошибка + Символы.ПС);
194+
|КонецПопытки;
195+
|";
196+
КонецЕсли;
109197

110198
ПодстрокаПоиска = "ПодключитьВнешнююКомпоненту";
111199
ПодстрокаЗамены = Голова + "
@@ -117,19 +205,25 @@
117205
// ТестовыйКод = Голова + ТестовыйКод + Хвост;
118206
ТестовыйКод = ТестовыйКод + Хвост;
119207

208+
Если Не Вин Тогда
209+
ПодстрокаПоиска = "ПодключитьВнешнююКомпоненту(""C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\";
210+
ПодстрокаЗамены = "ПодключитьВнешнююКомпоненту(""/home/vlad/Projects/444/111/OneScriptTerminalGui/OneScriptTerminalGui/bin/Debug/";
211+
ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены);
212+
КонецЕсли;
213+
120214
ТекстДокХХХ = Новый ТекстовыйДокумент;
121215

122216
ИмяВременногоФайла = КаталогТестов + СтрЗаменить(ВыбранныеФайлы[А].Имя, ".html", "") + "-код.os";
123217
ИмяВременногоФайла = СтрЗаменить(ИмяВременногоФайла, "OSTGui.", "");
124218
ТекстДокХХХ.Записать(ИмяВременногоФайла, "UTF-8");
125219

126-
// Если Не Ф.ПлатформаWin Тогда
220+
// Если Вин Тогда
127221
// ПодстрокаПоиска = "C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll";
128222
// ПодстрокаЗамены = "/home/vlad/Projects/444/111/OneScriptForms/OneScriptForms/bin/Debug/OneScriptForms.dll";
129223
// ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены);
130224
// КонецЕсли;
131225

132-
// Если Не Ф.ПлатформаWin Тогда
226+
// Если Вин Тогда
133227
// ПодстрокаПоиска = "ПолучитьИмяВременногоФайла()";
134228
// ПодстрокаЗамены = """/home/vlad/Projects/444/gnftsu3o.6rb""";
135229
// ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены);
@@ -140,9 +234,7 @@
140234
ТекстДокХХХ.Записать(ИмяВременногоФайла, "UTF-8");
141235
Форма1.Фокус();
142236
// Ф.ПередатьУправление();
143-
Если (Не Ф.ПлатформаWin) Тогда
144-
// // // // // Команда1("oscript", ИмяВременногоФайла, ПолеВвода1, ВыбранныеФайлы[А].Имя, ТестовыйКод);
145-
Иначе
237+
Если Вин Тогда
146238
// ЗапуститьПриложение(<СтрокаКоманды>, <ТекущийКаталог>, <ДождатьсяЗавершения>, <КодВозврата>)
147239
КодВозврата = Неопределено;
148240
ЗапуститьПриложение("" + ИмяВременногоФайла + "", , Истина, КодВозврата); // работает
@@ -160,6 +252,24 @@
160252
Иначе // КодВозврата = 1
161253
// Сообщить("=====" + КодВозврата);
162254
КонецЕсли;
255+
Иначе
256+
// // // // // Команда1("oscript", ИмяВременногоФайла, ПолеВвода1, ВыбранныеФайлы[А].Имя, ТестовыйКод);
257+
КодВозврата = Неопределено;
258+
ЗапуститьПриложение("oscript " + ИмяВременногоФайла + "", , Истина, КодВозврата); // работает
259+
Если КодВозврата = 1 Тогда
260+
КаталогНаДиске = Новый Файл(ИмяЛогФайла);
261+
Если Не (КаталогНаДиске.Существует()) Тогда
262+
Возврат;
263+
КонецЕсли;
264+
ТекстДок = Новый ТекстовыйДокумент;
265+
ТекстДок.Прочитать(ИмяЛогФайла, "UTF-8");
266+
СтрЛог = ТекстДок.ПолучитьТекст();
267+
СтрЛог = СтрЛог + "{" + ИмяВременногоФайла + "}";
268+
ТекстДок.УстановитьТекст(СтрЛог);
269+
ТекстДок.Записать(ИмяЛогФайла);
270+
Иначе // КодВозврата = 1
271+
// Сообщить("=====" + КодВозврата);
272+
КонецЕсли;
163273
КонецЕсли;
164274
КонецЕсли;
165275
КонецЦикла;
@@ -187,27 +297,37 @@
187297

188298
Таймер = ТекущаяУниверсальнаяДатаВМиллисекундах();
189299

190-
// // // Попытка
300+
Если СтрНайти((Новый СистемнаяИнформация()).ВерсияОС, "Windows") > 0 Тогда
301+
Вин = Истина;
302+
Иначе
303+
Вин = Ложь;
304+
КонецЕсли;
305+
Если Вин Тогда
191306
КаталогСправки = "C:\444\OneScriptTerminalGui\docs\OSTGui";// без слэша в конце
192307
КаталогБиблиотеки = "C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug";// без слэша в конце
308+
ПутьБиблиотекиФорм = "C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll";// без слэша в конце
193309
КаталогТестов = "C:\444\ТестыTUI\"; // со слэшем в конце
194310
ИмяЛогФайла = "C:\444\ТестыTUI\LogTUI.txt";
195311
ПодключитьВнешнююКомпоненту(КаталогБиблиотеки + "\OneScriptTerminalGui.dll");
196-
// // // Исключение
197-
// // // // КаталогСправки = "/home/vlad/Projects/444";// без слэша
198-
// // // // КаталогБиблиотеки = "/home/vlad/Projects/444/111/OneScriptForms/OneScriptForms/bin/Debug";// без слэша
199-
// // // // КаталогТестов = "/home/vlad/Projects/444/Тесты/"; // со слэшем в конце
200-
// // // // ИмяВременногоФайла = "/home/vlad/Projects/444/gnftsu3o.6rb";
201-
// // // // ПодключитьВнешнююКомпоненту(КаталогБиблиотеки + "/OneScriptForms.dll");
202-
// // // КонецПопытки;
203-
ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll");
312+
Иначе
313+
КаталогСправки = "/home/vlad/Projects/444/OneScriptTerminalGui/docs/OSTGui";// без слэша
314+
КаталогБиблиотеки = "/home/vlad/Projects/444/111/OneScriptTerminalGui/OneScriptTerminalGui/bin/Debug";// без слэша
315+
ПутьБиблиотекиФорм = "/home/vlad/Projects/444/111/OneScriptForms/OneScriptForms/bin/Debug/OneScriptForms.dll";// без слэша в конце
316+
КаталогТестов = "/home/vlad/Projects/444/ТестыTUI/"; // со слэшем в конце
317+
ИмяЛогФайла = "/home/vlad/Projects/444/ТестыTUI/LogTUI.txt";
318+
ПодключитьВнешнююКомпоненту(КаталогБиблиотеки + "/OneScriptTerminalGui.dll");
319+
КонецЕсли;
320+
ПодключитьВнешнююКомпоненту(ПутьБиблиотекиФорм);
321+
// // // // // ПодключитьВнешнююКомпоненту("C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll");
204322
Ф = Новый ФормыДляОдноСкрипта();
205323

206-
Если Ф.ПлатформаWin Тогда
324+
Если Вин Тогда
207325
УдалитьФайлы(КаталогТестов, "*.os");
208326
УдалитьФайлы(ИмяЛогФайла);
209327
Иначе
210328
// УдалитьФайлы("/home/vlad/Projects/444/ТестыTUI", "*.os");
329+
УдалитьФайлы(КаталогТестов, "*.os");
330+
УдалитьФайлы(ИмяЛогФайла);
211331
КонецЕсли;
212332

213333
ТекстДок = Новый ТекстовыйДокумент;

0 commit comments

Comments
 (0)