Skip to content

Commit a3ba731

Browse files
committed
Необязательное указание схемы URL (#4)
1 parent 1420dd2 commit a3ba731

File tree

3 files changed

+13
-19
lines changed

3 files changed

+13
-19
lines changed

packagedef

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Описание.Имя("1connector")
2-
.Версия("1.0.2")
2+
.Версия("1.0.3")
33
.Автор("Vladimir Bondarevskiy")
44
.АдресАвтора("vbondarevsky@gmail.com")
55
.Описание("Коннектор: удобный HTTP-клиент для OScript")

src/internal/Модули/КоннекторHTTPСлужебный.os

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -266,10 +266,6 @@
266266

267267
СтруктураURL = РазобратьURL(URL);
268268

269-
Если Не ЗначениеЗаполнено(СтруктураURL.Схема) Тогда
270-
ВызватьИсключение("Ошибка разбора URL: пропущена схема");
271-
КонецЕсли;
272-
273269
ПодготовленныйURL = СтруктураURL.Схема + "://";
274270
Если ЗначениеЗаполнено(СтруктураURL.Аутентификация.Пользователь) Тогда
275271
ПодготовленныйURL = ПодготовленныйURL
@@ -966,6 +962,9 @@
966962
КонецЕсли;
967963
КонецЦикла;
968964

965+
Если Не ЗначениеЗаполнено(Схема) Тогда
966+
Схема = "http";
967+
КонецЕсли;
969968
Результат = Новый Структура;
970969
Результат.Вставить("Схема", Схема);
971970
Результат.Вставить("Аутентификация", Аутентификация);

tests/connector-test.os

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
Функция ПолучитьСписокТестов(МенеджерТестирования) Экспорт
55

66
МассивТестов = Новый Массив;
7+
МассивТестов.Добавить("ТестДолжен_ПроверитьЧтоРаботаютЗапросыБезУказанияСхемыURL");
78
МассивТестов.Добавить("ТестДолжен_ПроверитьЧтоРаботаетПередачаПараметровВСтрокуЗапроса");
89
МассивТестов.Добавить("ТестДолжен_ПроверитьЧтоРаботаетПередачаПараметровВСтрокуЗапросаКомбинированный");
910
МассивТестов.Добавить("ТестДолжен_ПроверитьЧтоРаботаетПолучениеДвоичныхДанныхИзОтвета");
@@ -35,22 +36,16 @@
3536

3637
КонецФункции
3738

39+
Процедура ТестДолжен_ПроверитьЧтоРаботаютЗапросыБезУказанияСхемыURL() Экспорт
40+
41+
42+
43+
КонецПроцедуры
44+
3845
Процедура ТестДолжен_ПроверитьЧтоРаботаетПередачаПараметровВСтрокуЗапроса() Экспорт
3946

40-
ПараметрыЗапроса = Новый Структура;
41-
ПараметрыЗапроса.Вставить("name", СтрРазделить("Иванов,Петров", ","));
42-
ПараметрыЗапроса.Вставить("salary", Формат(100000, "ЧГ="));
43-
44-
Ответ = КоннекторHTTP.Get("https://httpbin.org/anything/params", ПараметрыЗапроса);
45-
Результат = Ответ.Json();
46-
47-
Ожидаем.Что(Ответ.URL).Равно("https://httpbin.org/anything/params?name=%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2&name=%D0%9F%D0%B5%D1%82%D1%80%D0%BE%D0%B2&salary=100000");
48-
Ожидаем.Что(Результат).ИмеетТип("Соответствие");
49-
Ожидаем.Что(Результат["url"]).Равно("https://httpbin.org/anything/params?name=Иванов&name=Петров&salary=100000");
50-
Ожидаем.Что(Результат["args"]).ИмеетТип("Соответствие");
51-
Ожидаем.Что(Результат["args"]["salary"]).Равно("100000");
52-
Ожидаем.Что(Результат["args"]["name"]).ИмеетТип("Массив");
53-
Ожидаем.Что(СтрСоединить(Результат["args"]["name"], ",")).Равно("Иванов,Петров");
47+
Результат = КоннекторHTTP.Get("httpbin.org/get").Json();
48+
Ожидаем.Что(Результат["url"]).Равно("http://httpbin.org/get");
5449

5550
КонецПроцедуры
5651

0 commit comments

Comments
 (0)