From 5809a062a62ff26fc96de3f4e5d1362203bdd953 Mon Sep 17 00:00:00 2001 From: Malaber <32635600+Malaber@users.noreply.github.com> Date: Wed, 29 May 2019 21:53:27 +0200 Subject: [PATCH] Add GroupScore objects for every team to the group stage --- app/services/group_stage_service.rb | 3 ++- spec/services/group_stage_service_spec.rb | 6 ++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/app/services/group_stage_service.rb b/app/services/group_stage_service.rb index ea2336a..592f6ad 100644 --- a/app/services/group_stage_service.rb +++ b/app/services/group_stage_service.rb @@ -13,7 +13,8 @@ class GroupStageService end def get_group_object_from(team_array) - Group.new matches: generate_all_matches_between(team_array) + Group.new matches: generate_all_matches_between(team_array), + group_scores: team_array.map { |team| GroupScore.new team: team } end def generate_all_matches_between(teams) diff --git a/spec/services/group_stage_service_spec.rb b/spec/services/group_stage_service_spec.rb index f88f598..510c7ea 100644 --- a/spec/services/group_stage_service_spec.rb +++ b/spec/services/group_stage_service_spec.rb @@ -23,6 +23,12 @@ RSpec.describe GroupStageService do expect(group_stage_teams).to match_array(@groups.flatten) end + it 'adds GroupScore objects for every team present in the group' do + group_stage = GroupStageService.generate_group_stage(@groups) + teams_in_group_scores = group_stage.groups.map{ |g| g.group_scores.map(&:team) }.flatten + expect(teams_in_group_scores).to match_array(@groups.flatten) + end + it 'raises exception when given different sizes of groups' do unequal_groups = @groups unequal_groups.first.pop