Невозможно для плагина использовать `type: group` и передавать спецификации?

Если плагин использует type: group, он должен создавать группу (например, при миграции базы данных или, возможно, в after_initialize), чтобы тесты прошли успешно (иначе тест падает, так как настройки включают несуществующую группу). Моим решением было изменить такие настройки с type: group на type: text. Благодаря этому настройки не будут падать из-за отсутствия группы: я могу создавать группы в тестах с помощью let!, а группы исчезают при запуске тестов для Group.

Если есть лучший способ, буду рад услышать его. В данном случае, вероятно, мне никогда не понадобится менять группу для каждого из этих назначений, поэтому их можно просто зашить в плагин, и они не будут настройками вовсе.

Размышления о том, как я пришёл к вышеизложенному

У меня есть плагин, которому требуется набор групп. Когда пользователя добавляют в группу, в моей модели выполняется какое-то действие. В продакшн- и разработочных базах данных всё работает отлично. Ура! :tada:

Проблема в том, что для тестов либо группы создаются (я пробовал делать это в функции, вызываемой в after_initialize, и с помощью фикстур, запускаемых во время миграции), что ломает основные тесты для Group (которые, например, ожидают определённое количество заранее созданных групп), либо группы не создаются, что ломает мои тесты.

Я переопределил refresh_automatic_groups в модели Group и заставил его удалять мои группы. Это исправило все тесты, кроме одного, так как названия моих групп включают несколько строк, которые упоминаются в том тесте, а сам тест не вызывает refresh_automatic_groups.

Поэтому моим решением стало использование только таких названий, которые не ломают этот тест.

РЕДАКТИРОВАНИЕ (снова): но теперь у меня всё ещё есть ошибки в destroy_task_spec.rb и в group_controller.

Есть ли какой-то простой трюк, который я упускаю, или мне просто нужно сделать так, чтобы этот плагин не создавал группы автоматически?