diff --git a/app/interactors/add_group_stage_to_tournament.rb b/app/interactors/add_group_stage_to_tournament.rb new file mode 100644 index 0000000..d8071f2 --- /dev/null +++ b/app/interactors/add_group_stage_to_tournament.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +class AddGroupStageToTournament + include Interactor + + def call + tournament = context.tournament + groups = context.groups + context.fail! if tournament.stages.size > 1 + if (group_stage = GroupStageService.generate_group_stage(groups)) + tournament.stages = [group_stage] + context.tournament = tournament + else + context.fail! + end + end +end