1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-02-10 19:41:26 +02:00

Тесты с сгенерированные gpt 4

This commit is contained in:
alkoleft 2024-03-26 02:09:01 +03:00
parent 253e0e822a
commit a0f3d109a5

View File

@ -22,6 +22,19 @@
ЮТТесты
.ДобавитьТест("ДополнитьСтруктуру")
.ДобавитьТест("ЗначениеСтруктуры")
.ДобавитьТест("ДополнитьМассив")
.ДобавитьТест("СкопироватьРекурсивно")
.ДобавитьТест("СкопироватьСтруктуру")
.ДобавитьТест("СкопироватьСоответствие")
.ДобавитьТест("СкопироватьМассив")
.ДобавитьТест("СкопироватьСписокЗначений")
.ДобавитьТест("ВыгрузитьЗначения")
.ДобавитьТест("ПересечениеМассивов")
.ДобавитьТест("ЗначениеВМассиве")
.ДобавитьТест("ВСоответствие")
.ДобавитьТест("ВСтруктуру")
.ДобавитьТест("ПредставлениеМассива")
;
КонецПроцедуры
@ -68,6 +81,341 @@
КонецПроцедуры
Процедура ЗначениеСтруктуры() Экспорт
ИсходнаяСтруктура = Новый Структура;
ИсходнаяСтруктура.Вставить("Поле1", "Значение1");
ИсходнаяСтруктура.Вставить("Поле2", 4242);
Результат = ЮТКоллекции.ЗначениеСтруктуры(ИсходнаяСтруктура, "Поле1", "ЗначениеПоУмолчанию");
ЮТест.ОжидаетЧто(Результат, "Проверка существующего поля").Равно("Значение1");
Результат = ЮТКоллекции.ЗначениеСтруктуры(ИсходнаяСтруктура, "Поле2", "ЗначениеПоУмолчанию");
ЮТест.ОжидаетЧто(Результат, "Проверка числового поля").Равно(4242);
Результат = ЮТКоллекции.ЗначениеСтруктуры(ИсходнаяСтруктура, "Поле3", "ЗначениеПоУмолчанию");
ЮТест.ОжидаетЧто(Результат, "Проверка несуществующего поля").Равно("ЗначениеПоУмолчанию");
Результат = ЮТКоллекции.ЗначениеСтруктуры(Неопределено, "Поле", "ЗначениеПоУмолчанию");
ЮТест.ОжидаетЧто(Результат, "Проверка вызова функции со значение Неопределено").Равно("ЗначениеПоУмолчанию");
КонецПроцедуры
Процедура ДополнитьМассив() Экспорт
Приемник = Новый Массив;
Источник = Новый Массив;
// Генерируем случайные значения для источника
Для Счетчик = 1 По ЮТест.Данные().СлучайноеЧисло( , 10) Цикл
Источник.Добавить(ЮТест.Данные().СлучайноеЧисло( , 100));
КонецЦикла;
ЮТКоллекции.ДополнитьМассив(Приемник, Источник);
// Проверяем, что все элементы источника были добавлены в приемник
ЮТест.ОжидаетЧто(Приемник).ИмеетДлину(Источник.Количество());
Для Каждого Элемент Из Источник Цикл
ЮТест.ОжидаетЧто(Приемник).Содержит(Элемент);
КонецЦикла;
КонецПроцедуры
Процедура СкопироватьРекурсивно() Экспорт
// Генерируем случайные значения для источника
Источник = Новый Структура;
Источник.Вставить("Число", ЮТест.Данные().СлучайноеЧисло(100));
Источник.Вставить("Строка", ЮТест.Данные().СлучайнаяСтрока());
Источник.Вставить("Дата", ЮТест.Данные().СлучайнаяДата());
// Сохраняем копию источника для последующей проверки
ИсточникКопия = Новый ФиксированнаяСтруктура(Источник);
Приемник = ЮТКоллекции.СкопироватьРекурсивно(Источник);
// Проверяем, что все элементы источника были скопированы в приемник
ЮТест.ОжидаетЧто(Приемник).ИмеетТип("Структура");
Для Каждого Элемент Из ИсточникКопия Цикл
ЮТест.ОжидаетЧто(Приемник).Свойство(Элемент.Ключ).Равно(Элемент.Значение);
КонецЦикла;
// Проверяем, что приемник и источник не ссылаются на один и тот же объект
Источник.Вставить("НовоеЗначение", ЮТест.Данные().СлучайнаяСтрока());
ЮТест.ОжидаетЧто(Приемник).НеСодержит("НовоеЗначение");
// Проверяем работу функции с массивами
ИсточникМассив = Новый Массив;
Для Счетчик = 1 По ЮТест.Данные().СлучайноеЧисло(, 10) Цикл
ИсточникМассив.Добавить(ЮТест.Данные().СлучайноеЧисло(100));
КонецЦикла;
ПриемникМассив = ЮТКоллекции.СкопироватьРекурсивно(ИсточникМассив);
ЮТест.ОжидаетЧто(ПриемникМассив).ИмеетТип("Массив");
Для Каждого Элемент Из ИсточникМассив Цикл
ЮТест.ОжидаетЧто(ПриемникМассив).Содержит(Элемент);
КонецЦикла;
// Проверяем, что приемник и источник не ссылаются на один и тот же объект
ИсточникМассив.Добавить(ЮТест.Данные().СлучайноеЧисло(100));
ЮТест.ОжидаетЧто(ПриемникМассив).НеСодержит(ИсточникМассив[ИсточникМассив.Количество() - 1]);КонецПроцедуры
Процедура СкопироватьСтруктуру() Экспорт
// Генерируем случайные значения для источника
Источник = Новый Структура;
Источник.Вставить("Число", ЮТест.Данные().СлучайноеЧисло(100));
Источник.Вставить("Строка", ЮТест.Данные().СлучайнаяСтрока());
Источник.Вставить("Дата", ЮТест.Данные().СлучайнаяДата());
// Сохраняем копию источника для последующей проверки
ИсточникКопия = Новый ФиксированнаяСтруктура(Источник);
Приемник = ЮТКоллекции.СкопироватьСтруктуру(Источник);
// Проверяем, что все элементы источника были скопированы в приемник
ЮТест.ОжидаетЧто(Приемник).ИмеетТип("Структура");
Для Каждого Элемент Из ИсточникКопия Цикл
ЮТест.ОжидаетЧто(Приемник).Свойство(Элемент.Ключ).Равно(Элемент.Значение);
КонецЦикла;
// Проверяем, что источник не изменился после вызова функции
ЮТест.ОжидаетЧто(Источник).ИмеетТип("Структура");
Для Каждого Элемент Из ИсточникКопия Цикл
ЮТест.ОжидаетЧто(Источник).Свойство(Элемент.Ключ).Равно(Элемент.Значение);
КонецЦикла;
// Проверяем, что приемник и источник не ссылаются на один и тот же объект
Источник.Вставить("НовоеЗначение", ЮТест.Данные().СлучайнаяСтрока());
ЮТест.ОжидаетЧто(Приемник).НеСодержит("НовоеЗначение");
// Проверяем работу функции со вложенными структурами
ВложеннаяСтруктура = Новый Структура;
ВложеннаяСтруктура.Вставить("ВложенноеЧисло", ЮТест.Данные().СлучайноеЧисло(100));
Источник.Вставить("ВложеннаяСтруктура", ВложеннаяСтруктура);
Приемник = ЮТКоллекции.СкопироватьСтруктуру(Источник);
ЮТест.ОжидаетЧто(Приемник).Свойство("ВложеннаяСтруктура").ИмеетТип("Структура");
ЮТест.ОжидаетЧто(Приемник.ВложеннаяСтруктура).Свойство("ВложенноеЧисло").Равно(ВложеннаяСтруктура.ВложенноеЧисло);
// Проверяем, что приемник и источник не ссылаются на один и тот же объект
ВложеннаяСтруктура.Вставить("НовоеВложенноеЗначение", ЮТест.Данные().СлучайнаяСтрока());
ЮТест.ОжидаетЧто(Приемник.ВложеннаяСтруктура).НеСодержит("НовоеВложенноеЗначение");
КонецПроцедуры
Процедура СкопироватьСоответствие() Экспорт
Источник = Новый Соответствие;
Источник.Вставить(ЮТест.Данные().СлучайнаяСтрока(), ЮТест.Данные().СлучайнаяСтрока());
Источник.Вставить(ЮТест.Данные().СлучайнаяСтрока(), ЮТест.Данные().СлучайнаяСтрока());
Источник.Вставить(ЮТест.Данные().СлучайнаяСтрока(), ЮТест.Данные().СлучайнаяСтрока());
Результат = ЮТКоллекции.СкопироватьСоответствие(Источник);
ЮТест.ОжидаетЧто(Результат)
.Равно(Источник)
.ИмеетТип("Соответствие")
.ИмеетДлину(3);
КонецПроцедуры
Процедура СкопироватьМассив() Экспорт
Источник = Новый Массив;
Источник.Добавить(ЮТест.Данные().СлучайнаяСтрока());
Источник.Добавить(ЮТест.Данные().СлучайноеЧисло());
Источник.Добавить(ЮТест.Данные().СлучайнаяДата());
Результат = ЮТКоллекции.СкопироватьМассив(Источник);
ЮТест.ОжидаетЧто(Результат)
.Равно(Источник)
.ИмеетТип("Массив")
.ИмеетДлину(Источник.Количество());
КонецПроцедуры
Процедура СкопироватьСписокЗначений() Экспорт
Источник = Новый СписокЗначений;
Источник.Добавить(ЮТест.Данные().СлучайнаяСтрока(), "Представление Строка");
Источник.Добавить(ЮТест.Данные().СлучайноеЧисло(), "Представление Число");
Источник.Добавить(ЮТест.Данные().СлучайнаяДата(), "Представление Дата");
Результат = ЮТКоллекции.СкопироватьСписокЗначений(Источник);
ЮТест.ОжидаетЧто(Результат, "Список значений после копирования")
.Равно(Источник)
.ИмеетТип("СписокЗначений")
.ИмеетДлину(Источник.Количество());
Для Инд = 0 По Результат.Количество() - 1 Цикл
ЮТест.ОжидаетЧто(Результат[Инд], "Элемент списка значений после копирования")
.Свойство("Значение").Равно(Источник[Инд].Значение)
.Свойство("Представление").Заполнено();
КонецЦикла;
КонецПроцедуры
Процедура ВыгрузитьЗначения() Экспорт
Коллекция = Новый Массив;
Коллекция.Добавить(Новый Структура("ИмяРеквизита", ЮТест.Данные().СлучайнаяСтрока()));
Коллекция.Добавить(Новый Структура("ИмяРеквизита", ЮТест.Данные().СлучайнаяСтрока()));
Коллекция.Добавить(Новый Структура("ИмяРеквизита", ЮТест.Данные().СлучайнаяСтрока()));
Результат = ЮТКоллекции.ВыгрузитьЗначения(Коллекция, "ИмяРеквизита");
ЮТест.ОжидаетЧто(Результат, "Массив значений после выгрузки")
.ИмеетТип("Массив")
.ИмеетДлину(Коллекция.Количество());
Для Инд = 0 По Результат.Количество() - 1 Цикл
ЮТест.ОжидаетЧто(Результат).Элемент(Инд).Равно(Коллекция[Инд].ИмяРеквизита);
КонецЦикла;
КонецПроцедуры
Процедура ПересечениеМассивов() Экспорт
Коллекция1 = Новый Массив;
Коллекция1.Добавить(ЮТест.Данные().СлучайнаяСтрока());
Коллекция1.Добавить(ЮТест.Данные().СлучайнаяСтрока());
Коллекция1.Добавить(ЮТест.Данные().СлучайнаяСтрока());
Коллекция2 = Новый Массив;
Коллекция2.Добавить(Коллекция1[0]);
Коллекция2.Добавить(ЮТест.Данные().СлучайнаяСтрока());
Коллекция2.Добавить(ЮТест.Данные().СлучайнаяСтрока());
Результат = ЮТКоллекции.ПересечениеМассивов(Коллекция1, Коллекция2);
ЮТест.ОжидаетЧто(Результат, "Массив значений после пересечения")
.ИмеетТип("Массив")
.ИмеетДлину(1)
.Элемент(0).Равно(Коллекция1[0]);
КонецПроцедуры
Процедура ЗначениеВМассиве() Экспорт
Значение1 = ЮТест.Данные().СлучайнаяСтрока();
Значение2 = ЮТест.Данные().СлучайнаяСтрока();
Значение3 = ЮТест.Данные().СлучайнаяСтрока();
Значение4 = ЮТест.Данные().СлучайнаяСтрока();
Значение5 = ЮТест.Данные().СлучайнаяСтрока();
Значение6 = ЮТест.Данные().СлучайнаяСтрока();
Значение7 = ЮТест.Данные().СлучайнаяСтрока();
Значение8 = ЮТест.Данные().СлучайнаяСтрока();
Значение9 = ЮТест.Данные().СлучайнаяСтрока();
Значение10 = ЮТест.Данные().СлучайнаяСтрока();
Результат = ЮТКоллекции.ЗначениеВМассиве(Значение1, Значение2, Значение3, Значение4, Значение5, Значение6, Значение7, Значение8, Значение9, Значение10);
ЮТест.ОжидаетЧто(Результат, "Массив значений после добавления")
.ИмеетТип("Массив")
.ИмеетДлину(10)
.Элемент(0).Равно(Значение1)
.Элемент(1).Равно(Значение2)
.Элемент(2).Равно(Значение3)
.Элемент(3).Равно(Значение4)
.Элемент(4).Равно(Значение5)
.Элемент(5).Равно(Значение6)
.Элемент(6).Равно(Значение7)
.Элемент(7).Равно(Значение8)
.Элемент(8).Равно(Значение9)
.Элемент(9).Равно(Значение10);
КонецПроцедуры
Процедура ВСоответствие() Экспорт
Коллекция = Новый Массив;
Ключ1 = ЮТест.Данные().СлучайнаяСтрока();
Значение1 = ЮТест.Данные().СлучайнаяСтрока();
Ключ2 = ЮТест.Данные().СлучайнаяСтрока();
Значение2 = ЮТест.Данные().СлучайнаяСтрока();
Ключ3 = ЮТест.Данные().СлучайнаяСтрока();
Значение3 = ЮТест.Данные().СлучайнаяСтрока();
Коллекция.Добавить(Новый Структура("Ключ, Значение", Ключ1, Значение1));
Коллекция.Добавить(Новый Структура("Ключ, Значение", Ключ2, Значение2));
Коллекция.Добавить(Новый Структура("Ключ, Значение", Ключ3, Значение3));
Результат = ЮТКоллекции.ВСоответствие(Коллекция, "Ключ", "Значение");
ЮТест.ОжидаетЧто(Результат, "Соответствие после преобразования")
.ИмеетТип("Соответствие")
.ИмеетДлину(Коллекция.Количество())
.Элемент(Ключ1).Равно(Значение1)
.Элемент(Ключ2).Равно(Значение2)
.Элемент(Ключ3).Равно(Значение3);
// Проверка когда последний параметр не указан
Результат = ЮТКоллекции.ВСоответствие(Коллекция, "Ключ");
ЮТест.ОжидаетЧто(Результат, "Соответствие после преобразования без указания последнего параметра")
.ИмеетТип("Соответствие")
.ИмеетДлину(Коллекция.Количество())
.Элемент(Ключ1).Равно(Коллекция[0])
.Элемент(Ключ2).Равно(Коллекция[1])
.Элемент(Ключ3).Равно(Коллекция[2]);
КонецПроцедуры
Процедура ВСтруктуру() Экспорт
Коллекция = Новый Массив;
Ключ1 = ЮТест.Данные().СлучайнаяСтрока();
Значение1 = ЮТест.Данные().СлучайнаяСтрока();
Ключ2 = ЮТест.Данные().СлучайнаяСтрока();
Значение2 = ЮТест.Данные().СлучайнаяСтрока();
Ключ3 = ЮТест.Данные().СлучайнаяСтрока();
Значение3 = ЮТест.Данные().СлучайнаяСтрока();
Коллекция.Добавить(Новый Структура("Ключ, Значение", Ключ1, Значение1));
Коллекция.Добавить(Новый Структура("Ключ, Значение", Ключ2, Значение2));
Коллекция.Добавить(Новый Структура("Ключ, Значение", Ключ3, Значение3));
Результат = ЮТКоллекции.ВСтруктуру(Коллекция, "Ключ", "Значение");
ЮТест.ОжидаетЧто(Результат, "Структура после преобразования")
.ИмеетТип("Структура")
.ИмеетДлину(Коллекция.Количество())
.Свойство(Ключ1).Равно(Значение1)
.Свойство(Ключ2).Равно(Значение2)
.Свойство(Ключ3).Равно(Значение3);
// Проверка когда последний параметр не указан
Результат = ЮТКоллекции.ВСтруктуру(Коллекция, "Ключ");
ЮТест.ОжидаетЧто(Результат, "Структура после преобразования без указания последнего параметра")
.ИмеетТип("Структура")
.ИмеетДлину(Коллекция.Количество())
.Свойство(Ключ1).Равно(Коллекция[0])
.Свойство(Ключ2).Равно(Коллекция[1])
.Свойство(Ключ3).Равно(Коллекция[2]);
КонецПроцедуры
Процедура ПредставлениеМассива() Экспорт
Данные = Новый Массив;
Значение1 = ЮТест.Данные().СлучайнаяСтрока();
Значение2 = ЮТест.Данные().СлучайнаяСтрока();
Значение3 = ЮТест.Данные().СлучайнаяСтрока();
Данные.Добавить(Значение1);
Данные.Добавить(Значение2);
Данные.Добавить(Значение3);
Результат = ЮТКоллекции.ПредставлениеМассива(Данные);
ОжидаемоеПредставление = СтрШаблон("[%1, %2, %3]", Значение1, Значение2, Значение3);
ЮТест.ОжидаетЧто(Результат, "Представление массива")
.Равно(ОжидаемоеПредставление);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции