플러그인이 `type: group`을 사용하면서 스펙을 전달하는 것이 불가능합니까?

플러그인이 type: group을 사용하려면, 스펙이 통과하려면(그렇지 않으면 설정에 존재하지 않는 그룹이 포함되어 있어 스펙이 실패합니다) 해당 그룹이 생성되어 있어야 합니다(예: 데이터베이스 마이그레이션 시, 또는 after_initialize 시점). 제 해결책은 이러한 type: group 설정을 type: text로 변경하는 것이었습니다. 이렇게 하면 그룹이 존재하지 않아서 설정이 실패하지 않고, let!을 사용하여 스펙에서 그룹을 생성할 수 있으며, Group 스펙이 실행될 때 그룹은 사라집니다.

더 나은 방법이 있다면 듣고 싶습니다. 논리적으로, 이 경우 각 용도에 사용될 그룹을 변경할 필요가 거의 없으므로, 설정이 아닌 플러그인에 하드코딩하는 것이 더 나을 수도 있습니다.

위에서 설명한 내용을 파악하는 과정에 대한 수다

저는 특정 그룹 집합이 필요한 플러그인을 가지고 있습니다. 사용자가 그룹에 추가되면 제 모델에서 동작이 수행됩니다. 프로덕션과 개발 데이터베이스에서는 잘 작동합니다. 축하합니다. :tada:

문제는 스펙에서 그룹이 생성되면(이것을 after_initialize에서 호출되는 함수나 마이그레이션 중에 실행되는 픽스처를 통해 시도해 보았지만) 핵심 Group 스펙(예: 기존 그룹의 특정 수를 기대하는 스펙)이 깨지거나, 그룹이 생성되지 않으면 제 스펙이 깨진다는 것입니다.

Group 모델에서 refresh_automatic_groups을 오버라이드하여 제 그룹을 삭제하도록 했습니다. 이 방법은 refresh_automatic_groups을 호출하지 않는 특정 스펙을 제외하고는 모든 테스트를 수정했습니다. 제 그룹 이름 중 일부는 해당 문자열을 포함하고 있기 때문입니다.

따라서 제 해결책은 그 테스트를 깨뜨리지 않는 이름만 사용하는 것이었습니다.

수정(다시): 하지만 여전히 destroy_task_spec.rb와 group_controller에서 오류가 발생합니다.

제가 놓치고 있는 간단한 트릭이 있는지, 아니면 이 플러그인이 자동으로 그룹을 생성하지 않도록 해야 하는지 궁금합니다.