Commit Graph

279 Commits

Author SHA1 Message Date
Daniel Schädler 16a38d141d Move populating the match below to when the state is changed 2019-05-13 11:04:44 +02:00
Daniel Schädler 9b5d4646a8 fixup test stop method match 2019-05-13 09:35:44 +02:00
Daniel Schädler 5df8714124 fixup evaluate_winner method match 2019-05-13 09:31:35 +02:00
Daniel Schädler 74282ea372 Rearrange methods in playoff_stage_service 2019-05-12 19:12:42 +02:00
Daniel Schädler 2c36a7aacc Rearrange new methods into one to split it otherwise 2019-05-12 19:12:42 +02:00
Daniel Schädler 06ad5d56e5 Improve Formatting in playoff_stage_service (I guess)
... Rubocop wanted it that way
2019-05-12 19:12:42 +02:00
Daniel Schädler 5d5a58c2a3 Fix second match winner advancing, even if match is not finished 2019-05-12 19:12:42 +02:00
Daniel Schädler 0573651919 Check for errors while populating the match below 2019-05-12 19:12:42 +02:00
Daniel Schädler aac0bcb8c8 Test stopping of matches 2019-05-12 19:12:42 +02:00
Daniel Schädler 6f8cb90dde Implement PopulateMatchBelow Interactor & Organizer 2019-05-12 19:12:42 +02:00
Daniel Schädler d39b898612 Keep owner of Matches in variable 2019-05-12 19:12:42 +02:00
Daniel Schädler 3716c9094c Performance Optimization
In general this generates less unnecessary faker data
2019-05-12 19:12:42 +02:00
Daniel Schädler a7f337d14d Implement populate_match_below method 2019-05-12 19:12:42 +02:00
Daniel Schädler 525c17841c Test stopping of Matches 2019-05-12 19:12:42 +02:00
Daniel Schädler e04d3c1c2e Call populate_match_below when a match is finished 2019-05-12 19:12:42 +02:00
Daniel Schädler 8fd09e3eca Call calculate_group_points on Match_score Update 2019-05-12 19:12:42 +02:00
Daniel Schädler ae652753c1 Implement calculate_group_points method 2019-05-12 19:12:42 +02:00
Daniel Schädler a3c2f943cb 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-12 19:12:42 +02:00
Daniel Schädler c8879c64df Add winner method to match 2019-05-12 19:12:42 +02:00
Daniel Schädler 4de6847edc Add evaluate winner method 2019-05-12 19:12:42 +02:00
Daniel Schädler ae41d1a2a5 Revert "Add winner column to match"
This reverts commit d9bd0976
2019-05-12 19:12:42 +02:00
Daniel Schädler 6c109df54f Add winner column to match 2019-05-12 19:12:42 +02:00
Daniel Schädler a812e7103d 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-12 19:12:42 +02:00
Daniel Schädler c93af46072 Remove unused evaluate status method 2019-05-12 19:12:42 +02:00
Daniel Schädler cb00cd7be8 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-12 19:12:42 +02:00
Daniel Schädler 1b26ff56fe Add group_stage_only_tournament factory 2019-05-12 19:09:50 +02:00
Daniel Schädler 787ed810d7 Remove link between team.owner and tournament 2019-05-12 19:09:50 +02:00
Daniel Schädler dded01ebee Reduce standart amount of teams within a tournament to 8 2019-05-12 19:09:50 +02:00
Daniel Schädler ef3413b8ed Add dummy_stage_tournament 2019-05-12 19:09:50 +02:00
Daniel Schädler d1338eaadb Add position to all matches 2019-05-12 19:09:50 +02:00
Daniel Schädler 533929421b Makes match_type configurable instead of only setting its state 2019-05-12 19:09:50 +02:00
Daniel Schädler d9e53a56fb Add empty_prepared_playoff_match 2019-05-12 19:09:50 +02:00
Thor77 89fe7073de Save match position 2019-05-12 19:09:50 +02:00
Daniel Schädler 0c9943b2a3 For stage tournament, first stage has running matches 2019-05-12 19:09:50 +02:00
Daniel Schädler 7e4b800748 Put running playoff matches in a playoff stage (only on first level) 2019-05-12 19:09:50 +02:00
Daniel Schädler c0ac3a5f54 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-12 19:09:50 +02:00
Daniel Schädler 2601f0ae31 Manually create the list of stages to assign stage levels correctly 2019-05-12 19:09:50 +02:00
Daniel Schädler 8785c2075d Move group_stage tournament into stage tournament 2019-05-12 19:09:50 +02:00
Daniel Schädler 46fbdd667e Add tests for match winner method 2019-05-12 19:09:50 +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