From 1c2d051364191c522aa9fdd12aaa37b3e3a287a9 Mon Sep 17 00:00:00 2001 From: Malaber <32635600+Malaber@users.noreply.github.com> Date: Wed, 17 Apr 2019 18:30:17 +0200 Subject: [PATCH] Subtract one off required stages if the number of teams is a power of 2 This way we now calculate the right amount of stages for every number. (I would test every number, but Jonas won't let me write tests for all of them..) --- app/services/playoff_stage_service.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/services/playoff_stage_service.rb b/app/services/playoff_stage_service.rb index 1168ff4..fedcd07 100644 --- a/app/services/playoff_stage_service.rb +++ b/app/services/playoff_stage_service.rb @@ -65,7 +65,8 @@ class PlayoffStageService 0 else # black voodoo magic - stage_count = Math.log(Utils.previous_power_of_two(number_of_teams)) / Math.log(2) + stage_count = Math.log(Utils.next_power_of_two(number_of_teams)) / Math.log(2) + stage_count -= 1 if Utils.po2?(number_of_teams) stage_count.to_int end end