DRY out group_stage_service_spec
This commit is contained in:
parent
63db00b9ff
commit
bb1b8798d8
|
|
@ -6,26 +6,26 @@ RSpec.describe GroupStageService do
|
||||||
@teams2 = create_list(:team, 4)
|
@teams2 = create_list(:team, 4)
|
||||||
@prepared_groups = Hash[1 => @teams1, 2 => @teams2].values
|
@prepared_groups = Hash[1 => @teams1, 2 => @teams2].values
|
||||||
end
|
end
|
||||||
describe '#generate_group_stage method' do
|
describe '#generate_group_stage' do
|
||||||
|
let(:prepared_groups_groupstage) do
|
||||||
|
GroupStageService.generate_group_stage(@prepared_groups)
|
||||||
|
end
|
||||||
|
|
||||||
it 'returns a stage object' do
|
it 'returns a stage object' do
|
||||||
group_stage = GroupStageService.generate_group_stage(@prepared_groups)
|
expect(prepared_groups_groupstage).to be_a(Stage)
|
||||||
expect(group_stage).to be_a(Stage)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'returns a stage object with level -1' do
|
it 'returns a stage object with level -1' do
|
||||||
group_stage_level = GroupStageService.generate_group_stage(@prepared_groups).level
|
expect(prepared_groups_groupstage.level).to be(-1)
|
||||||
expect(group_stage_level).to be(-1)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'adds the provided groups to the stage' do
|
it 'adds the provided groups to the stage' do
|
||||||
group_stage_teams = GroupStageService.generate_group_stage(@prepared_groups).teams
|
expect(prepared_groups_groupstage.teams).to match_array(@prepared_groups.flatten)
|
||||||
expect(group_stage_teams).to match_array(@prepared_groups.flatten)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'adds GroupScore objects for every team present in the group' do
|
it 'adds GroupScore objects for every team present in the group' do
|
||||||
group_stage = GroupStageService.generate_group_stage(@prepared_groups)
|
expect(prepared_groups_groupstage.groups.map { |g| g.group_scores.map(&:team) }.flatten)
|
||||||
teams_in_group_scores = group_stage.groups.map { |g| g.group_scores.map(&:team) }.flatten
|
.to match_array(@prepared_groups.flatten)
|
||||||
expect(teams_in_group_scores).to match_array(@prepared_groups.flatten)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'raises exception when given different sizes of groups' do
|
it 'raises exception when given different sizes of groups' do
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue