Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Добавление плагина Заглушки #381

Merged
merged 13 commits into from
Feb 5, 2019

Conversation

popoffvg
Copy link
Contributor

@popoffvg popoffvg commented Jan 5, 2019

реализация #

Сделанные изменения:

Плагин "Заглушки" для xUnit, позволяющие быстро создавать простые тестовые данные напрямую из кода теста без использования макетов.

Примеры есть в тестах, к сожалению github в теле pullrequest у меня убирает переносы строк и сюда красиво пример добавить не удалось=(

Также добавлены Шаблоны кода для хЮнит

@artbear
Copy link
Collaborator

artbear commented Jan 14, 2019

@Suricatt интересно, посмотрю.

@artbear
Copy link
Collaborator

artbear commented Jan 14, 2019

Ага, хорошая тема - создание данных кодом, а не через макеты.

Полезно, давно давно об этом думал.

Реализация отличная/красивая - через текучие методы!

@artbear artbear self-assigned this Jan 14, 2019
@artbear
Copy link
Collaborator

artbear commented Jan 14, 2019

@Suricatt есть вопросы/предложения:

  • а почему название "Заглушки" выбрано?
    • не очень подходит к теме создания данных
  • метод "ЗавершитьСозданиеОбъекта" как-то не очень читается
    • может быть, Создать?
      • тем более, что этот метод возвращает созданный объект или набор записей
  • методы "НачатьСозданиеОбъекта" и "ЗавершитьСозданиеОбъекта" как-то не очень читаются
    • термин "Объект" в названии лишний
    • предлагаю НачатьСоздание и Создать

@artbear
Copy link
Collaborator

artbear commented Jan 14, 2019

Примеры есть в тестах, к сожалению github в теле pullrequest у меня убирает переносы строк и сюда красиво пример добавить не удалось=(

https://guides.github.com/features/mastering-markdown/

вот примеры
image

@artbear
Copy link
Collaborator

artbear commented Jan 14, 2019

@Suricatt Большая просьба - перевыгрузи исходники в версии 8.3.10, а не более поздних вариантах.

для совместимости с более ранними версиями 8.3

@artbear
Copy link
Collaborator

artbear commented Jan 14, 2019

Заглушки (превратить) -> Данные ?

@popoffvg
Copy link
Contributor Author

метод "ЗавершитьСозданиеОбъекта" как-то не очень читается
может быть, Создать?
тем более, что этот метод возвращает созданный объект или набор записей
методы "НачатьСозданиеОбъекта" и "ЗавершитьСозданиеОбъекта" как-то не очень читаются
термин "Объект" в названии лишний
предлагаю НачатьСоздание и Создать

Спасибо за замечания! Переделаю, перевыгружу с версией платформы 8.3.10

По поводу названия плагина:
Это не совсем Данные, это обрезанные объекты, которые созданы специально для теста и имеют ограниченную функциональность (какие-то методы могут работать неправильно и т.д.). Этот момент хотелось подчеркнуть в названии. Заглушки - это вольный перевод слова Mock.

Согласен, что Заглушки, возможно не самое лучшее название, но какой-то синоним, который подчеркивал ограниченность создаваемых объектов не придумал.
Был вариант "Подстановки" еще, может он лучше подходит?

@artbear
Copy link
Collaborator

artbear commented Jan 21, 2019

@silverbulleters/collaborators Коллеги, что скажете по наименованию подобного плагина?

1 Заглушки
2 Данные
3 Подстановки
4 свой вариант ...

@artbear artbear added this to the 5.7.0 milestone Jan 21, 2019

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

Функция ШапкаНабора(Параметр0
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

здесь что-то с отступами и табуляцией


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

Функция ЗаписьНабора(Параметр0
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

и в этом методе


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

Функция СтрокаТЧ(Параметр0
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

и здесь отступы


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

Функция ШапкаТабличнойЧасти(ИмяТабличнойЧасти,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

и здесь отступы

@popoffvg
Copy link
Contributor Author

@artbear, по отступам при выгрузке, вроде, все ок:
2019-01-21_195518

Может сталкивался с таким? Видимо, при коммите как-то github чудит ...
Не подскажешь, как можно исправить?

@artbear
Copy link
Collaborator

artbear commented Jan 24, 2019

Шаблоны кода для хЮнит полезны, большое спасибо!

@artbear artbear added the Генерация данных Сериализатор данных label Jan 24, 2019
@artbear
Copy link
Collaborator

artbear commented Jan 31, 2019

@silverbulleters/collaborators Коллеги, что скажете по наименованию подобного плагина?
1 Заглушки
2 Данные
3 Подстановки
4 свой вариант ...

у меня появился финальный вариант - Творец :)

Предлагаю использовать именно это название плагина !

@popoffvg
Copy link
Contributor Author

Творец
=))))))

Можно еще Фабрика или ФабрикаДанных =)

@artbear
Copy link
Collaborator

artbear commented Feb 1, 2019

Да, Фабрика также интересно.

или еще вариант - Создатель :)

нужно выбрать и доработать модули

хочу релиз выпустить уже :)

я за Создатель
@Suricatt ты за какой вариант?
@pbazeliuk а ты за какой вариант?

@popoffvg
Copy link
Contributor Author

popoffvg commented Feb 1, 2019

@artbear я согласен уже согласен и на первоначальный вариант. который ты предложил, Данные

Создатель мне не очень нравится.

Давай остановимся на Данные =))
В выходные изменю

@artbear
Copy link
Collaborator

artbear commented Feb 1, 2019

лады, оставляем "Данные".

в ближайшие дни планирую выпустить долгожданный релиз Ванесса.АДД

очень-очень хочется этот ПР включить в релиз!
очень жду твоей доработки.

@popoffvg
Copy link
Contributor Author

popoffvg commented Feb 2, 2019

@artbear Готово =)

Copy link
Collaborator

@artbear artbear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Требуются исправления для совместимости с 8.3.5

@popoffvg
Copy link
Contributor Author

popoffvg commented Feb 3, 2019

Требуются исправления для совместимости с 8.3.5

А какие исправления нужны?

И спасибо за исправления!

@artbear
Copy link
Collaborator

artbear commented Feb 3, 2019

СтрНайти, СтрРазделить, СтраНачинаетсяС в 8.3.5 не работают.

их нужно заменить аналогами.

@artbear
Copy link
Collaborator

artbear commented Feb 3, 2019

Используй
КонтекстЯдра.СтрШаблон_ вместо СтрШаблон
или РазложитьСтрокуВМассивПодстрок вместо СтрРазделить
или Найти вместо СтрНайти
или Лев вместо СтрНачинаетсяС

@popoffvg
Copy link
Contributor Author

popoffvg commented Feb 4, 2019

@artbear Поправил =)

Copy link
Collaborator

@artbear artbear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ага, синтакс-ошибок теперь нет.

но теперь падают тесты плагина при запуске в конфигурации xdd.
Ты в какой базе запускаешь?

Случилось "страшное" - ты сделал тесты для конфигурации BDD, хотя тесты по умолчанию запускаются в базе XDD.

  • Поле объекта не обнаружено (Справочник1)
  • Поле объекта не обнаружено (ДокументСДвижениями)

 

Запущено тестов - 13, ошибочных тестов - 6, не прошло проверку - 1, пропущено - 0
Общее время выполнения: 1,067 ( 0:00:01 сек. )
  |  
W:\repo\SB\add\tests\xunit\Plugins
  |  
Тесты_Данные
  |  
Создание набор записей регистров накопления
  |  
Тест_СоздаетЗаписиРегистраНакопления, путь W:\repo\SB\add\tests\xunit\Plugins\Тесты_Данные.epf
  |  
{ВнешняяОбработка.Данные.МодульОбъекта(224)}: Поле объекта не обнаружено (ДокументСДвижениями) Документ = Документы[ИмяДокумента].СоздатьДокумент();
  |  
Создание элементов справочников
  |  
Тест_СозданиеЭлементовСправочников_СтарыйИнтерфейс, путь W:\repo\SB\add\tests\xunit\Plugins\Тесты_Данные.epf
  |  
{ВнешняяОбработка.Данные.МодульОбъекта(203)}: Поле объекта не обнаружено (Справочник1) Элемент = Справочники[ИмяСправочника].СоздатьЭлемент();
  |  
Тест_СозданиеЭлементовСправочников_НовыйИнтерфейс, путь W:\repo\SB\add\tests\xunit\Plugins\Тесты_Данные.epf
  |  
{ВнешняяОбработка.Данные.МодульОбъекта(203)}: Поле объекта не обнаружено (Справочник1) Элемент = Справочники[ИмяСправочника].СоздатьЭлемент();
  |  
Создание документов
  |  
Тест_СозданиеДокумента_СтарыйИнтерфейс, путь W:\repo\SB\add\tests\xunit\Plugins\Тесты_Данные.epf
  |  
{ВнешняяОбработка.Данные.МодульОбъекта(224)}: Поле объекта не обнаружено (ДокументСДвижениями) Документ = Документы[ИмяДокумента].СоздатьДокумент();
  |  
Тест_СозданиеДокумента_НовыйИнтерфейс, путь W:\repo\SB\add\tests\xunit\Plugins\Тесты_Данные.epf
  |  
{ВнешняяОбработка.Данные.МодульОбъекта(224)}: Поле объекта не обнаружено (ДокументСДвижениями) Документ = Документы[ИмяДокумента].СоздатьДокумент();
  |  
Автозаполнение параметров
  |  
Тест_РеквизитСправочникаАвтоматическиЗаполнился, путь W:\repo\SB\add\tests\xunit\Plugins\Тесты_Данные.epf
  |  
{ВнешняяОбработка.Данные.МодульОбъекта(493)}: Поле объекта не обнаружено (Справочник1) Реквизиты = Метаданные[ТипОбъекта][ИмяОбъекта].Реквизиты;
  |  
Тест_ВызваноИСключениеДляСоставногоТипа, путь W:\repo\SB\add\tests\xunit\Plugins\Тесты_Данные.epf
  |  
{ВнешняяОбработка.БазовыеУтверждения.МодульОбъекта(370)}: [Failed] Хотели, чтобы код "Объект.Создать()" упал с сообщением об ошибке "Автозаполнение не поддерживается в составных типах", а он упал с сообщением "{ВнешняяОбработка.Данные.МодульОбъекта(493)}: Поле объекта не обнаружено (Справочник1) Реквизиты = Метаданные[ТипОбъекта][ИмяОбъекта].Реквизиты;". ВызватьИсключение Префикс + " " + СообщениеОшибки;
  |  
  |  

@artbear
Copy link
Collaborator

artbear commented Feb 5, 2019

@Suricatt последнюю проблему с неверными метаданными я сейчас сам исправлю и замержу твой ПР

@artbear artbear merged commit 187f05c into vanessa-opensource:develop Feb 5, 2019
@artbear
Copy link
Collaborator

artbear commented Feb 5, 2019

@Suricatt Большущее спасибо за полезную функциональность и терпеливость при работе с ПР :)

Поздравляю с присоединением к команде контрибьюторов Ванесса.АДД.

@popoffvg
Copy link
Contributor Author

popoffvg commented Feb 5, 2019

Аааа, блин. Спасибо, что исправил =)
Не увидел разницы =(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Генерация данных Сериализатор данных
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants