rating-chgk-v2 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -0
  3. data/lib/rating_chgk_v2/endpoints/base_endpoint.rb +3 -2
  4. data/lib/rating_chgk_v2/request.rb +0 -1
  5. data/lib/rating_chgk_v2/version.rb +1 -1
  6. data/lib/rating_chgk_v2.rb +1 -1
  7. data/rating-chgk-v2.gemspec +0 -2
  8. metadata +4 -91
  9. data/spec/lib/rating_chgk_v2/collections/base_collection_spec.rb +0 -53
  10. data/spec/lib/rating_chgk_v2/collections/countries_collection_spec.rb +0 -5
  11. data/spec/lib/rating_chgk_v2/collections/player_seasons_collection_spec.rb +0 -5
  12. data/spec/lib/rating_chgk_v2/collections/player_tournaments_collection_spec.rb +0 -5
  13. data/spec/lib/rating_chgk_v2/collections/players_collection_spec.rb +0 -5
  14. data/spec/lib/rating_chgk_v2/collections/regions_collection_spec.rb +0 -5
  15. data/spec/lib/rating_chgk_v2/collections/releases_collection_spec.rb +0 -5
  16. data/spec/lib/rating_chgk_v2/collections/seasons_collection_spec.rb +0 -5
  17. data/spec/lib/rating_chgk_v2/collections/teams_collection_spec.rb +0 -5
  18. data/spec/lib/rating_chgk_v2/collections/tournaments_collection_spec.rb +0 -5
  19. data/spec/lib/rating_chgk_v2/collections/towns_collection_spec.rb +0 -5
  20. data/spec/lib/rating_chgk_v2/collections/venue_types_collection_spec.rb +0 -5
  21. data/spec/lib/rating_chgk_v2/collections/venues_collection_spec.rb +0 -5
  22. data/spec/lib/rating_chgk_v2/connection_spec.rb +0 -22
  23. data/spec/lib/rating_chgk_v2/endpoints/base_endpoint_spec.rb +0 -15
  24. data/spec/lib/rating_chgk_v2/error_spec.rb +0 -11
  25. data/spec/lib/rating_chgk_v2/models/country_model_spec.rb +0 -30
  26. data/spec/lib/rating_chgk_v2/models/player_model_spec.rb +0 -59
  27. data/spec/lib/rating_chgk_v2/models/season_model_spec.rb +0 -36
  28. data/spec/lib/rating_chgk_v2/models/team_model_spec.rb +0 -35
  29. data/spec/lib/rating_chgk_v2/models/tournament_model_spec.rb +0 -38
  30. data/spec/lib/rating_chgk_v2/models/venue_model_spec.rb +0 -30
  31. data/spec/lib/rating_chgk_v2/rest/authentication_token_spec.rb +0 -19
  32. data/spec/lib/rating_chgk_v2/rest/countries_spec.rb +0 -94
  33. data/spec/lib/rating_chgk_v2/rest/players_spec.rb +0 -126
  34. data/spec/lib/rating_chgk_v2/rest/regions_spec.rb +0 -37
  35. data/spec/lib/rating_chgk_v2/rest/releases_spec.rb +0 -34
  36. data/spec/lib/rating_chgk_v2/rest/seasons_spec.rb +0 -71
  37. data/spec/lib/rating_chgk_v2/rest/teams_spec.rb +0 -66
  38. data/spec/lib/rating_chgk_v2/rest/tournament_flags_spec.rb +0 -27
  39. data/spec/lib/rating_chgk_v2/rest/tournament_synch_appeals_spec.rb +0 -22
  40. data/spec/lib/rating_chgk_v2/rest/tournament_synch_controversials_spec.rb +0 -20
  41. data/spec/lib/rating_chgk_v2/rest/tournament_synch_requests_spec.rb +0 -20
  42. data/spec/lib/rating_chgk_v2/rest/tournament_types_spec.rb +0 -23
  43. data/spec/lib/rating_chgk_v2/rest/tournaments_spec.rb +0 -89
  44. data/spec/lib/rating_chgk_v2/rest/towns_spec.rb +0 -35
  45. data/spec/lib/rating_chgk_v2/rest/venue_types_spec.rb +0 -46
  46. data/spec/lib/rating_chgk_v2/rest/venues_spec.rb +0 -71
  47. data/spec/lib/rating_chgk_v2_spec.rb +0 -9
  48. data/spec/spec_helper.rb +0 -37
  49. data/spec/support/shared/paginated.rb +0 -41
  50. data/spec/support/test_client.rb +0 -7
  51. data/spec/support/vcr.rb +0 -15
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a959102a088e33e1ecdeb6c68f493f4b1815da92248c634630fb5d1e6f86d3d
4
- data.tar.gz: 010cf71a1413147959eaec7fef15cd92057ba59ba94b5f7a585865f34a5b7096
3
+ metadata.gz: 32e9b5b23a321dcdc852d8ad1ee65ee64e2b0ac34f12141d5b5b6ac3b1907df5
4
+ data.tar.gz: 6384799d428ad6e9d541f589d90916aaf63e2aea34b72b24ee4efafe21fc0249
5
5
  SHA512:
6
- metadata.gz: ea4b2c7c07a7e5677fe6207fb36b22aa793c733ad87cbff249506c80cf66ce941ad71b22707719caac40c526f926c80d4b3814aa74010c8386e74a618ec4d181
7
- data.tar.gz: 43a3eafc2b27ba5f9f82372899b65a258eb37742d1069b1fe5260d5c0ce297fdc4e9cb085e0578cd8257b00135426fa1858e31cb719b0edef5b74f9eae262cec
6
+ metadata.gz: 6d576f34181d9ef0f059cd33a10f0bc7db83b0554eb3f372144597b0f24e7d5eb784d3766c260ad81bd454be66c77fde4a9ae0a0626737bd4b0f4dac4e3bb8a8
7
+ data.tar.gz: 8835357de3b4eab7b1e693ff8ea9a9c20c573efb38156694733bf0e36969ac1591b77418ad17f59ff730dfd39f7788e70dc968e1b8073996cb59f2da40c9b846
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.0.1 (29-Jul-22)
4
+
5
+ * Fixed client reinitialization (thanks, @L-Eugene)
6
+ * Minor fixes
7
+
3
8
  ## 1.0.0 (12-Apr-22)
4
9
 
5
10
  * Stable release
@@ -8,12 +8,13 @@ module RatingChgkV2
8
8
  attr_reader :params
9
9
 
10
10
  def initialize(client, query_params = [], params = {})
11
- setup client, base_query.push(*query_params), params
11
+ @instance_query = base_query.push(*query_params)
12
+ setup client, @instance_query, params
12
13
  end
13
14
 
14
15
  def reinitialize(new_params: {}, add_query: [])
15
16
  add_query = [add_query] unless add_query.is_a?(Array)
16
- new_query = add_query&.any? ? @query_params.push(*add_query) : @query_params
17
+ new_query = add_query&.any? ? @instance_query + add_query : @query_params
17
18
  setup @client, new_query, new_params
18
19
  self
19
20
  end
@@ -28,7 +28,6 @@ module RatingChgkV2
28
28
 
29
29
  def delete(path, client, _params = {})
30
30
  respond_with(
31
- # Rubocop tries to replace `delete` with `gsub` but that's a different method here!
32
31
  connection(client).delete(prepare(path)),
33
32
  client
34
33
  )
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RatingChgkV2
4
- VERSION = '1.0.0'
4
+ VERSION = '1.0.1'
5
5
  end
@@ -12,7 +12,7 @@ loader.setup
12
12
  module RatingChgkV2
13
13
  class << self
14
14
  def client(token: '', params: {})
15
- @client ||= RatingChgkV2::Client.new token: token, params: params
15
+ @client = RatingChgkV2::Client.new token: token, params: params
16
16
  end
17
17
 
18
18
  def reset_client!
@@ -18,7 +18,6 @@ Gem::Specification.new do |spec|
18
18
  'CHANGELOG.md', 'lib/**/*.rb', 'lib/rating_chgk_v2/data/*.yml',
19
19
  'rating-chgk-v2.gemspec', '.github/*.md',
20
20
  'Gemfile', 'Rakefile']
21
- spec.test_files = Dir['spec/**/*.rb']
22
21
  spec.extra_rdoc_files = ['README.md']
