|
3 | 3 | // КаталогБиблиотеки задан как "C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug". |
4 | 4 | Перем Ф, ИмяВременногоФайла, Таймер, ПолеВвода1, Форма1; |
5 | 5 | Перем СписокОшибок, КаталогСправки, КаталогБиблиотеки, КаталогТестов, ИмяЛогФайла; |
| 6 | +Перем Вин; |
6 | 7 |
|
7 | 8 | Функция СтрНайтиМежду(СтрПараметр, Фрагмент1 = Неопределено, Фрагмент2 = Неопределено, ИсключитьФрагменты = Истина, БезНаложения = Истина) |
8 | 9 | //Стр - исходная строка |
|
54 | 55 | КонецФункции |
55 | 56 |
|
56 | 57 | Процедура ТестированиеКодов() |
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 | + |
62 | 129 | Для А = 0 По ВыбранныеФайлы.ВГраница() Цикл |
63 | 130 | Сообщить(" (" + Ф.Математика().Окр(((ТекущаяУниверсальнаяДатаВМиллисекундах() - Таймер)/1000)/60, 2) + " мин." + " " + А + " из " + |
64 | 131 | ВыбранныеФайлы.ВГраница() + ") " + ВыбранныеФайлы[А].ПолноеИмя); |
|
67 | 134 | // Если Не (СтрНайти(ВыбранныеФайлы[А].ПолноеИмя, "CircularProgressBar") > 0) Тогда |
68 | 135 | // Продолжить; |
69 | 136 | // КонецЕсли; |
| 137 | + |
| 138 | + // Пропустить класс |
| 139 | + // Если (СтрНайти(ВыбранныеФайлы[А].ПолноеИмя, "MessageBoxInterval") > 0) |
| 140 | + // или (СтрНайти(ВыбранныеФайлы[А].ПолноеИмя, "ToplevelMouseEnterEvent") > 0) |
| 141 | + // Тогда |
| 142 | + // Продолжить; |
| 143 | + // КонецЕсли; |
70 | 144 |
|
71 | 145 | ТекстДок = Новый ТекстовыйДокумент; |
72 | 146 | ТекстДок.Прочитать(ВыбранныеФайлы[А].ПолноеИмя); |
|
87 | 161 | Если Не (СокрЛП(ТестовыйКод) = "") Тогда |
88 | 162 | // Заменим Сообщить на ТФ.ДобавитьВесьТекст |
89 | 163 | ПодстрокаПоиска = "Сообщить(?("; |
90 | | - ПодстрокаЗамены = "ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""\LogTUI.txt"", (?("; |
| 164 | + Если Вин Тогда |
| 165 | + ПодстрокаЗамены = "ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""\LogTUI.txt"", (?("; |
| 166 | + Иначе |
| 167 | + ПодстрокаЗамены = "ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""/LogTUI.txt"", (?("; |
| 168 | + КонецЕсли; |
91 | 169 | ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены); |
92 | 170 |
|
93 | 171 | ПодстрокаПоиска = """ + "" "" + ТекущаяДата() + Символы.ПС);"; |
|
98 | 176 | Голова = "Попытка |
99 | 177 | | |
100 | 178 | |"; |
101 | | - Хвост = " |
102 | | - |Исключение |
103 | | - | ИнформацияОбОшибке1 = ИнформацияОбОшибке(); |
104 | | - | Ошибка = ""{" + Заголовок + " Модуль "" + ИнформацияОбОшибке1.ИмяМодуля + "" / Ошибка в строке: "" + ИнформацияОбОшибке1.НомерСтроки + "" / "" + ИнформацияОбОшибке1.Описание + ""}""; |
105 | | - | ТФ.ДобавитьВесьТекст(Новый Файл(ТекущийСценарий().Источник).Путь + ""\LogTUI.txt"", Ошибка + Символы.ПС); |
106 | | - |КонецПопытки; |
107 | | - |"; |
108 | 179 |
|
| 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 | + КонецЕсли; |
109 | 197 |
|
110 | 198 | ПодстрокаПоиска = "ПодключитьВнешнююКомпоненту"; |
111 | 199 | ПодстрокаЗамены = Голова + " |
|
117 | 205 | // ТестовыйКод = Голова + ТестовыйКод + Хвост; |
118 | 206 | ТестовыйКод = ТестовыйКод + Хвост; |
119 | 207 |
|
| 208 | + Если Не Вин Тогда |
| 209 | + ПодстрокаПоиска = "ПодключитьВнешнююКомпоненту(""C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug\"; |
| 210 | + ПодстрокаЗамены = "ПодключитьВнешнююКомпоненту(""/home/vlad/Projects/444/111/OneScriptTerminalGui/OneScriptTerminalGui/bin/Debug/"; |
| 211 | + ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены); |
| 212 | + КонецЕсли; |
| 213 | + |
120 | 214 | ТекстДокХХХ = Новый ТекстовыйДокумент; |
121 | 215 |
|
122 | 216 | ИмяВременногоФайла = КаталогТестов + СтрЗаменить(ВыбранныеФайлы[А].Имя, ".html", "") + "-код.os"; |
123 | 217 | ИмяВременногоФайла = СтрЗаменить(ИмяВременногоФайла, "OSTGui.", ""); |
124 | 218 | ТекстДокХХХ.Записать(ИмяВременногоФайла, "UTF-8"); |
125 | 219 |
|
126 | | - // Если Не Ф.ПлатформаWin Тогда |
| 220 | + // Если Вин Тогда |
127 | 221 | // ПодстрокаПоиска = "C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll"; |
128 | 222 | // ПодстрокаЗамены = "/home/vlad/Projects/444/111/OneScriptForms/OneScriptForms/bin/Debug/OneScriptForms.dll"; |
129 | 223 | // ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены); |
130 | 224 | // КонецЕсли; |
131 | 225 |
|
132 | | - // Если Не Ф.ПлатформаWin Тогда |
| 226 | + // Если Вин Тогда |
133 | 227 | // ПодстрокаПоиска = "ПолучитьИмяВременногоФайла()"; |
134 | 228 | // ПодстрокаЗамены = """/home/vlad/Projects/444/gnftsu3o.6rb"""; |
135 | 229 | // ТестовыйКод = СтрЗаменить(ТестовыйКод, ПодстрокаПоиска, ПодстрокаЗамены); |
|
140 | 234 | ТекстДокХХХ.Записать(ИмяВременногоФайла, "UTF-8"); |
141 | 235 | Форма1.Фокус(); |
142 | 236 | // Ф.ПередатьУправление(); |
143 | | - Если (Не Ф.ПлатформаWin) Тогда |
144 | | - // // // // // Команда1("oscript", ИмяВременногоФайла, ПолеВвода1, ВыбранныеФайлы[А].Имя, ТестовыйКод); |
145 | | - Иначе |
| 237 | + Если Вин Тогда |
146 | 238 | // ЗапуститьПриложение(<СтрокаКоманды>, <ТекущийКаталог>, <ДождатьсяЗавершения>, <КодВозврата>) |
147 | 239 | КодВозврата = Неопределено; |
148 | 240 | ЗапуститьПриложение("" + ИмяВременногоФайла + "", , Истина, КодВозврата); // работает |
|
160 | 252 | Иначе // КодВозврата = 1 |
161 | 253 | // Сообщить("=====" + КодВозврата); |
162 | 254 | КонецЕсли; |
| 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 | + КонецЕсли; |
163 | 273 | КонецЕсли; |
164 | 274 | КонецЕсли; |
165 | 275 | КонецЦикла; |
|
187 | 297 |
|
188 | 298 | Таймер = ТекущаяУниверсальнаяДатаВМиллисекундах(); |
189 | 299 |
|
190 | | -// // // Попытка |
| 300 | +Если СтрНайти((Новый СистемнаяИнформация()).ВерсияОС, "Windows") > 0 Тогда |
| 301 | + Вин = Истина; |
| 302 | +Иначе |
| 303 | + Вин = Ложь; |
| 304 | +КонецЕсли; |
| 305 | +Если Вин Тогда |
191 | 306 | КаталогСправки = "C:\444\OneScriptTerminalGui\docs\OSTGui";// без слэша в конце |
192 | 307 | КаталогБиблиотеки = "C:\444\111\OneScriptTerminalGui\OneScriptTerminalGui\bin\Debug";// без слэша в конце |
| 308 | + ПутьБиблиотекиФорм = "C:\444\111\OneScriptForms\OneScriptForms\bin\Debug\OneScriptForms.dll";// без слэша в конце |
193 | 309 | КаталогТестов = "C:\444\ТестыTUI\"; // со слэшем в конце |
194 | 310 | ИмяЛогФайла = "C:\444\ТестыTUI\LogTUI.txt"; |
195 | 311 | ПодключитьВнешнююКомпоненту(КаталогБиблиотеки + "\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"); |
204 | 322 | Ф = Новый ФормыДляОдноСкрипта(); |
205 | 323 |
|
206 | | -Если Ф.ПлатформаWin Тогда |
| 324 | +Если Вин Тогда |
207 | 325 | УдалитьФайлы(КаталогТестов, "*.os"); |
208 | 326 | УдалитьФайлы(ИмяЛогФайла); |
209 | 327 | Иначе |
210 | 328 | // УдалитьФайлы("/home/vlad/Projects/444/ТестыTUI", "*.os"); |
| 329 | + УдалитьФайлы(КаталогТестов, "*.os"); |
| 330 | + УдалитьФайлы(ИмяЛогФайла); |
211 | 331 | КонецЕсли; |
212 | 332 |
|
213 | 333 | ТекстДок = Новый ТекстовыйДокумент; |
|
0 commit comments