Commit Graph

264 Commits

Author SHA1 Message Date
Daniel Schädler a6c46c48d5 Add dummy_stage_tournament 2019-05-11 17:42:37 +02:00
Daniel Schädler 05a35557db Add position to all matches 2019-05-11 17:42:37 +02:00
Daniel Schädler 9147cf94c5 Makes match_type configurable instead of only setting its state 2019-05-11 17:42:37 +02:00
Daniel Schädler 08dce6ec09 Add empty_prepared_playoff_match 2019-05-11 17:42:37 +02:00
Thor77 7776724781 Save match position 2019-05-11 17:42:37 +02:00
Daniel Schädler b5e4ec7ea3 For stage tournament, first stage has running matches 2019-05-11 17:42:37 +02:00
Daniel Schädler 211e8bcddd Implement populate_match_below method 2019-05-11 17:42:37 +02:00
Daniel Schädler 1115e9c955 Test stopping of Matches 2019-05-11 08:54:23 +02:00
Daniel Schädler cc4c40864b Call populate_match_below when a match is finished 2019-05-11 08:54:23 +02:00
Daniel Schädler a82924a4e4 Call calculate_group_points on Match_score Update 2019-05-11 08:54:23 +02:00
Daniel Schädler 3da6e83965 Implement calculate_group_points method 2019-05-11 08:54:23 +02:00
Daniel Schädler 5b10bd639f Put running playoff matches in a playoff stage (only on first level) 2019-05-11 08:54:23 +02:00
Daniel Schädler 59105e1076 Move group_match method to public methods
This is done in order to check if a match is a group match within
Matches Controller
2019-05-11 08:54:23 +02:00
Daniel Schädler ae8575fd5a Create realistic number of Matches
When match_count is -1 the number of matches generated is automatically
2 ^ stage.level -> This is the amount of stages present in a "real"
tournament stage. When supplying a positive number, it generates that
many matches like before.

This also now adds the position to the match list after creating them
2019-05-11 08:54:23 +02:00
Daniel Schädler 08b3199d18 Manually create the list of stages to assign stage levels correctly 2019-05-11 08:54:23 +02:00
Daniel Schädler bf03437fde Move group_stage tournament into stage tournament 2019-05-11 08:54:23 +02:00
Daniel Schädler 802ff678cf Add tests for match winner method 2019-05-11 08:54:23 +02:00
Daniel Schädler e8465df700 Add winner method to match 2019-05-11 08:54:23 +02:00
Daniel Schädler 4fb8b75769 Add evaluate winner method 2019-05-11 08:54:23 +02:00
Daniel Schädler 27646e904c Revert "Add winner column to match"
This reverts commit d9bd0976
2019-05-11 08:54:23 +02:00
Daniel Schädler 1bdba55225 Add winner column to match 2019-05-11 08:54:23 +02:00
Daniel Schädler 8157399a1a Change status of Match to only represent being finished
The winner will be a attribute of the Match instead of something
that is written in its status.
2019-05-11 08:54:23 +02:00
Daniel Schädler 89486d7349 Remove unused evaluate status method 2019-05-11 08:54:23 +02:00
Daniel Schädler 1a2a808384 Generalize tournament save interactor
It now is responsible for saving all ApplicationRecord objects to the
database. This will reduce code duplication one we have other objects
that need to be saved. (As we will soon need to save individual matches)
2019-05-11 08:54:23 +02:00
Daniel Schädler a480cf3180
Merge pull request #36 from turniere/ticket/TURNIERE-180
Implement updating of Match states
2019-05-07 20:34:40 +02:00
Thor77 27c4bcacc8
Respond with 501 for state param 'finished'
(501 = NOT IMPLEMENTED)
2019-05-07 18:41:53 +02:00
Thor77 3876f57d32
Add methods and specs to update a match 2019-05-07 18:41:53 +02:00
Thor77 436adde706
Set global match var for reuse by other methods 2019-05-07 18:41:52 +02:00
Thor77 1b9db61c22
Add owner method to Stage, Group and Match 2019-05-07 18:41:52 +02:00
Thor77 be24b1bc39
Merge pull request #35 from turniere/ticket/TURNIERE-147
Implement Group Stage creation Logic
2019-05-04 21:04:50 +02:00
Daniel Schädler f7ed4b549d Destroying all Readability.
Noone will ever be able to read this code again.
2019-05-04 20:54:08 +02:00
Daniel Schädler 23249ee93b Build Matches without saving directly to database 2019-05-04 20:34:57 +02:00
Thor77 f93c714e1a Add test for empty team hashes 2019-05-04 20:34:57 +02:00
Daniel Schädler ae29427e5d Don't run "before" before each test 2019-05-04 20:34:57 +02:00
Daniel Schädler f149055965 Test teams methods of Matches, Groups and Stages 2019-05-04 20:34:57 +02:00
Daniel Schädler 6a2c71bad7 Fix stage.team method not returning teams for playoff stages 2019-05-04 20:34:57 +02:00
Daniel Schädler babc233412 Adds :playoff_stage as factory 2019-05-04 20:34:57 +02:00
Daniel Schädler db1518bdbd Raise exceptions upon error in group_stage_service 2019-05-04 20:34:57 +02:00
Daniel Schädler 0f7279de97 Add running_group_match factory 2019-05-04 20:34:57 +02:00
Daniel Schädler bfadc7a6af Dry out Tournaments Controller 2019-05-04 20:34:57 +02:00
Daniel Schädler 88d8367c47 Check the length of the match positions instead of their exact content 2019-05-04 20:34:57 +02:00
Daniel Schädler fdac71a9f1 Unnecessary variable assignment 2019-05-04 20:34:57 +02:00
Daniel Schädler bbeda07028 Change test / context / describe names 2019-05-04 20:34:57 +02:00
Daniel Schädler 9053251706 Document group_stage generation parameter preparation 2019-05-04 20:34:57 +02:00
Daniel Schädler f9b96cbee2 Indicate the groups variable being changed within the method 2019-05-04 20:34:57 +02:00
Daniel Schädler 74e9139b33 Removes unnecessary check 2019-05-04 20:34:57 +02:00
Daniel Schädler 22f0204f29 Add missing factory specs 2019-05-04 20:34:57 +02:00
Daniel Schädler 3fc344249d Add multiple factories 2019-05-04 20:34:57 +02:00
Daniel Schädler 6811c9e7eb Corrects Test name 2019-05-04 20:34:57 +02:00
Daniel Schädler acfc388da4 Implements group stage tournament creation 2019-05-04 20:34:57 +02:00