23
22
  spec.require_paths = ['lib']
24
23
 
@@ -39,7 +38,6 @@ Gem::Specification.new do |spec|
39
38
  spec.add_development_dependency 'vcr', '~> 6.0'
40
39
  spec.add_development_dependency 'webmock', '~> 3.14'
41
40
  spec.metadata = {
42
- 'homepage_uri' => 'https://github.com/bodrovis/rating-chgk-v2',
43
41
  'source_code_uri' => 'https://github.com/bodrovis/rating-chgk-v2',
44
42
  'rubygems_mfa_required' => 'true',
45
43
  'wiki_uri' => 'https://github.com/bodrovis/rating-chgk-v2/wiki',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rating-chgk-v2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ilya Krukowski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-12 00:00:00.000000000 Z
11
+ date: 2022-07-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable
@@ -339,54 +339,10 @@ files:
339
339
  - lib/rating_chgk_v2/utils/string_utils.rb
340
340
  - lib/rating_chgk_v2/version.rb
341
341
  - rating-chgk-v2.gemspec
342
- - spec/lib/rating_chgk_v2/collections/base_collection_spec.rb
343
- - spec/lib/rating_chgk_v2/collections/countries_collection_spec.rb
344
- - spec/lib/rating_chgk_v2/collections/player_seasons_collection_spec.rb
345
- - spec/lib/rating_chgk_v2/collections/player_tournaments_collection_spec.rb
346
- - spec/lib/rating_chgk_v2/collections/players_collection_spec.rb
347
- - spec/lib/rating_chgk_v2/collections/regions_collection_spec.rb
348
- - spec/lib/rating_chgk_v2/collections/releases_collection_spec.rb
349
- - spec/lib/rating_chgk_v2/collections/seasons_collection_spec.rb
350
- - spec/lib/rating_chgk_v2/collections/teams_collection_spec.rb
351
- - spec/lib/rating_chgk_v2/collections/tournaments_collection_spec.rb
352
- - spec/lib/rating_chgk_v2/collections/towns_collection_spec.rb
353
- - spec/lib/rating_chgk_v2/collections/venue_types_collection_spec.rb
354
- - spec/lib/rating_chgk_v2/collections/venues_collection_spec.rb
355
- - spec/lib/rating_chgk_v2/connection_spec.rb
356
- - spec/lib/rating_chgk_v2/endpoints/base_endpoint_spec.rb
357
- - spec/lib/rating_chgk_v2/error_spec.rb
358
- - spec/lib/rating_chgk_v2/models/country_model_spec.rb
359
- - spec/lib/rating_chgk_v2/models/player_model_spec.rb
360
- - spec/lib/rating_chgk_v2/models/season_model_spec.rb
361
- - spec/lib/rating_chgk_v2/models/team_model_spec.rb
362
- - spec/lib/rating_chgk_v2/models/tournament_model_spec.rb
363
- - spec/lib/rating_chgk_v2/models/venue_model_spec.rb
364
- - spec/lib/rating_chgk_v2/rest/authentication_token_spec.rb
365
- - spec/lib/rating_chgk_v2/rest/countries_spec.rb
366
- - spec/lib/rating_chgk_v2/rest/players_spec.rb
367
- - spec/lib/rating_chgk_v2/rest/regions_spec.rb
368
- - spec/lib/rating_chgk_v2/rest/releases_spec.rb
369
- - spec/lib/rating_chgk_v2/rest/seasons_spec.rb
370
- - spec/lib/rating_chgk_v2/rest/teams_spec.rb
371
- - spec/lib/rating_chgk_v2/rest/tournament_flags_spec.rb
372
- - spec/lib/rating_chgk_v2/rest/tournament_synch_appeals_spec.rb
373
- - spec/lib/rating_chgk_v2/rest/tournament_synch_controversials_spec.rb
374
- - spec/lib/rating_chgk_v2/rest/tournament_synch_requests_spec.rb
375
- - spec/lib/rating_chgk_v2/rest/tournament_types_spec.rb
376
- - spec/lib/rating_chgk_v2/rest/tournaments_spec.rb
377
- - spec/lib/rating_chgk_v2/rest/towns_spec.rb
378
- - spec/lib/rating_chgk_v2/rest/venue_types_spec.rb
379
- - spec/lib/rating_chgk_v2/rest/venues_spec.rb
380
- - spec/lib/rating_chgk_v2_spec.rb
381
- - spec/spec_helper.rb
382
- - spec/support/shared/paginated.rb
383
- - spec/support/test_client.rb
384
- - spec/support/vcr.rb
385
342
  homepage: https://github.com/bodrovis/rating-chgk-v2
386
343
  licenses:
387
344
  - MIT
388
345
  metadata:
389
- homepage_uri: https://github.com/bodrovis/rating-chgk-v2
390
346
  source_code_uri: https://github.com/bodrovis/rating-chgk-v2
391
347
  rubygems_mfa_required: 'true'
392
348
  wiki_uri: https://github.com/bodrovis/rating-chgk-v2/wiki
@@ -407,51 +363,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
407
363
  - !ruby/object:Gem::Version
408
364
  version: '0'
409
365
  requirements: []
410
- rubygems_version: 3.3.11
366
+ rubygems_version: 3.3.19
411
367
  signing_key:
412
368
  specification_version: 4
413
369
  summary: Ruby interface for the new CHGK rating API
414
- test_files:
415
- - spec/lib/rating_chgk_v2/collections/base_collection_spec.rb
416
- - spec/lib/rating_chgk_v2/collections/countries_collection_spec.rb
417
- - spec/lib/rating_chgk_v2/collections/player_seasons_collection_spec.rb
418
- - spec/lib/rating_chgk_v2/collections/player_tournaments_collection_spec.rb
419
- - spec/lib/rating_chgk_v2/collections/players_collection_spec.rb
420
- - spec/lib/rating_chgk_v2/collections/regions_collection_spec.rb
421
- - spec/lib/rating_chgk_v2/collections/releases_collection_spec.rb
422
- - spec/lib/rating_chgk_v2/collections/seasons_collection_spec.rb
423
- - spec/lib/rating_chgk_v2/collections/teams_collection_spec.rb
424
- - spec/lib/rating_chgk_v2/collections/tournaments_collection_spec.rb
425
- - spec/lib/rating_chgk_v2/collections/towns_collection_spec.rb
426
- - spec/lib/rating_chgk_v2/collections/venue_types_collection_spec.rb
427
- - spec/lib/rating_chgk_v2/collections/venues_collection_spec.rb
428
- - spec/lib/rating_chgk_v2/connection_spec.rb
429
- - spec/lib/rating_chgk_v2/endpoints/base_endpoint_spec.rb
430
- - spec/lib/rating_chgk_v2/error_spec.rb
431
- - spec/lib/rating_chgk_v2/models/country_model_spec.rb
432
- - spec/lib/rating_chgk_v2/models/player_model_spec.rb
433
- - spec/lib/rating_chgk_v2/models/season_model_spec.rb
434
- - spec/lib/rating_chgk_v2/models/team_model_spec.rb
435
- - spec/lib/rating_chgk_v2/models/tournament_model_spec.rb
436
- - spec/lib/rating_chgk_v2/models/venue_model_spec.rb
437
- - spec/lib/rating_chgk_v2/rest/authentication_token_spec.rb
438
- - spec/lib/rating_chgk_v2/rest/countries_spec.rb
439
- - spec/lib/rating_chgk_v2/rest/players_spec.rb
440
- - spec/lib/rating_chgk_v2/rest/regions_spec.rb
441
- - spec/lib/rating_chgk_v2/rest/releases_spec.rb
442
- - spec/lib/rating_chgk_v2/rest/seasons_spec.rb
443
- - spec/lib/rating_chgk_v2/rest/teams_spec.rb
444
- - spec/lib/rating_chgk_v2/rest/tournament_flags_spec.rb
445
- - spec/lib/rating_chgk_v2/rest/tournament_synch_appeals_spec.rb
446
- - spec/lib/rating_chgk_v2/rest/tournament_synch_controversials_spec.rb
447
- - spec/lib/rating_chgk_v2/rest/tournament_synch_requests_spec.rb
448
- - spec/lib/rating_chgk_v2/rest/tournament_types_spec.rb
449
- - spec/lib/rating_chgk_v2/rest/tournaments_spec.rb
450
- - spec/lib/rating_chgk_v2/rest/towns_spec.rb
451
- - spec/lib/rating_chgk_v2/rest/venue_types_spec.rb
452
- - spec/lib/rating_chgk_v2/rest/venues_spec.rb
453
- - spec/lib/rating_chgk_v2_spec.rb
454
- - spec/spec_helper.rb
455
- - spec/support/shared/paginated.rb
456
- - spec/support/test_client.rb
457
- - spec/support/vcr.rb
370
+ test_files: []
@@ -1,53 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::BaseCollection do
4
- let(:players) do
5
- described_class.new [{
6
- id: 1,
7
- name: 'Ivan',
8
- surname: 'Petrov'
9
- }, {
10
- id: 2,
11
- name: 'Petr',
12
- surname: 'Ivanov'
13
- }]
14
- end
15
-
16
- specify '#first' do
17
- stub_const "#{described_class}::MODEL", 'Player'
18
-
19
- player = players.first
20
- expect(player).to be_an_instance_of(RatingChgkV2::Models::PlayerModel)
21
- expect(player.id).to eq(1)
22
- end
23
-
24
- specify '#last' do
25
- stub_const "#{described_class}::MODEL", 'Player'
26
-
27
- player = players.last
28
- expect(player).to be_an_instance_of(RatingChgkV2::Models::PlayerModel)
29
- expect(player.id).to eq(2)
30
- end
31
-
32
- specify '#[]' do
33
- stub_const "#{described_class}::MODEL", 'Player'
34
-
35
- player = players[1]
36
- expect(player.id).to eq(2)
37
- end
38
-
39
- specify '#each' do
40
- stub_const "#{described_class}::MODEL", 'Player'
41
-
42
- klass = RatingChgkV2::Models::PlayerModel
43
-
44
- expect { |b| players.each(&b) }.to yield_successive_args(klass, klass)
45
- end
46
-
47
- specify '#map' do
48
- stub_const "#{described_class}::MODEL", 'Player'
49
-
50
- mapped = players.map(&:id)
51
- expect(mapped).to include(1, 2)
52
- end
53
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::CountriesCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::PlayerSeasonsCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::PlayerTournamentsCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::PlayersCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::RegionsCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::ReleasesCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::SeasonsCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::TeamsCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::TournamentsCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::TownsCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::VenueTypesCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Collections::VenuesCollection do
4
- it_behaves_like 'paginated'
5
- end
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Connection do
4
- let(:dummy) { Class.new { include RatingChgkV2::Connection }.new }
5
-
6
- before { RatingChgkV2.reset_client! }
7
-
8
- after { RatingChgkV2.reset_client! }
9
-
10
- it 'allows to customize timeouts' do
11
- custom_client = RatingChgkV2.client(params: {open_timeout: 100, timeout: 500})
12
- conn = dummy.connection custom_client
13
- expect(conn.options.timeout).to eq(500)
14
- expect(conn.options.open_timeout).to eq(100)
15
-
16
- custom_client.timeout = 300
17
- custom_client.open_timeout = 200
18
- another_conn = dummy.connection custom_client
19
- expect(another_conn.options.timeout).to eq(300)
20
- expect(another_conn.options.open_timeout).to eq(200)
21
- end
22
- end
@@ -1,15 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Endpoints::BaseEndpoint do
4
- subject { described_class.new test_client }
5
-
6
- let(:endpoint) { subject }
7
-
8
- it { is_expected.to respond_to(:do_get) }
9
- it { is_expected.to respond_to(:do_post) }
10
- it { is_expected.not_to respond_to(:very_wrong_method) }
11
-
12
- it 'raises an error when calling invalid methods' do
13
- expect { endpoint.very_wrong_method }.to raise_error(NoMethodError)
14
- end
15
- end
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Error do
4
- it 'raises NotFound for 404 status code' do
5
- expect do
6
- VCR.use_cassette('error/error_404') do
7
- test_client.player(3)
8
- end
9
- end.to raise_error(RatingChgkV2::Error::NotFound)
10
- end
11
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Models::CountryModel do
4
- let!(:country) do
5
- VCR.use_cassette('countries/country') do
6
- test_client.country 20
7
- end
8
- end
9
-
10
- specify '#update' do
11
- stub_request(:put, 'https://api.rating.chgk.net/countries/20').
12
- with(body: {name: 'Обновлённая страна'}).
13
- to_return(
14
- status: 200,
15
- body: '{"id":20,"name":"Обновлённая страна"}',
16
- headers: {}
17
- )
18
-
19
- updated_country = country.update name: 'Обновлённая страна'
20
- expect(updated_country).to be_an_instance_of(described_class)
21
- expect(updated_country.name).to eq('Обновлённая страна')
22
- expect(updated_country.id).to eq(20)
23
- end
24
-
25
- specify '#destroy' do
26
- stub_request(:delete, 'https://api.rating.chgk.net/countries/20').to_return(status: 204, body: '', headers: {})
27
-
28
- expect(country.destroy).to eq('')
29
- end
30
- end
@@ -1,59 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Models::PlayerModel do
4
- let(:player) do
5
- VCR.use_cassette('players/player') do
6
- test_client.player(player_id)
7
- end
8
- end
9
-
10
- let(:player_id) { 1110 }
11
-
12
- describe '#seasons' do
13
- it 'returns all seasons' do
14
- player_seasons = VCR.use_cassette('players/player_seasons') do
15
- player.seasons
16
- end
17
-
18
- expect(player_seasons).to be_an_instance_of(RatingChgkV2::Collections::PlayerSeasonsCollection)
19
- season = player_seasons.first
20
-
21
- expect(season.idplayer).to eq(player_id)
22
- expect(season.idseason).to eq(7)
23
- end
24
-
25
- it 'returns seasons by params' do
26
- season = VCR.use_cassette('players/player_seasons_params') do
27
- player.seasons itemsPerPage: 2, idseason: 8, idteam: 7456
28
- end.first
29
-
30
- expect(season.idplayer).to eq(player_id)
31
- expect(season.idseason).to eq(8)
32
- expect(season.idteam).to eq(7456)
33
- end
34
- end
35
-
36
- describe '#tournaments' do
37
- it 'returns all tournaments' do
38
- player_tournaments = VCR.use_cassette('players/player_tournaments') do
39
- player.tournaments
40
- end
41
-
42
- expect(player_tournaments).to be_an_instance_of(RatingChgkV2::Collections::PlayerTournamentsCollection)
43
- tour = player_tournaments.first
44
-
45
- expect(tour.idtournament).to eq(314)
46
- expect(tour.idteam).to eq(7121)
47
- end
48
-
49
- it 'returns tournaments by params' do
50
- tour = VCR.use_cassette('players/player_tournaments_params') do
51
- player.tournaments itemsPerPage: 2
52
- end.first
53
-
54
- expect(tour.idplayer).to eq(player_id)
55
- expect(tour.idtournament).to eq(314)
56
- expect(tour.idteam).to eq(7121)
57
- end
58
- end
59
- end
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Models::SeasonModel do
4
- let!(:season) do
5
- VCR.use_cassette('seasons/season') do
6
- test_client.season 5
7
- end
8
- end
9
-
10
- specify '#update' do
11
- data = {
12
- dateStart: '2021-02-05T19:37:45.004Z',
13
- dateEnd: '2021-02-05T19:37:45.004Z'
14
- }
15
-
16
- stub_request(:put, 'https://api.rating.chgk.net/seasons/5').
17
- with(body: data).
18
- to_return(
19
- status: 200,
20
- body: JSON.dump(data.merge({id: season.id})),
21
- headers: {}
22
- )
23
-
24
- updated_season = season.update data
25
- expect(updated_season).to be_an_instance_of(described_class)
26
- expect(updated_season.id).to eq(5)
27
- expect(updated_season.dateStart).to eq(data[:dateStart])
28
- expect(updated_season.dateEnd).to eq(data[:dateEnd])
29
- end
30
-
31
- specify '#destroy' do
32
- stub_request(:delete, 'https://api.rating.chgk.net/seasons/5').to_return(status: 204, body: '', headers: {})
33
-
34
- expect(season.destroy).to eq('')
35
- end
36
- end
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Models::TeamModel do
4
- let(:team_id) { 2 }
5
- let(:team) do
6
- VCR.use_cassette('teams/team') do
7
- test_client.team(team_id)
8
- end
9
- end
10
-
11
- describe '#seasons' do
12
- it 'returns seasons by params' do
13
- season = VCR.use_cassette('teams/team_seasons_params') do
14
- team.seasons idseason: 9
15
- end.first
16
-
17
- expect(season).to be_an_instance_of(RatingChgkV2::Models::PlayerSeasonModel)
18
- expect(season.idplayer).to eq(707)
19
- expect(season.idseason).to eq(9)
20
- expect(season.idteam).to eq(team_id)
21
- end
22
- end
23
-
24
- describe '#tournaments' do
25
- it 'returns tournaments by params' do
26
- tour = VCR.use_cassette('teams/team_tournaments_params') do
27
- team.tournaments pagination: true
28
- end[2]
29
-
30
- expect(tour).to be_an_instance_of(RatingChgkV2::Models::TeamTournamentModel)
31
- expect(tour.idtournament).to eq(8)
32
- expect(tour.idteam).to eq(team_id)
33
- end
34
- end
35
- end
@@ -1,38 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Models::TournamentModel do
4
- let(:tournament_id) { 7798 }
5
- let(:tournament) do
6
- VCR.use_cassette('tournaments/tournament') do
7
- test_client.tournament(tournament_id)
8
- end
9
- end
10
-
11
- specify '#appeals' do
12
- appeals = VCR.use_cassette('tournaments/appeals') do
13
- tournament.appeals
14
- end
15
-
16
- expect(appeals[0].id).to eq(12_153)
17
- expect(appeals[0].questionNumber).to eq(20)
18
- end
19
-
20
- specify '#requests' do
21
- requests = VCR.use_cassette('tournaments/requests') do
22
- tournament.requests
23
- end
24
-
25
- expect(requests[0].id).to eq(101_060)
26
- expect(requests[0].status).to eq('A')
27
- end
28
-
29
- specify '#results' do
30
- results = VCR.use_cassette('tournaments/results') do
31
- tournament.results includeTeamMembers: 1, includeMasksAndControversials: 1,
32
- includeTeamFlags: 1, includeRatingB: 1, town: 202
33
- end.first
34
-
35
- expect(results.team['id']).to eq(53_341)
36
- expect(results.position).to eq(1)
37
- end
38
- end
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Models::VenueModel do
4
- let!(:venue) do
5
- VCR.use_cassette('venues/venue') do
6
- test_client.venue 3601
7
- end
8
- end
9
-
10
- specify '#update' do
11
- stub_request(:put, 'https://api.rating.chgk.net/venues/3601').
12
- with(body: {name: 'Обновлённая'}).
13
- to_return(
14
- status: 201,
15
- body: '{"id":3601,"name":"Обновлённая"}',
16
- headers: {}
17
- )
18
-
19
- updated_venue = venue.update name: 'Обновлённая'
20
- expect(updated_venue).to be_an_instance_of(described_class)
21
- expect(updated_venue.name).to eq('Обновлённая')
22
- expect(updated_venue.id).to eq(3601)
23
- end
24
-
25
- specify '#destroy' do
26
- stub_request(:delete, 'https://api.rating.chgk.net/venues/3601').to_return(status: 204, body: '', headers: {})
27
-
28
- expect(venue.destroy).to eq('')
29
- end
30
- end
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.describe RatingChgkV2::Rest::AuthenticationToken do
4
- it 'raises 401 for incorrect email and password' do
5
- expect do
6
- VCR.use_cassette('authentication_token/token_401') do
7
- test_client.authentication_token email: 'fake@example.com', password: '123'
8
- end
9
- end.to raise_error(RatingChgkV2::Error::Unauthorized)
10
- end
11
-
12
- it 'returns token for correct email and password' do
13
- token_obj = VCR.use_cassette('authentication_token/token') do
14
- test_client.authentication_token email: ENV['CHGK_EMAIL'], password: ENV['CHGK_PASSWORD']
15
- end
16
-
17
- expect(token_obj.token).to eq('stubbed_token')
18
- end
19
- end