From ad07d7e6b0b969f4ab1579c092976a6b98c23319 Mon Sep 17 00:00:00 2001 From: "a.sosnoviy" Date: Sat, 19 Oct 2024 20:32:13 +0300 Subject: [PATCH 1/4] =?UTF-8?q?fluent=20=D0=B2=20=D1=81=D0=BE=D0=B2=D0=B5?= =?UTF-8?q?=D1=82=D0=94=D1=80=D1=83=D0=B3=D0=BE=D0=B3=D0=BE=D0=9C=D0=B0?= =?UTF-8?q?=D1=81=D1=82=D0=B5=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...0\260\321\201\321\202\320\265\321\200\320\260.os" | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" index 11e0c50..a80b7b1 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" @@ -27,12 +27,13 @@ // НовоеЗначение - Соответствие - устанавливаемые значения деталек. // // Возвращаемое значение: -// Соответствие - Текущее установленное значение. +// Соответствие, СоветДругогоМастера - Текущее установленное значение для гетера, ЭтотОбъект для сеттера. // Функция ЗначенияДеталек(НовоеЗначение = Неопределено) Экспорт Если НовоеЗначение <> Неопределено Тогда ЗначенияДеталек = НовоеЗначение; + Возврат ЭтотОбъект; КонецЕсли; Возврат ЗначенияДеталек; @@ -45,12 +46,13 @@ // НовоеЗначение - Строка - устанавливаемый префикс переменных среды. // // Возвращаемое значение: -// Строка - Текущее установленное значение. +// Строка, СоветДругогоМастера - Текущее установленное значение для гетера, ЭтотОбъект для сеттера. // Функция ПрефиксПеременныхСреды(НовоеЗначение = Неопределено) Экспорт Если НовоеЗначение <> Неопределено Тогда ПрефиксПеременныхСреды = НовоеЗначение; + Возврат ЭтотОбъект; КонецЕсли; Возврат ПрефиксПеременныхСреды; @@ -63,12 +65,13 @@ // НовоеЗначение - Строка - устанавливаемое имя файла. // // Возвращаемое значение: -// Строка - Текущее установленное значение. +// Строка, СоветДругогоМастера - Текущее установленное значение для гетера, ЭтотОбъект для сеттера. // Функция ИмяФайлаСоЗначениямиДеталек(НовоеЗначение = Неопределено) Экспорт Если НовоеЗначение <> Неопределено Тогда ИмяФайлаСоЗначениямиДеталек = НовоеЗначение; + Возврат ЭтотОбъект; КонецЕсли; Возврат ИмяФайлаСоЗначениямиДеталек; @@ -81,12 +84,13 @@ // НовоеЗначение - Строка - устанавливаемый путь к каталогу. // // Возвращаемое значение: -// Строка - Текущее установленное значение. +// Строка, СоветДругогоМастера - Текущее установленное значение для гетера, ЭтотОбъект для сеттера. // Функция ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек(НовоеЗначение = Неопределено) Экспорт Если НовоеЗначение <> Неопределено Тогда ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек = НовоеЗначение; + Возврат ЭтотОбъект; КонецЕсли; Возврат ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек; From d250eb045d5a7e3751edc58c20db4701de1a9d5a Mon Sep 17 00:00:00 2001 From: "a.sosnoviy" Date: Sat, 19 Oct 2024 20:50:43 +0300 Subject: [PATCH 2/4] =?UTF-8?q?=D0=A2=D0=B5=D1=81=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\264\320\265\320\273\320\272\320\260.os" | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git "a/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" "b/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" index 2c3f239..9523b53 100644 --- "a/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" +++ "b/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" @@ -390,6 +390,31 @@ КонецПроцедуры +&Тест +Процедура ЗначениеДеталькиМожноПереопределитьФлюентом() Экспорт + + // Дано + ЗначенияДеталек = Новый Соответствие(); + ЗначенияДеталек.Вставить("Моя", Новый Соответствие()); + ЗначенияДеталек["Моя"].Вставить("Настройка", "Переопределенное значение"); + + Совет = Новый СоветДругогоМастера() + .ЗначенияДеталек(ЗначенияДеталек) + .ПрефиксПеременныхСреды("TEST") + .ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек("src") + .ИмяФайлаСоЗначениямиДеталек(""); + + Поделка = Новый Поделка(Совет); + Поделка.ЗапуститьПриложение(); + + // Когда + Желудь = Поделка.НайтиЖелудь("ЖелудьСДеталькойИзСоответствия"); + + // Тогда + Ожидаем.Что(Желудь.Деталька, "Хитрая настройка не прочиталась").Равно("Переопределенное значение"); + +КонецПроцедуры + &Тест Процедура НапильникПолучаетЖелудьЧерезКонструктор() Экспорт From 867dcba29ac4615d89190662281afef6a3a5e836 Mon Sep 17 00:00:00 2001 From: sfaqer Date: Sun, 20 Oct 2024 11:56:39 +1000 Subject: [PATCH 3/4] =?UTF-8?q?=D0=9F=D0=B5=D1=80=D0=B5=D1=80=D0=B0=D0=B1?= =?UTF-8?q?=D0=BE=D1=82=D0=B0=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B?= =?UTF-8?q?=20=D0=BF=D0=BE=20=D1=81=D0=BE=D0=B2=D0=B5=D1=82=D1=83=20=D0=B4?= =?UTF-8?q?=D1=80=D1=83=D0=B3=D0=BE=D0=B3=D0=BE=20=D0=BC=D0=B0=D1=81=D1=82?= =?UTF-8?q?=D0=B5=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\264\320\265\320\273\320\272\320\260.os" | 25 --- ...21\201\321\202\320\265\321\200\320\260.os" | 180 ++++++++++++++++++ 2 files changed, 180 insertions(+), 25 deletions(-) create mode 100644 "tests/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" diff --git "a/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" "b/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" index 9523b53..2c3f239 100644 --- "a/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" +++ "b/tests/\320\237\320\276\320\264\320\265\320\273\320\272\320\260.os" @@ -390,31 +390,6 @@ КонецПроцедуры -&Тест -Процедура ЗначениеДеталькиМожноПереопределитьФлюентом() Экспорт - - // Дано - ЗначенияДеталек = Новый Соответствие(); - ЗначенияДеталек.Вставить("Моя", Новый Соответствие()); - ЗначенияДеталек["Моя"].Вставить("Настройка", "Переопределенное значение"); - - Совет = Новый СоветДругогоМастера() - .ЗначенияДеталек(ЗначенияДеталек) - .ПрефиксПеременныхСреды("TEST") - .ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек("src") - .ИмяФайлаСоЗначениямиДеталек(""); - - Поделка = Новый Поделка(Совет); - Поделка.ЗапуститьПриложение(); - - // Когда - Желудь = Поделка.НайтиЖелудь("ЖелудьСДеталькойИзСоответствия"); - - // Тогда - Ожидаем.Что(Желудь.Деталька, "Хитрая настройка не прочиталась").Равно("Переопределенное значение"); - -КонецПроцедуры - &Тест Процедура НапильникПолучаетЖелудьЧерезКонструктор() Экспорт diff --git "a/tests/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" "b/tests/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" new file mode 100644 index 0000000..7f61afa --- /dev/null +++ "b/tests/\320\241\320\276\320\262\320\265\321\202\320\224\321\200\321\203\320\263\320\276\320\263\320\276\320\234\320\260\321\201\321\202\320\265\321\200\320\260.os" @@ -0,0 +1,180 @@ +#Использовать asserts +#Использовать ".." + +Перем Рефлектор; // Рефлектор + +&Тест +Процедура ЗначенияДеталек_Получить() Экспорт + + // Дано + + ЗначенияДеталек = Новый Соответствие; + ЗначенияДеталек.Вставить("Ключ", "Значение"); + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + Рефлектор.УстановитьСвойство(СоветДругогоМастера, "ЗначенияДеталек", ЗначенияДеталек); + + // Когда + + Результат = СоветДругогоМастера.ЗначенияДеталек(); + + // Тогда + + Ожидаем.Что(Результат).Равно(ЗначенияДеталек); + +КонецПроцедуры + +&Тест +Процедура ЗначенияДеталек_Установить() Экспорт + + // Дано + + ЗначенияДеталек = Новый Соответствие; + ЗначенияДеталек.Вставить("Ключ", "Значение"); + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + // Когда + + Результат = СоветДругогоМастера.ЗначенияДеталек(ЗначенияДеталек); + + // Тогда + + Ожидаем.Что(Результат).Равно(СоветДругогоМастера); + Ожидаем.Что(Рефлектор.ПолучитьСвойство(СоветДругогоМастера, "ЗначенияДеталек")).Равно(ЗначенияДеталек); + +КонецПроцедуры + +&Тест +Процедура ПрефиксПеременныхСреды_Получить() Экспорт + + // Дано + + ПрефиксПеременныхСреды = "Тест"; + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + Рефлектор.УстановитьСвойство(СоветДругогоМастера, "ПрефиксПеременныхСреды", ПрефиксПеременныхСреды); + + // Когда + + Результат = СоветДругогоМастера.ПрефиксПеременныхСреды(); + + // Тогда + + Ожидаем.Что(Результат).Равно(ПрефиксПеременныхСреды); + +КонецПроцедуры + +&Тест +Процедура ПрефиксПеременныхСреды_Установить() Экспорт + + // Дано + + ПрефиксПеременныхСреды = "Тест"; + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + // Когда + + Результат = СоветДругогоМастера.ПрефиксПеременныхСреды(ПрефиксПеременныхСреды); + + // Тогда + + Ожидаем.Что(Результат).Равно(СоветДругогоМастера); + Ожидаем.Что(Рефлектор.ПолучитьСвойство(СоветДругогоМастера, "ПрефиксПеременныхСреды")).Равно(ПрефиксПеременныхСреды); + +КонецПроцедуры + +&Тест +Процедура ИмяФайлаСоЗначениямиДеталек_Получить() Экспорт + + // Дано + + ИмяФайлаСоЗначениямиДеталек = "/path/to/file"; + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + Рефлектор.УстановитьСвойство(СоветДругогоМастера, "ИмяФайлаСоЗначениямиДеталек", ИмяФайлаСоЗначениямиДеталек); + + // Когда + + Результат = СоветДругогоМастера.ИмяФайлаСоЗначениямиДеталек(); + + // Тогда + + Ожидаем.Что(Результат).Равно(ИмяФайлаСоЗначениямиДеталек); + +КонецПроцедуры + +&Тест +Процедура ИмяФайлаСоЗначениямиДеталек_Установить() Экспорт + + // Дано + + ИмяФайлаСоЗначениямиДеталек = "/path/to/file"; + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + // Когда + + Результат = СоветДругогоМастера.ИмяФайлаСоЗначениямиДеталек(ИмяФайлаСоЗначениямиДеталек); + + // Тогда + + Ожидаем.Что(Результат).Равно(СоветДругогоМастера); + Ожидаем.Что(Рефлектор.ПолучитьСвойство(СоветДругогоМастера, "ИмяФайлаСоЗначениямиДеталек")) + .Равно(ИмяФайлаСоЗначениямиДеталек); + +КонецПроцедуры + +&Тест +Процедура ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек_Получить() Экспорт + + // Дано + + ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек = "/path/to/dir"; + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + Рефлектор.УстановитьСвойство( + СоветДругогоМастера, + "ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек", + ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек + ); + + // Когда + + Результат = СоветДругогоМастера.ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек(); + + // Тогда + + Ожидаем.Что(Результат).Равно(ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек); + +КонецПроцедуры + +&Тест +Процедура ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек_Установить() Экспорт + + // Дано + + ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек = "/path/to/dir"; + + СоветДругогоМастера = Новый СоветДругогоМастера(); + + // Когда + + Результат = СоветДругогоМастера.ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек( + ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек + ); + + // Тогда + + Ожидаем.Что(Результат).Равно(СоветДругогоМастера); + Ожидаем.Что(Рефлектор.ПолучитьСвойство(СоветДругогоМастера, "ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек")) + .Равно(ДополнительныйКаталогПоискаФайлаСоЗначениямиДеталек); + +КонецПроцедуры + +Рефлектор = Новый Рефлектор(); From 820d3ac5049dc9276f7611129164d411ffdb3c5b Mon Sep 17 00:00:00 2001 From: "a.sosnoviy" Date: Sun, 20 Oct 2024 10:38:25 +0300 Subject: [PATCH 4/4] =?UTF-8?q?=D1=84=D0=B8=D0=BA=D1=81=20=D1=82=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=B0=20=D0=BF=D1=80=D0=BE=D0=B8=D0=B7=D0=B2=D0=BE?= =?UTF-8?q?=D0=B4=D0=B8=D1=82=D0=B5=D0=BB=D1=8C=D0=BD=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...20\273\321\214\320\275\320\276\321\201\321\202\321\214.os" | 4 ++++ 1 file changed, 4 insertions(+) diff --git "a/perfomance_tests/\320\237\321\200\320\276\320\270\320\267\320\262\320\276\320\264\320\270\321\202\320\265\320\273\321\214\320\275\320\276\321\201\321\202\321\214.os" "b/perfomance_tests/\320\237\321\200\320\276\320\270\320\267\320\262\320\276\320\264\320\270\321\202\320\265\320\273\321\214\320\275\320\276\321\201\321\202\321\214.os" index 4027364..e92e16c 100644 --- "a/perfomance_tests/\320\237\321\200\320\276\320\270\320\267\320\262\320\276\320\264\320\270\321\202\320\265\320\273\321\214\320\275\320\276\321\201\321\202\321\214.os" +++ "b/perfomance_tests/\320\237\321\200\320\276\320\270\320\267\320\262\320\276\320\264\320\270\321\202\320\265\320\273\321\214\320\275\320\276\321\201\321\202\321\214.os" @@ -10,6 +10,10 @@ ВремяВыполненияВСекундах = Неопределено; КонецПроцедуры +Процедура ПослеЗапускаТеста() Экспорт + +КонецПроцедуры + &Тест Процедура ПроверкаПроизводительностиСозданияКомпанейскихЖелудей() Экспорт