diff --git "a/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\260\320\242\320\265\321\201\321\202\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.os" "b/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\260\320\242\320\265\321\201\321\202\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.os" index 91c4632..89ba54f 100644 --- "a/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\260\320\242\320\265\321\201\321\202\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.os" +++ "b/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\260\320\242\320\265\321\201\321\202\320\270\321\200\320\276\320\262\320\260\320\275\320\270\320\265.os" @@ -5,6 +5,7 @@ Перем _КаталогиТестов; Перем _ФайлыТестов; Перем _ИскатьВПодкаталогах; +Перем РегулярноеВыражениеИмяКласса; Процедура ПриИнициализацииПоделки(Поделка) Экспорт @@ -24,7 +25,7 @@ Для каждого Тест Из ФайлыТестов Цикл Путь = Тест.ПолноеИмя; - ТестовыйНабор = "oneunit_testcase_" + Тест.ИмяБезРасширения; + ТестовыйНабор = "oneunit_testsuite_" + РегулярноеВыражениеИмяКласса.Заменить(Тест.ИмяБезРасширения, "_"); ДобавитьЗавязь = Ложь; @@ -105,4 +106,6 @@ _ИскатьВПодкаталогах = ИскатьВПодкаталогах; _ФайлыТестов = СтрРазделить(ФайлыТестов, ",", Ложь); + РегулярноеВыражениеИмяКласса = Новый РегулярноеВыражение("((?<=^)[^a-zA-Z_а-яА-ЯёЁ]|[^a-zA-Z0-9_а-яА-ЯёЁ])"); + КонецПроцедуры diff --git "a/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\236\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\235\320\260\320\261\320\276\321\200\320\260.os" "b/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\236\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\235\320\260\320\261\320\276\321\200\320\260.os" index d76086f..77a6377 100644 --- "a/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\236\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\235\320\260\320\261\320\276\321\200\320\260.os" +++ "b/src/core/internal/\320\232\320\273\320\260\321\201\321\201\321\213/\320\236\320\277\321\200\320\265\320\264\320\265\320\273\320\265\320\275\320\270\320\265\320\242\320\265\321\201\321\202\320\235\320\260\320\261\320\276\321\200\320\260.os" @@ -119,7 +119,7 @@ "Не удалось определить путь к тестовому набору" ); - _Имя = СтрЗаменить(Определение.Имя(), "oneunit_testcase_", ""); + _Имя = СтрЗаменить(Определение.Имя(), "oneunit_testsuite_", ""); _Представление = СтрШаблон( "%1 (%2)", diff --git "a/tests/fixtures/1_\320\242\320\265\321\201\321\202-\320\235\320\260\320\261\320\276\321\200.\320\241\320\276+\320\241\321\202\321\200\320\260\320\275\320\275\321\213\320\274^\320\230\320\274\320\265\320\275\320\265\320\274_1,.os" "b/tests/fixtures/1_\320\242\320\265\321\201\321\202-\320\235\320\260\320\261\320\276\321\200.\320\241\320\276+\320\241\321\202\321\200\320\260\320\275\320\275\321\213\320\274^\320\230\320\274\320\265\320\275\320\265\320\274_1,.os" new file mode 100644 index 0000000..9b3476c --- /dev/null +++ "b/tests/fixtures/1_\320\242\320\265\321\201\321\202-\320\235\320\260\320\261\320\276\321\200.\320\241\320\276+\320\241\321\202\321\200\320\260\320\275\320\275\321\213\320\274^\320\230\320\274\320\265\320\275\320\265\320\274_1,.os" @@ -0,0 +1,8 @@ +&Тест +Процедура Тест() Экспорт +КонецПроцедуры + +&ТестовыйНабор +&Порядок(13) +Процедура ПриСозданииОбъекта() +КонецПроцедуры \ No newline at end of file diff --git "a/tests/\320\236\320\261\320\275\320\260\321\200\321\203\320\266\320\270\321\202\320\265\320\273\321\214.os" "b/tests/\320\236\320\261\320\275\320\260\321\200\321\203\320\266\320\270\321\202\320\265\320\273\321\214.os" index 88cbf8b..4f0be4d 100644 --- "a/tests/\320\236\320\261\320\275\320\260\321\200\321\203\320\266\320\270\321\202\320\265\320\273\321\214.os" +++ "b/tests/\320\236\320\261\320\275\320\260\321\200\321\203\320\266\320\270\321\202\320\265\320\273\321\214.os" @@ -16,7 +16,7 @@ // Тогда - Ожидаем.Что(ТестПлан.Дети().Количество()).Равно(14); + Ожидаем.Что(ТестПлан.Дети().Количество()).Равно(15); #Область НаборБезКонструктора @@ -1118,14 +1118,56 @@ #КонецОбласти +#Область __Тест_Набор_Со_Странным_Именем_1_ + + ИндексНабора = 14; + + ПроверитьТестНабор( + ТестПлан.Дети().Получить(ИндексНабора), + "__Тест_Набор_Со_Странным_Именем_1_", + Списки.ИзЭлементов(), + 0, + 0, + Карты.ИзЭлементов( + "ПередВсеми", Списки.ИзЭлементов(), + "ПередКаждым", Списки.ИзЭлементов(), + "ПослеВсех", Списки.ИзЭлементов(), + "ПослеКаждого", Списки.ИзЭлементов() + ), + , + , + "1_Тест-Набор.Со+Странным^Именем_1," + ); + + Ожидаем.Что(ТестПлан.Дети().Получить(ИндексНабора).Дети()).ИмеетДлину(1); + + ПроверитьТест( + ТестПлан.Дети().Получить(ИндексНабора).Дети().Получить(0), + ТипыОпределенийТестов.Тест, + "Тест", + "Тест", + "__Тест_Набор_Со_Странным_Именем_1_.Тест", + ОбъединитьПути(".", "tests", "fixtures", "1_Тест-Набор.Со+Странным^Именем_1,.os"), + 0, + Списки.ИзЭлементов(), + Списки.ИзЭлементов(), + 0 + ); + +#КонецОбласти + #КонецОбласти КонецПроцедуры Процедура ПроверитьТестНабор(ТестНабор, Имя, Теги, Таймаут, Условия, ЖизненныйЦикл, - ЭтоОдиночка = Ложь, ПроверятьТестНабор = Истина) + ЭтоОдиночка = Ложь, ПроверятьТестНабор = Истина, ИмяФайла = "") + + Если ПустаяСтрока(ИмяФайла) Тогда + ИмяФайла = Имя; + КонецЕсли; - Путь = ОбъединитьПути(".", "tests", "fixtures", Имя + ".os"); + Путь = ОбъединитьПути(".", "tests", "fixtures", ИмяФайла + ".os"); Ожидаем.Что(ТестНабор).ИмеетТип("ОпределениеТестНабора"); @@ -1135,7 +1177,7 @@ Ожидаем.Что(Строка(ТестНабор)).Равно(Имя + " (" + Путь + ")"); Если ПроверятьТестНабор Тогда - Ожидаем.Что(ТестНабор.ТестНабор()).ИмеетТип("oneunit_testcase_" + Имя); + Ожидаем.Что(ТестНабор.ТестНабор()).ИмеетТип("oneunit_testsuite_" + Имя); Иначе Ожидаем.Что(ТестНабор.ТестНабор()).ЭтоНеопределено(); КонецЕсли;