Commit Graph

238 Commits

Author SHA1 Message Date
Daniel Schädler 7afb5ae552 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-22 09:25:07 +02:00
Daniel Schädler 55f1656328 Manually create the list of stages to assign stage levels correctly 2019-05-22 09:25:07 +02:00
Daniel Schädler 6d66328dc8 Move group_stage tournament into stage tournament 2019-05-22 09:25:07 +02:00
Daniel Schädler 8026e66d9b Add :undecided_group_match and :decided_playoff_match 2019-05-22 09:25:07 +02:00
Thor77 39fc9f1630
Use factories instead of creating models manually 2019-05-16 20:53:05 +02:00
Thor77 b307abfc43
Add routing to StatisticsController 2019-05-16 20:53:05 +02:00
Thor77 99bfe6ed70
Add StatisticsController 2019-05-16 20:53:04 +02:00
Thor77 bdcfbe934b
Add StatisticsService 2019-05-16 20:53:04 +02:00
Daniel Schädler cda1cfcb50 Remove deprecated Factory Tests 2019-05-15 09:12:01 +02:00
Daniel Schädler 9de127e75a Change from rake Task to a single spec
This has the advantage that if you run the whole suite it gets run
automatically but if you run a single test it doesn't. This seems
like the best of both worlds..
2019-05-15 09:12:01 +02:00
Thor77 3876f57d32
Add methods and specs to update a match 2019-05-07 18:41:53 +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 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 88d8367c47 Check the length of the match positions instead of their exact content 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 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
Daniel Schädler 300f16b4c2 Rename create_data to create_playoff_tournament_data
This is done in preparation for the addition of group stage data
within the next few commits
2019-05-04 20:34:57 +02:00
Daniel Schädler 6dba0ec738 Test GroupStageService 2019-05-04 20:34:57 +02:00
Daniel Schädler f47ffebcd4 Makes Groups have different incrementing numbers 2019-05-04 20:34:57 +02:00
Daniel Schädler 04b0476603 Test Add Group Stage Interactor 2019-05-04 20:34:57 +02:00
Thor77 6d40d091a4 Modify tournament index spec for "type" parameter 2019-04-24 22:49:48 +02:00
Thor77 c4d03b52c3 Fix tournament index spec apply wrong auth header
because the user @owner doesn't have any private tournaments, therefore
the spec was pointless
2019-04-24 22:49:48 +02:00
Thor77 09ca262ab1 Move index specs into without parameters context 2019-04-24 22:49:48 +02:00
Daniel Schädler d3d572ea1b Change return for 0 teams to exception 2019-04-23 14:21:29 +02:00
Daniel Schädler a449e0193a Use match_array instead of eq
This is the proper way to compare arrays
2019-04-23 14:19:36 +02:00
Daniel Schädler a30ff860e9 Return a valid list of matches for 1 team 2019-04-23 14:19:36 +02:00
Daniel Schädler d221928a12 Test generation of playoff stages for 1 2 and 3 teams 2019-04-23 14:19:36 +02:00
Daniel Schädler 8b11f73a58 Add another Test Case 2019-04-23 14:19:36 +02:00
Daniel Schädler 9918b4a71c Improve test readability in logs 2019-04-23 14:19:36 +02:00
Daniel Schädler 6baaebddd9 Add Test for team numbers that are not powers of 2 2019-04-23 14:19:36 +02:00
Daniel Schädler 00bc8c82e3 Correct Expected Test results
(I am bad at quick math)
2019-04-23 14:19:36 +02:00
Thor77 847f4a1c69 Add password to User factory 2019-04-23 10:48:25 +02:00
Thor77 3ef3b6985f Add spec for custom username validation 2019-04-23 10:46:36 +02:00
Thor77 a14a5224e5 Add spec for tournament-creation with invalid team 2019-04-16 13:24:58 +02:00
Thor77 2b2fccf076 Add tests checking generated stage 2019-04-09 10:47:17 +02:00
Thor77 cdd6b6737f Add test for non-existing team and names 2019-04-08 11:15:24 +02:00
Thor77 2385650be0
Adapt tests to updated tournament controller 2019-04-07 19:27:28 +02:00
Thor77 12c14303f2
Validate exact tournament lists instead of sizes 2019-04-07 18:46:48 +02:00
Thor77 667d6a028c
Test controller params as they're documented 2019-04-07 13:40:34 +02:00
Thor77 a99ae0e248 Assert tournament/stage/group relations optional 2019-04-03 10:03:45 +02:00
Thor77 d7a8504b45 Replace deprecated Faker::Dog 2019-04-03 09:45:56 +02:00
Thor77 c38066408f Adapt deserialization methods to new schema 2018-12-11 17:14:43 +01:00
Thor77 945c499de7 Skip spec for tournament creation for now
because we need to find a proper way to implement it in a RESTful way
2018-12-11 17:14:43 +01:00
Thor77 dcb8e6b216 Adapt controller specs to new api schema 2018-12-11 17:14:43 +01:00
Thor77 8261a919fa
Add workaround for shoulda-matchers#1067
https://github.com/thoughtbot/shoulda-matchers/issues/1067
This issue led to the failure of the solution I implemented before in 8f88362264.
Because of it shoulda-matchers will just ignore the given record for the
validation check and just take the first existing one which in this case
can still contain a only-digits code, because it was generated in the
before-block.
2018-12-02 21:16:24 +01:00
Thor77 8f88362264 Use code with only alphas for unqiue-validation
Because in some ocassions a tournament code with only digits is
generated which would fail this test because shoulda is not able to
convert it to an uppercase version to test for case-sensitivity of the
validation.
2018-12-02 13:54:27 +01:00
Daniel Schädler dd2f66f49d Score is now MatchScore & Score Attribute is Points Attribute 2018-11-30 15:10:33 +01:00
Thor77 e763f14719 Add ScoresController and their specs 2018-11-30 14:42:12 +01:00
Daniel Schädler 68f9b3b2b3 Change Score to MatchScore & MatchScore score attribute to points
This is done to improve the naming and therefore make things easier to understand.
2018-11-30 14:15:48 +01:00
Daniel Schädler 7ba1f98fb4 Implements Adding Tournaments to Database 2018-11-29 11:58:27 +01:00
Daniel Schädler 26bcc3dc88 Implement Adding Playoffs to a tournament 2018-11-29 11:10:15 +01:00
Daniel Schädler 7f243b06a2 Implement Utils Class 2018-11-29 11:03:44 +01:00
Daniel Schädler a75087aa6c Prepare spec_helper for focused tests 2018-11-29 11:02:25 +01:00
Daniel Schädler 8e7869b879 Improve Factories 2018-11-29 11:01:52 +01:00
Daniel Schädler 34159f7e01 Add a running playoff Match to Match Factory 2018-11-29 11:01:17 +01:00
Daniel Schädler fbb87f5f7c Add a tournament with stages to factory 2018-11-29 10:48:26 +01:00
Thor77 70cc88920b
Remove unused global variables 2018-11-25 22:55:49 +01:00
Thor77 29b570bafa
Add deserialize_list helper 2018-11-25 22:55:49 +01:00
Thor77 3bb1e74172
Modify local instead of global request
in apply_authentication_headers_for helper
to allow usage of different authenticated user in one testcase
2018-11-25 22:55:49 +01:00
Thor77 9a41b19e97
Add team factory without parent tournament 2018-11-25 22:55:49 +01:00
Thor77 83c76c456c
Add TournamentsControllers specs 2018-11-25 22:55:48 +01:00
Thor77 20288ff7e4
Use DeserializeHelpers.deserialize_response 2018-11-24 20:34:13 +01:00
Thor77 a8e6ac3dfd
Add and include DeserializeHelpers 2018-11-24 20:33:31 +01:00
Thor77 0308dc121f
Add TeamsController and corresponding specs 2018-11-24 19:18:03 +01:00
Thor77 3744bf6858
Add authentification helper to RSpec config 2018-11-24 19:16:55 +01:00
Thor77 6c24180715 Add MatchesController and specs for it 2018-11-21 18:57:16 +01:00
Thor77 673e12c052 Validate Stage xor Group present in match 2018-11-20 16:03:58 +01:00
Thor77 1cd4835651 Add valid factories for all models 2018-11-19 14:50:41 +01:00
Thor77 6e1af687ad Add default for scores.score 2018-11-19 14:41:30 +01:00
Thor77 c573fd9edd
Fix team spec expecting group_score relation 2018-11-19 11:47:14 +01:00
Thor77 def5de2a7e
Add factories for groups, matches, scores & stages 2018-11-19 11:47:13 +01:00
Thor77 1ec2fa6cf5
Add model test for group,match,score,stage,user 2018-11-19 11:47:13 +01:00
Thor77 b09f4eceb2
Add tests for valid factory to all model tests 2018-11-19 11:47:13 +01:00
Thor77 1a24dd3057
Add association tests for new schema 2018-11-19 11:47:13 +01:00
Thor77 b72bc69b81
Add spec for GroupScore model 2018-11-19 11:47:13 +01:00
Thor77 579412ab89
Add teams and group scores factory 2018-11-19 11:47:12 +01:00
Thor77 ca0013b9b2
Use expect instead of assert syntax 2018-11-19 11:47:12 +01:00
Thor77 3043c9f0d7
Add User factory 2018-11-19 11:47:12 +01:00
Thor77 ff63380c9c
Add Tournament model spec and factory 2018-11-19 11:47:12 +01:00
Thor77 94d2c4291a
Add coveralls coverage reporting 2018-11-19 11:38:56 +01:00
Thor77 bcb4bb7ccb Initialize RSpec setup
including shoulda, Faker and FactoryBot
2018-11-13 16:56:16 +01:00