1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-08-10 22:41:43 +02:00

TCP: Тест сервера

This commit is contained in:
Anton Titovets
2025-01-21 20:09:24 +03:00
parent 3708d3836f
commit 8eafd32765
3 changed files with 45 additions and 13 deletions

View File

@@ -1,4 +1,4 @@
// OneScript: ./OInt/core/Modules/OPI_TCP.os
// OneScript: ./OInt/core/Modules/OPI_TCP.os
// Lib: TCP
// CLI: tcp
@@ -272,7 +272,7 @@
// Структура Из КлючИЗначение - Структура с информацией об успешности запуска
Функция ЗапуститьСервер(Знач TCPСервер) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;
@@ -296,15 +296,17 @@
// Структура Из КлючИЗначение - Структура с идентификатором нового подключения или ошибкой
Функция ОжидатьПодключение(Знач TCPСервер, Знач Таймаут = 0) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;
OPI_ПреобразованиеТипов.ПолучитьЧисло(Таймаут);
НовоеПодключение = TCPСервер.Wait(Таймаут);
Результат = TCPСервер.Wait(Таймаут);
Возврат НовоеПодключение;
ОбработатьРезультат(Результат);
Возврат Результат;
КонецФункции
@@ -320,7 +322,7 @@
// Структура Из КлючИЗначение, ДвоичныеДанные - Двоичные данные при успехе или структура с описанием ошибки
Функция ПолучитьДанные(Знач TCPСервер, Знач IDПодключения, Знач МаксимальныйРазмер = 0) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;
@@ -357,7 +359,7 @@
// Структура Из КлючИЗначение - Информация о выполнении
Функция ОтправитьДанные(Знач TCPСервер, Знач IDПодключения, Знач Данные) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;
@@ -383,7 +385,7 @@
// Структура Из КлючИЗначение - Информация о выполнении
Функция ОтключитьСервер(Знач TCPСервер) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;
@@ -407,7 +409,7 @@
// Структура Из КлючИЗначение - Информация о выполнении
Функция ЗакрытьВходящееСоединение(Знач TCPСервер, Знач IDПодключения) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;
@@ -436,7 +438,7 @@
// Структура Из КлючИЗначение - Информация о выполнении
Функция ПолучитьВходящиеСоединения(Знач TCPСервер) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;
@@ -459,7 +461,7 @@
// Структура Из КлючИЗначение - Информация о выполнении
Функция АктуализироватьВходящиеСоединения(Знач TCPСервер) Экспорт
Если Не OPI_Инструменты.ЭтоСервер(TCPСервер) Тогда
Если Не ЭтоСервер(TCPСервер) Тогда
ВызватьИсключение "Переданное значение не является TCP-сервером!";
КонецЕсли;

View File

@@ -1,4 +1,4 @@
// OneScript: ./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os
// OneScript: ./OInt/tools/Modules/OPI_ПолучениеДанныхТестов.os
// MIT License
@@ -268,6 +268,7 @@
НовыйТест(ТаблицаТестов, "AWS_РаботаСБакетами" , "Работа с бакетами" , S3_);
НовыйТест(ТаблицаТестов, "AWS_РаботаСОбъектами" , "Работа с объектами" , S3_);
НовыйТест(ТаблицаТестов, "TC_Клиент" , "TCP Клиент" , TCP);
НовыйТест(ТаблицаТестов, "TC_Сервер" , "TCP Сервер" , TCP);
НовыйТест(ТаблицаТестов, "SQLL_ОсновныеМетоды" , "Основные методы" , SQLite);
НовыйТест(ТаблицаТестов, "SQLL_ORM" , "ORM" , SQLite);

View File

@@ -1,4 +1,4 @@
// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os
// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os
// MIT License
@@ -2238,6 +2238,14 @@
TCP_ПрочитатьСтроку(ПараметрыТеста);
TCP_ОтправитьСтроку(ПараметрыТеста);
TCP_ОбработатьЗапрос(ПараметрыТеста);
КонецПроцедуры
Процедура TC_Сервер() Экспорт
ПараметрыТеста = Новый Структура;
TCP_ОжидатьПодключение(ПараметрыТеста);
КонецПроцедуры
@@ -16446,6 +16454,27 @@
КонецПроцедуры
Процедура TCP_ОжидатьПодключение(ПараметрыФункции) Экспорт
TCPСервер = OPI_TCP.СоздатьСервер(7788, Истина);
Для Н = 1 По 5 Цикл
НовоеПодключение = OPI_TCP.ОжидатьПодключение(TCPСервер, 20);
Если НовоеПодключение["result"] Тогда
Подключение = НовоеПодключение["connection"];
Иначе
Продолжить;
КонецЕсли;
Ответ = OPI_TCP.ОтправитьДанные(TCPСервер, Подключение, ПолучитьДвоичныеДанныеИзСтроки("Yo"));
Закрытие = OPI_TCP.ЗакрытьВходящееСоединение(TCPСервер, Подключение);
КонецЦикла;
КонецПроцедуры
#КонецОбласти
#Область SQLite