league_of_legends 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/league_of_legends/dto/champion_list.rb +1 -2
- data/lib/league_of_legends/dto/champion_stats.rb +1 -1
- data/lib/league_of_legends/dto/game.rb +1 -2
- data/lib/league_of_legends/dto/league.rb +27 -0
- data/lib/league_of_legends/dto/league_item.rb +32 -0
- data/lib/league_of_legends/dto/mini_series.rb +23 -0
- data/lib/league_of_legends/dto.rb +3 -0
- data/lib/league_of_legends/version.rb +1 -1
- data/spec/league_of_legends/dto/league_item_spec.rb +42 -0
- data/spec/league_of_legends/dto/league_spec.rb +104 -0
- data/spec/league_of_legends/dto/mini_series_spec.rb +26 -0
- metadata +11 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 21ccfade51ff560e544f548af350cb73be980487
|
4
|
+
data.tar.gz: e17006ccee7c79b70ae0418c427a0d566ce3cc97
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 37538fb217ff6aa93c291041e41fbffec9b884c31f6ec02543708bc4f7d4ba1bd49941d6033a855a1033e0a23e1f9ad036886616223951b0d72bf5773fc1ffdd
|
7
|
+
data.tar.gz: 18a64b71895689bdfd267af7006918e7a835d3dad82bb514219ddbc1c78a9c1a346fe86c7e24bac7d19a110ac1a04c53630c0232d5aaac71826dd16ef0f539f6
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'league_of_legends/dto'
|
2
|
+
|
3
|
+
module ::LeagueOfLegends
|
4
|
+
module DTO
|
5
|
+
class League < ::LeagueOfLegends::DTO::Base
|
6
|
+
|
7
|
+
def self.version
|
8
|
+
'v2.3'
|
9
|
+
end
|
10
|
+
|
11
|
+
attr_reader :entries, :name, :participant_id, :queue, :tier
|
12
|
+
|
13
|
+
def initialize json
|
14
|
+
attributes = build_attributes json
|
15
|
+
|
16
|
+
@entries = attributes[:entries].map do |entry|
|
17
|
+
::LeagueOfLegends::DTO::LeagueItem.new(entry)
|
18
|
+
end
|
19
|
+
@name = attributes[:name]
|
20
|
+
@participant_id = attributes[:participantId]
|
21
|
+
@queue = attributes[:queue]
|
22
|
+
@tier = attributes[:tier]
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'league_of_legends/dto'
|
2
|
+
|
3
|
+
module ::LeagueOfLegends
|
4
|
+
module DTO
|
5
|
+
class LeagueItem
|
6
|
+
|
7
|
+
def self.version
|
8
|
+
::LeagueOfLegends::DTO::League.version
|
9
|
+
end
|
10
|
+
|
11
|
+
attr_reader :is_fresh_blood, :is_hot_streak, :is_inactive, :is_veteran, :last_played, :league_name, :league_points, :mini_series, :player_or_team_id, :player_or_team_name, :queue_type, :rank, :tier, :wins
|
12
|
+
|
13
|
+
def initialize attributes
|
14
|
+
@is_fresh_blood = attributes[:isFreshBlood]
|
15
|
+
@is_hot_streak = attributes[:isHotStreak]
|
16
|
+
@is_inactive = attributes[:isInactive]
|
17
|
+
@is_veteran = attributes[:isVeteran]
|
18
|
+
@last_played = attributes[:lastPlayed]
|
19
|
+
@league_name = attributes[:leagueName]
|
20
|
+
@league_points = attributes[:leaguePoints]
|
21
|
+
@mini_series = ::LeagueOfLegends::DTO::MiniSeries.new(attributes[:miniSeries]) if attributes[:miniSeries]
|
22
|
+
@player_or_team_id = attributes[:playerOrTeamId]
|
23
|
+
@player_or_team_name = attributes[:playerOrTeamName]
|
24
|
+
@queue_type = attributes[:queueType]
|
25
|
+
@rank = attributes[:rank]
|
26
|
+
@tier = attributes[:tier]
|
27
|
+
@wins = attributes[:wins]
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'league_of_legends/dto'
|
2
|
+
|
3
|
+
module ::LeagueOfLegends
|
4
|
+
module DTO
|
5
|
+
class MiniSeries
|
6
|
+
|
7
|
+
def self.version
|
8
|
+
::LeagueOfLegends::DTO::League.version
|
9
|
+
end
|
10
|
+
|
11
|
+
attr_reader :losses, :progress, :target, :time_left_to_play_millis, :wins
|
12
|
+
|
13
|
+
def initialize attributes
|
14
|
+
@losses = attributes[:losses]
|
15
|
+
@progress = attributes[:progress]
|
16
|
+
@target = attributes[:target]
|
17
|
+
@time_left_to_play_millis = attributes[:timeLeftToPlayMillis]
|
18
|
+
@wins = attributes[:wins]
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -4,6 +4,9 @@ require 'league_of_legends/dto/champion'
|
|
4
4
|
require 'league_of_legends/dto/champion_list'
|
5
5
|
require 'league_of_legends/dto/champion_stats'
|
6
6
|
require 'league_of_legends/dto/game'
|
7
|
+
require 'league_of_legends/dto/league'
|
8
|
+
require 'league_of_legends/dto/league_item'
|
9
|
+
require 'league_of_legends/dto/mini_series'
|
7
10
|
require 'league_of_legends/dto/player'
|
8
11
|
require 'league_of_legends/dto/player_stats_summary'
|
9
12
|
require 'league_of_legends/dto/player_stats_summary_list'
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require_relative '../spec_helper'
|
2
|
+
|
3
|
+
describe ::LeagueOfLegends::DTO::LeagueItem do
|
4
|
+
|
5
|
+
let(:json) { {
|
6
|
+
isHotStreak: false,
|
7
|
+
isFreshBlood: true,
|
8
|
+
leagueName: "Miss Fortune\'s Weaponmasters",
|
9
|
+
isVeteran: false,
|
10
|
+
tier: "CHALLENGER",
|
11
|
+
lastPlayed: -1,
|
12
|
+
playerOrTeamId: "19331582",
|
13
|
+
leaguePoints: 248,
|
14
|
+
rank: "I",
|
15
|
+
isInactive: false,
|
16
|
+
queueType: "RANKED_SOLO_5x5",
|
17
|
+
playerOrTeamName: "Gripex",
|
18
|
+
wins: 85
|
19
|
+
} }
|
20
|
+
let(:dto){ described_class.new(json) }
|
21
|
+
|
22
|
+
it "has attributes" do
|
23
|
+
expect(dto.is_hot_streak).to be_false
|
24
|
+
expect(dto.is_fresh_blood).to be_true
|
25
|
+
expect(dto.league_name).to eq "Miss Fortune\'s Weaponmasters"
|
26
|
+
expect(dto.is_veteran).to be_false
|
27
|
+
expect(dto.tier).to eq "CHALLENGER"
|
28
|
+
expect(dto.last_played).to eq -1
|
29
|
+
expect(dto.player_or_team_id).to eq "19331582"
|
30
|
+
expect(dto.league_points).to eq 248
|
31
|
+
expect(dto.rank).to eq "I"
|
32
|
+
expect(dto.is_inactive).to be_false
|
33
|
+
expect(dto.queue_type).to eq "RANKED_SOLO_5x5"
|
34
|
+
expect(dto.player_or_team_name).to eq "Gripex"
|
35
|
+
expect(dto.wins).to eq 85
|
36
|
+
end
|
37
|
+
|
38
|
+
it "has a version" do
|
39
|
+
expect(described_class.version).to eq 'v2.3'
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
@@ -0,0 +1,104 @@
|
|
1
|
+
require_relative '../spec_helper'
|
2
|
+
|
3
|
+
describe ::LeagueOfLegends::DTO::League do
|
4
|
+
|
5
|
+
let(:json) { '{
|
6
|
+
"queue": "RANKED_SOLO_5x5",
|
7
|
+
"name": "Miss Fortune\'s Weaponmasters",
|
8
|
+
"entries": [
|
9
|
+
{
|
10
|
+
"isHotStreak": false,
|
11
|
+
"isFreshBlood": true,
|
12
|
+
"leagueName": "Miss Fortune\'s Weaponmasters",
|
13
|
+
"isVeteran": false,
|
14
|
+
"tier": "CHALLENGER",
|
15
|
+
"lastPlayed": -1,
|
16
|
+
"playerOrTeamId": "19331582",
|
17
|
+
"leaguePoints": 248,
|
18
|
+
"rank": "I",
|
19
|
+
"isInactive": false,
|
20
|
+
"queueType": "RANKED_SOLO_5x5",
|
21
|
+
"playerOrTeamName": "Gripex",
|
22
|
+
"wins": 85
|
23
|
+
},
|
24
|
+
{
|
25
|
+
"isHotStreak": false,
|
26
|
+
"isFreshBlood": true,
|
27
|
+
"leagueName": "Miss Fortune\'s Weaponmasters",
|
28
|
+
"isVeteran": false,
|
29
|
+
"tier": "CHALLENGER",
|
30
|
+
"lastPlayed": -1,
|
31
|
+
"playerOrTeamId": "22432605",
|
32
|
+
"leaguePoints": 79,
|
33
|
+
"rank": "I",
|
34
|
+
"isInactive": false,
|
35
|
+
"queueType": "RANKED_SOLO_5x5",
|
36
|
+
"playerOrTeamName": "Wygon",
|
37
|
+
"wins": 141
|
38
|
+
},
|
39
|
+
{
|
40
|
+
"isHotStreak": false,
|
41
|
+
"isFreshBlood": false,
|
42
|
+
"leagueName": "Miss Fortune\'s Weaponmasters",
|
43
|
+
"isVeteran": false,
|
44
|
+
"tier": "CHALLENGER",
|
45
|
+
"lastPlayed": -1,
|
46
|
+
"playerOrTeamId": "20313290",
|
47
|
+
"leaguePoints": 306,
|
48
|
+
"rank": "I",
|
49
|
+
"isInactive": false,
|
50
|
+
"queueType": "RANKED_SOLO_5x5",
|
51
|
+
"playerOrTeamName": "SK Zvanillan",
|
52
|
+
"wins": 66
|
53
|
+
},
|
54
|
+
{
|
55
|
+
"isHotStreak": false,
|
56
|
+
"isFreshBlood": false,
|
57
|
+
"leagueName": "Miss Fortune\'s Weaponmasters",
|
58
|
+
"isVeteran": true,
|
59
|
+
"tier": "CHALLENGER",
|
60
|
+
"lastPlayed": -1,
|
61
|
+
"playerOrTeamId": "39600294",
|
62
|
+
"leaguePoints": 664,
|
63
|
+
"rank": "I",
|
64
|
+
"isInactive": false,
|
65
|
+
"queueType": "RANKED_SOLO_5x5",
|
66
|
+
"playerOrTeamName": "Krebsen",
|
67
|
+
"wins": 107
|
68
|
+
},
|
69
|
+
{
|
70
|
+
"isHotStreak": false,
|
71
|
+
"isFreshBlood": false,
|
72
|
+
"leagueName": "Miss Fortune\'s Weaponmasters",
|
73
|
+
"isVeteran": false,
|
74
|
+
"tier": "CHALLENGER",
|
75
|
+
"lastPlayed": -1,
|
76
|
+
"playerOrTeamId": "20482323",
|
77
|
+
"leaguePoints": 274,
|
78
|
+
"rank": "I",
|
79
|
+
"isInactive": false,
|
80
|
+
"queueType": "RANKED_SOLO_5x5",
|
81
|
+
"playerOrTeamName": "Esito",
|
82
|
+
"wins": 121
|
83
|
+
}
|
84
|
+
],
|
85
|
+
"tier": "CHALLENGER"
|
86
|
+
}' }
|
87
|
+
let(:dto){ described_class.new(json) }
|
88
|
+
|
89
|
+
it "has attributes" do
|
90
|
+
expect(dto.queue).to eq "RANKED_SOLO_5x5"
|
91
|
+
expect(dto.name).to eq "Miss Fortune\'s Weaponmasters"
|
92
|
+
expect(dto.entries).to be_an_instance_of Array
|
93
|
+
expect(dto.entries.count).to eq 5
|
94
|
+
dto.entries.each do |entry|
|
95
|
+
expect(entry).to be_an_instance_of ::LeagueOfLegends::DTO::LeagueItem
|
96
|
+
end
|
97
|
+
expect(dto.tier).to eq "CHALLENGER"
|
98
|
+
end
|
99
|
+
|
100
|
+
it "has a version" do
|
101
|
+
expect(described_class.version).to eq 'v2.3'
|
102
|
+
end
|
103
|
+
|
104
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require_relative '../spec_helper'
|
2
|
+
|
3
|
+
describe ::LeagueOfLegends::DTO::MiniSeries do
|
4
|
+
|
5
|
+
let(:json) { { #made up
|
6
|
+
losses: 123,
|
7
|
+
progress: [],
|
8
|
+
target: 123,
|
9
|
+
timeLeftToPlayMillis: 123123,
|
10
|
+
wins: 123
|
11
|
+
} }
|
12
|
+
let(:dto){ described_class.new(json) }
|
13
|
+
|
14
|
+
it "has attributes" do
|
15
|
+
expect(dto.losses).to eq 123
|
16
|
+
expect(dto.progress).to be_an_instance_of Array
|
17
|
+
expect(dto.target).to eq 123
|
18
|
+
expect(dto.time_left_to_play_millis).to eq 123123
|
19
|
+
expect(dto.wins).to eq 123
|
20
|
+
end
|
21
|
+
|
22
|
+
it "has a version" do
|
23
|
+
expect(described_class.version).to eq 'v2.3'
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: league_of_legends
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Francisco Orvalho
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-02-
|
11
|
+
date: 2014-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -113,6 +113,9 @@ files:
|
|
113
113
|
- lib/league_of_legends/dto/champion_list.rb
|
114
114
|
- lib/league_of_legends/dto/champion_stats.rb
|
115
115
|
- lib/league_of_legends/dto/game.rb
|
116
|
+
- lib/league_of_legends/dto/league.rb
|
117
|
+
- lib/league_of_legends/dto/league_item.rb
|
118
|
+
- lib/league_of_legends/dto/mini_series.rb
|
116
119
|
- lib/league_of_legends/dto/player.rb
|
117
120
|
- lib/league_of_legends/dto/player_stats_summary.rb
|
118
121
|
- lib/league_of_legends/dto/player_stats_summary_list.rb
|
@@ -141,6 +144,9 @@ files:
|
|
141
144
|
- spec/league_of_legends/dto/champion_spec.rb
|
142
145
|
- spec/league_of_legends/dto/champion_stats_spec.rb
|
143
146
|
- spec/league_of_legends/dto/game_spec.rb
|
147
|
+
- spec/league_of_legends/dto/league_item_spec.rb
|
148
|
+
- spec/league_of_legends/dto/league_spec.rb
|
149
|
+
- spec/league_of_legends/dto/mini_series_spec.rb
|
144
150
|
- spec/league_of_legends/dto/player_spec.rb
|
145
151
|
- spec/league_of_legends/dto/player_stats_summary_list_spec.rb
|
146
152
|
- spec/league_of_legends/dto/player_stats_summary_spec.rb
|
@@ -193,6 +199,9 @@ test_files:
|
|
193
199
|
- spec/league_of_legends/dto/champion_spec.rb
|
194
200
|
- spec/league_of_legends/dto/champion_stats_spec.rb
|
195
201
|
- spec/league_of_legends/dto/game_spec.rb
|
202
|
+
- spec/league_of_legends/dto/league_item_spec.rb
|
203
|
+
- spec/league_of_legends/dto/league_spec.rb
|
204
|
+
- spec/league_of_legends/dto/mini_series_spec.rb
|
196
205
|
- spec/league_of_legends/dto/player_spec.rb
|
197
206
|
- spec/league_of_legends/dto/player_stats_summary_list_spec.rb
|
198
207
|
- spec/league_of_legends/dto/player_stats_summary_spec.rb
|
@@ -207,4 +216,3 @@ test_files:
|
|
207
216
|
- spec/league_of_legends/request/stats/by_summoner/summary_spec.rb
|
208
217
|
- spec/league_of_legends/spec_helper.rb
|
209
218
|
- spec/setup_vcr.rb
|
210
|
-
has_rdoc:
|