league_of_legends 0.0.5 → 0.0.6
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/raw_stats.rb +20 -1
- data/lib/league_of_legends/dto/recent_games.rb +1 -1
- data/lib/league_of_legends/request/game/by_summoner/recent.rb +30 -0
- data/lib/league_of_legends/request/mapper.rb +6 -0
- data/lib/league_of_legends/request.rb +2 -0
- data/lib/league_of_legends/version.rb +1 -1
- data/spec/fixtures/vcr_cassettes/game_spec.yml +44 -0
- data/spec/league_of_legends/dto/game_spec.rb +39 -15
- data/spec/league_of_legends/dto/player_spec.rb +4 -5
- data/spec/league_of_legends/dto/raw_stats_spec.rb +111 -79
- data/spec/league_of_legends/dto/recent_games_spec.rb +12 -3
- data/spec/league_of_legends/request/game/by_summoner/recent_spec.rb +25 -0
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eb24c25de66e850d9dd608cd235504806d62ed49
|
4
|
+
data.tar.gz: 62d67bfae1e98d474303a269d424be00a87385b6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6510780255a3e6ad7745438f0c66828dafce5d2b1371a7c93d4dcc1f7ae3b5e8a1b6b8f76e7213a15a7d241e161b13aa020fe57f3bf42cb8f253ca6734747e1a
|
7
|
+
data.tar.gz: a5ea29655706338120f4f560505219142fc7bcba7623f7e9da82d9ccfa593e8745e86bd940778ce2029586b6135281cd6348045ae276956c5378abe6ec892d18
|
@@ -6,7 +6,26 @@ module ::LeagueOfLegends
|
|
6
6
|
::LeagueOfLegends::DTO::RecentGames.version
|
7
7
|
end
|
8
8
|
|
9
|
-
attr_reader
|
9
|
+
attr_reader :assists, :barracks_killed, :champions_killed, :combat_player_score,
|
10
|
+
:consumables_purchased, :damage_dealt_player, :double_kills, :first_blood, :gold,
|
11
|
+
:gold_earned, :gold_spent, :item_0, :item_1, :item_2, :item_3, :item_4, :item_5,
|
12
|
+
:item_6, :items_purchased, :killing_sprees, :largest_critical_strike,
|
13
|
+
:largest_killing_spree, :largest_multi_kill, :legendary_items_created, :level,
|
14
|
+
:magic_damage_dealt_player, :magic_damage_dealt_to_champions, :magic_damage_taken,
|
15
|
+
:minions_denied, :minions_killed, :neutral_minions_killed,
|
16
|
+
:neutral_minions_killed_enemy_jungle, :neutral_minions_killed_your_jungle,
|
17
|
+
:nexus_killed, :node_capture, :node_capture_assist, :node_neutralize,
|
18
|
+
:node_neutralize_assist, :num_deaths, :num_items_bought, :objective_player_score,
|
19
|
+
:penta_kills, :physical_damage_dealt_player, :physical_damage_dealt_to_champions,
|
20
|
+
:physical_damage_taken, :quadra_kills, :sight_wards_bought, :spell_1_cast,
|
21
|
+
:spell_2_cast, :spell_3_cast, :spell_4_cast, :summon_spell_1_cast,
|
22
|
+
:summon_spell_2_cast, :super_monster_killed, :team, :team_objective,
|
23
|
+
:time_played, :total_damage_dealt, :total_damage_dealt_to_champions,
|
24
|
+
:total_damage_taken, :total_heal, :total_player_score, :total_score_rank,
|
25
|
+
:total_time_crowd_control_dealt, :total_units_healed, :triple_kills,
|
26
|
+
:true_damage_dealt_player, :true_damage_dealt_to_champions, :true_damage_taken,
|
27
|
+
:turrets_killed, :unreal_kills, :victory_point_total, :vision_wards_bought,
|
28
|
+
:ward_killed, :ward_placed, :win
|
10
29
|
|
11
30
|
def initialize attributes
|
12
31
|
@assists = attributes[:assists].to_i
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'league_of_legends'
|
2
|
+
|
3
|
+
module ::LeagueOfLegends
|
4
|
+
module Request
|
5
|
+
module Game
|
6
|
+
module BySummoner
|
7
|
+
class Recent < ::LeagueOfLegends::Request::Base
|
8
|
+
|
9
|
+
attr_reader :summoner_id
|
10
|
+
|
11
|
+
def initialize api, summoner_id, options = {}
|
12
|
+
super(api, options)
|
13
|
+
@summoner_id = summoner_id
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.dto_class
|
17
|
+
::LeagueOfLegends::DTO::RecentGames
|
18
|
+
end
|
19
|
+
|
20
|
+
protected
|
21
|
+
|
22
|
+
def base_url
|
23
|
+
super << "game/by-summoner/#{summoner_id}/recent"
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -27,9 +27,15 @@ module ::LeagueOfLegends
|
|
27
27
|
summoner_stats_summary: {
|
28
28
|
class: ::LeagueOfLegends::Request::Stats::BySummoner::Summary,
|
29
29
|
},
|
30
|
+
summoner_stats_ranked: {
|
31
|
+
class: ::LeagueOfLegends::Request::Stats::BySummoner::Ranked,
|
32
|
+
},
|
30
33
|
champions: {
|
31
34
|
class: ::LeagueOfLegends::Request::Champion,
|
32
35
|
},
|
36
|
+
recent_games: {
|
37
|
+
class: ::LeagueOfLegends::Request::Game::BySummoner::Recent,
|
38
|
+
},
|
33
39
|
}
|
34
40
|
end
|
35
41
|
|
@@ -3,5 +3,7 @@ require 'league_of_legends/request/base'
|
|
3
3
|
require 'league_of_legends/request/champion'
|
4
4
|
require 'league_of_legends/request/mapper'
|
5
5
|
|
6
|
+
require 'league_of_legends/request/game/by_summoner/recent'
|
7
|
+
|
6
8
|
require 'league_of_legends/request/stats/by_summoner/summary'
|
7
9
|
require 'league_of_legends/request/stats/by_summoner/ranked'
|
@@ -0,0 +1,44 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://prod.api.pvp.net/api/lol/euw/v1.3/game/by-summoner/50519866/recent?api_key=a1a1a1a1-a1a1-a1a1-a1a1-a1a1a1a1a1a1
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept-Encoding:
|
11
|
+
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
12
|
+
Accept:
|
13
|
+
- '*/*'
|
14
|
+
User-Agent:
|
15
|
+
- Ruby
|
16
|
+
Host:
|
17
|
+
- prod.api.pvp.net
|
18
|
+
response:
|
19
|
+
status:
|
20
|
+
code: 200
|
21
|
+
message: OK
|
22
|
+
headers:
|
23
|
+
Access-Control-Allow-Headers:
|
24
|
+
- Content-Type
|
25
|
+
Access-Control-Allow-Methods:
|
26
|
+
- GET, POST, DELETE, PUT
|
27
|
+
Access-Control-Allow-Origin:
|
28
|
+
- '*'
|
29
|
+
Content-Type:
|
30
|
+
- application/json;charset=UTF-8
|
31
|
+
Date:
|
32
|
+
- Thu, 13 Feb 2014 02:46:26 GMT
|
33
|
+
Server:
|
34
|
+
- Jetty(9.1.0.v20131115)
|
35
|
+
Transfer-Encoding:
|
36
|
+
- chunked
|
37
|
+
Connection:
|
38
|
+
- keep-alive
|
39
|
+
body:
|
40
|
+
encoding: UTF-8
|
41
|
+
string: '{"summonerId":50519866,"games":[{"gameId":1316392770,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":200,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391913992873,"fellowPlayers":[{"summonerId":46493314,"teamId":100,"championId":7},{"summonerId":49460388,"teamId":200,"championId":222},{"summonerId":52345403,"teamId":100,"championId":34},{"summonerId":19474335,"teamId":200,"championId":37},{"summonerId":46825692,"teamId":100,"championId":222},{"summonerId":20901501,"teamId":100,"championId":26},{"summonerId":49574516,"teamId":200,"championId":1},{"summonerId":38380347,"teamId":100,"championId":77},{"summonerId":32957220,"teamId":200,"championId":77}],"stats":{"level":12,"goldEarned":6372,"numDeaths":6,"minionsKilled":76,"goldSpent":5375,"totalDamageDealt":67406,"totalDamageTaken":19667,"team":200,"win":false,"neutralMinionsKilled":8,"physicalDamageDealtPlayer":64404,"magicDamageDealtPlayer":3002,"physicalDamageTaken":7819,"magicDamageTaken":11789,"largestCriticalStrike":327,"timePlayed":1965,"totalHeal":720,"totalUnitsHealed":1,"assists":1,"item0":1055,"item1":1051,"item2":3072,"item3":1001,"item4":3093,"item5":1042,"item6":3350,"magicDamageDealtToChampions":1575,"physicalDamageDealtToChampions":10703,"totalDamageDealtToChampions":12278,"trueDamageTaken":58,"wardPlaced":4,"neutralMinionsKilledYourJungle":8,"totalTimeCrowdControlDealt":534}},{"gameId":1316359666,"invalid":false,"gameMode":"ARAM","gameType":"MATCHED_GAME","subType":"ARAM_UNRANKED_5x5","mapId":12,"teamId":100,"championId":60,"spell1":6,"spell2":7,"level":11,"createDate":1391911434692,"fellowPlayers":[{"summonerId":42852740,"teamId":200,"championId":11},{"summonerId":37107501,"teamId":200,"championId":121},{"summonerId":38367203,"teamId":200,"championId":267},{"summonerId":51749178,"teamId":100,"championId":54},{"summonerId":39333491,"teamId":200,"championId":22},{"summonerId":37107489,"teamId":200,"championId":99},{"summonerId":41532651,"teamId":100,"championId":64},{"summonerId":49574516,"teamId":100,"championId":61},{"summonerId":27490746,"teamId":100,"championId":15}],"stats":{"level":16,"goldEarned":8523,"numDeaths":7,"minionsKilled":26,"championsKilled":1,"goldSpent":7440,"totalDamageDealt":26390,"totalDamageTaken":14550,"team":100,"win":false,"largestMultiKill":1,"physicalDamageDealtPlayer":7079,"magicDamageDealtPlayer":19310,"physicalDamageTaken":6504,"magicDamageTaken":7924,"timePlayed":1333,"totalHeal":2506,"totalUnitsHealed":7,"assists":5,"item0":3001,"item1":2003,"item2":3136,"item3":1001,"item4":3089,"item6":2052,"magicDamageDealtToChampions":5234,"physicalDamageDealtToChampions":980,"totalDamageDealtToChampions":6215,"trueDamageTaken":122,"totalTimeCrowdControlDealt":16}},{"gameId":1316339805,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":30,"spell1":21,"spell2":6,"level":11,"createDate":1391909674553,"fellowPlayers":[{"summonerId":309763,"teamId":200,"championId":119},{"summonerId":41595817,"teamId":200,"championId":55},{"summonerId":50378000,"teamId":200,"championId":11},{"summonerId":48911186,"teamId":200,"championId":75},{"summonerId":52144394,"teamId":100,"championId":24},{"summonerId":51680198,"teamId":200,"championId":60},{"summonerId":40460673,"teamId":100,"championId":29},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":27490746,"teamId":100,"championId":17}],"stats":{"level":14,"goldEarned":6970,"numDeaths":5,"minionsKilled":60,"championsKilled":3,"goldSpent":5655,"totalDamageDealt":56351,"totalDamageTaken":10133,"team":100,"win":true,"neutralMinionsKilled":8,"largestMultiKill":1,"physicalDamageDealtPlayer":13885,"magicDamageDealtPlayer":42466,"physicalDamageTaken":5803,"magicDamageTaken":3581,"timePlayed":1734,"assists":5,"item0":1052,"item1":2003,"item2":3040,"item3":1026,"item4":1001,"item5":1058,"item6":3350,"magicDamageDealtToChampions":9617,"physicalDamageDealtToChampions":1129,"totalDamageDealtToChampions":10746,"trueDamageTaken":748,"neutralMinionsKilledYourJungle":8,"totalTimeCrowdControlDealt":333}},{"gameId":1316310555,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391906769228,"fellowPlayers":[{"summonerId":42963859,"teamId":200,"championId":23},{"summonerId":52518093,"teamId":200,"championId":11},{"summonerId":52526851,"teamId":100,"championId":80},{"summonerId":47067555,"teamId":200,"championId":121},{"summonerId":50911954,"teamId":100,"championId":121},{"summonerId":50930124,"teamId":100,"championId":75},{"summonerId":44533004,"teamId":200,"championId":10},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":51317797,"teamId":200,"championId":19}],"stats":{"level":15,"goldEarned":9574,"numDeaths":9,"minionsKilled":109,"championsKilled":5,"goldSpent":6700,"totalDamageDealt":92515,"totalDamageTaken":21869,"killingSprees":1,"largestKillingSpree":2,"team":100,"win":false,"neutralMinionsKilled":5,"largestMultiKill":1,"physicalDamageDealtPlayer":77059,"magicDamageDealtPlayer":15456,"physicalDamageTaken":14502,"magicDamageTaken":6939,"largestCriticalStrike":349,"timePlayed":2107,"totalHeal":970,"totalUnitsHealed":1,"assists":3,"item0":1055,"item1":2003,"item2":3006,"item3":3072,"item4":3087,"item6":3350,"magicDamageDealtToChampions":4412,"physicalDamageDealtToChampions":13580,"totalDamageDealtToChampions":17993,"trueDamageTaken":427,"wardPlaced":2,"neutralMinionsKilledYourJungle":5,"totalTimeCrowdControlDealt":746}},{"gameId":1316258305,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":200,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391904184886,"fellowPlayers":[{"summonerId":50741248,"teamId":200,"championId":98},{"summonerId":51845718,"teamId":100,"championId":11},{"summonerId":51942528,"teamId":200,"championId":15},{"summonerId":52513745,"teamId":200,"championId":60},{"summonerId":52778920,"teamId":100,"championId":119},{"summonerId":48887221,"teamId":100,"championId":91},{"summonerId":49657256,"teamId":100,"championId":1},{"summonerId":49574516,"teamId":200,"championId":1},{"summonerId":52416209,"teamId":100,"championId":23}],"stats":{"level":10,"goldEarned":5885,"numDeaths":2,"minionsKilled":59,"championsKilled":5,"goldSpent":3250,"totalDamageDealt":42710,"totalDamageTaken":8415,"doubleKills":1,"killingSprees":1,"largestKillingSpree":4,"team":200,"win":true,"neutralMinionsKilled":3,"largestMultiKill":2,"physicalDamageDealtPlayer":41100,"magicDamageDealtPlayer":1609,"physicalDamageTaken":5918,"magicDamageTaken":1847,"largestCriticalStrike":279,"timePlayed":1217,"totalHeal":656,"totalUnitsHealed":1,"assists":1,"item0":1055,"item1":1038,"item2":3006,"item3":1053,"item4":3093,"item6":3350,"magicDamageDealtToChampions":1025,"physicalDamageDealtToChampions":3871,"totalDamageDealtToChampions":4897,"trueDamageTaken":650,"wardPlaced":2,"neutralMinionsKilledYourJungle":3,"totalTimeCrowdControlDealt":338}},{"gameId":1316148661,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":121,"spell1":21,"spell2":6,"level":11,"createDate":1391902184432,"fellowPlayers":[{"summonerId":52487343,"teamId":200,"championId":61},{"summonerId":46434425,"teamId":100,"championId":55},{"summonerId":46937748,"teamId":200,"championId":60},{"summonerId":29301135,"teamId":200,"championId":121},{"summonerId":52218624,"teamId":100,"championId":98},{"summonerId":51840637,"teamId":200,"championId":22},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":44641636,"teamId":100,"championId":54},{"summonerId":51865487,"teamId":200,"championId":157}],"stats":{"level":18,"goldEarned":11892,"numDeaths":5,"minionsKilled":132,"goldSpent":7307,"totalDamageDealt":148847,"totalDamageTaken":25442,"team":100,"win":true,"neutralMinionsKilled":37,"physicalDamageDealtPlayer":147954,"magicDamageDealtPlayer":446,"physicalDamageTaken":22017,"magicDamageTaken":3198,"timePlayed":2614,"totalHeal":5994,"totalUnitsHealed":1,"assists":6,"item0":3042,"item1":3134,"item2":3158,"item3":3156,"item4":1053,"item6":3352,"sightWardsBought":1,"magicDamageDealtToChampions":446,"physicalDamageDealtToChampions":4885,"totalDamageDealtToChampions":5387,"trueDamageDealtPlayer":446,"trueDamageDealtToChampions":56,"trueDamageTaken":226,"wardPlaced":1,"neutralMinionsKilledEnemyJungle":7,"neutralMinionsKilledYourJungle":30,"totalTimeCrowdControlDealt":643}},{"gameId":1316088808,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":30,"spell1":21,"spell2":6,"level":11,"createDate":1391899006603,"fellowPlayers":[{"summonerId":45966471,"teamId":100,"championId":64},{"summonerId":45882920,"teamId":200,"championId":75},{"summonerId":51686205,"teamId":200,"championId":10},{"summonerId":49161030,"teamId":200,"championId":21},{"summonerId":45833001,"teamId":200,"championId":60},{"summonerId":52406766,"teamId":100,"championId":121},{"summonerId":40916861,"teamId":200,"championId":267},{"summonerId":46771771,"teamId":100,"championId":17},{"summonerId":49574516,"teamId":100,"championId":1}],"stats":{"level":13,"goldEarned":5648,"numDeaths":5,"minionsKilled":76,"championsKilled":1,"goldSpent":4860,"totalDamageDealt":57262,"totalDamageTaken":14485,"team":100,"win":false,"neutralMinionsKilled":1,"largestMultiKill":1,"physicalDamageDealtPlayer":8427,"magicDamageDealtPlayer":48834,"physicalDamageTaken":7498,"magicDamageTaken":6987,"timePlayed":1736,"assists":2,"item0":1001,"item1":1052,"item2":3003,"item3":1028,"item4":1026,"item6":3350,"magicDamageDealtToChampions":8333,"physicalDamageDealtToChampions":414,"totalDamageDealtToChampions":8748,"wardPlaced":5,"neutralMinionsKilledEnemyJungle":1,"totalTimeCrowdControlDealt":100}},{"gameId":1315880573,"invalid":false,"gameMode":"CLASSIC","gameType":"CUSTOM_GAME","subType":"NONE","mapId":1,"teamId":100,"championId":30,"spell1":21,"spell2":6,"level":11,"createDate":1391896857661,"fellowPlayers":[{"summonerId":49574516,"teamId":100,"championId":1}],"stats":{"level":18,"goldEarned":13161,"numDeaths":3,"barracksKilled":1,"turretsKilled":1,"minionsKilled":100,"championsKilled":8,"goldSpent":12710,"totalDamageDealt":132620,"totalDamageTaken":19204,"doubleKills":1,"killingSprees":1,"largestKillingSpree":8,"team":100,"win":true,"neutralMinionsKilled":23,"largestMultiKill":2,"physicalDamageDealtPlayer":28065,"magicDamageDealtPlayer":104555,"physicalDamageTaken":12800,"magicDamageTaken":5998,"timePlayed":2764,"assists":7,"item0":3020,"item1":3116,"item2":3089,"item3":3027,"item4":3135,"item6":3350,"magicDamageDealtToChampions":26419,"physicalDamageDealtToChampions":2505,"totalDamageDealtToChampions":28924,"trueDamageTaken":405,"wardPlaced":3,"neutralMinionsKilledEnemyJungle":11,"neutralMinionsKilledYourJungle":12,"totalTimeCrowdControlDealt":234}},{"gameId":1315745391,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":200,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391893281615,"fellowPlayers":[{"summonerId":52309508,"teamId":100,"championId":75},{"summonerId":48904402,"teamId":200,"championId":17},{"summonerId":51854975,"teamId":200,"championId":55},{"summonerId":52582062,"teamId":100,"championId":267},{"summonerId":51661064,"teamId":100,"championId":8},{"summonerId":49574516,"teamId":200,"championId":1},{"summonerId":25677141,"teamId":100,"championId":121},{"summonerId":52594175,"teamId":100,"championId":15},{"summonerId":21036920,"teamId":200,"championId":121}],"stats":{"level":15,"goldEarned":9201,"numDeaths":6,"minionsKilled":111,"championsKilled":1,"goldSpent":4560,"totalDamageDealt":100517,"totalDamageTaken":16506,"team":200,"win":false,"neutralMinionsKilled":9,"largestMultiKill":1,"physicalDamageDealtPlayer":82840,"magicDamageDealtPlayer":17677,"physicalDamageTaken":10901,"magicDamageTaken":5053,"largestCriticalStrike":248,"timePlayed":2232,"totalHeal":1040,"totalUnitsHealed":1,"assists":6,"item0":1055,"item1":3046,"item2":3006,"item3":1053,"item4":3087,"item6":3350,"magicDamageDealtToChampions":4085,"physicalDamageDealtToChampions":8305,"totalDamageDealtToChampions":12391,"trueDamageTaken":551,"wardPlaced":8,"neutralMinionsKilledEnemyJungle":1,"neutralMinionsKilledYourJungle":8,"totalTimeCrowdControlDealt":629}},{"gameId":1315589138,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391890669788,"fellowPlayers":[{"summonerId":41791484,"teamId":200,"championId":24},{"summonerId":52531406,"teamId":200,"championId":30},{"summonerId":51319422,"teamId":100,"championId":24},{"summonerId":52338623,"teamId":200,"championId":20},{"summonerId":50943779,"teamId":200,"championId":23},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":42617709,"teamId":100,"championId":238},{"summonerId":52148831,"teamId":200,"championId":22},{"summonerId":21036920,"teamId":100,"championId":121}],"stats":{"level":18,"goldEarned":19512,"numDeaths":17,"turretsKilled":1,"minionsKilled":176,"championsKilled":9,"goldSpent":15225,"totalDamageDealt":222425,"totalDamageTaken":38272,"killingSprees":3,"largestKillingSpree":3,"team":100,"win":true,"neutralMinionsKilled":21,"largestMultiKill":1,"physicalDamageDealtPlayer":193578,"magicDamageDealtPlayer":28098,"physicalDamageTaken":18684,"magicDamageTaken":19007,"largestCriticalStrike":701,"timePlayed":3480,"totalHeal":1062,"totalUnitsHealed":1,"assists":13,"item0":3031,"item1":3153,"item2":3251,"item3":3087,"item4":3035,"item5":3102,"item6":3350,"magicDamageDealtToChampions":5344,"physicalDamageDealtToChampions":16669,"totalDamageDealtToChampions":22014,"trueDamageDealtPlayer":748,"trueDamageTaken":580,"wardPlaced":7,"neutralMinionsKilledEnemyJungle":5,"neutralMinionsKilledYourJungle":16,"totalTimeCrowdControlDealt":1283}}]}'
|
42
|
+
http_version:
|
43
|
+
recorded_at: Thu, 13 Feb 2014 02:46:30 GMT
|
44
|
+
recorded_with: VCR 2.8.0
|
@@ -2,31 +2,55 @@ require_relative '../spec_helper'
|
|
2
2
|
|
3
3
|
describe ::LeagueOfLegends::DTO::Game do
|
4
4
|
|
5
|
-
let(:json) {
|
5
|
+
let(:json) { {
|
6
|
+
:gameId => 1316392770,
|
7
|
+
:invalid => false,
|
8
|
+
:gameMode => "CLASSIC",
|
9
|
+
:gameType => "MATCHED_GAME",
|
10
|
+
:subType => "NORMAL",
|
11
|
+
:mapId => 1,
|
12
|
+
:teamId => 200,
|
13
|
+
:championId => 22,
|
14
|
+
:spell1 => 21,
|
15
|
+
:spell2 => 6,
|
16
|
+
:level => 11,
|
17
|
+
:createDate => 1391913992873,
|
18
|
+
:fellowPlayers => [
|
19
|
+
{ :summonerId => 46493314, :teamId => 100, :championId => 7 },
|
20
|
+
{ :summonerId => 49460388, :teamId => 200, :championId => 222 },
|
21
|
+
{ :summonerId => 52345403, :teamId => 100, :championId => 34 },
|
22
|
+
{ :summonerId => 19474335, :teamId => 200, :championId => 37 },
|
23
|
+
{ :summonerId => 46825692, :teamId => 100, :championId => 222 },
|
24
|
+
{ :summonerId => 20901501, :teamId => 100, :championId => 26 },
|
25
|
+
{ :summonerId => 49574516, :teamId => 200, :championId => 1 },
|
26
|
+
{ :summonerId => 38380347, :teamId => 100, :championId => 77 },
|
27
|
+
{ :summonerId => 32957220, :teamId => 200, :championId => 77 }
|
28
|
+
],
|
29
|
+
:stats => { :level => 12, :goldEarned => 6372, :numDeaths => 6, :minionsKilled => 76, :goldSpent => 5375, :totalDamageDealt => 67406, :totalDamageTaken => 19667, :team => 200, :win => false, :neutralMinionsKilled => 8, :physicalDamageDealtPlayer => 64404, :magicDamageDealtPlayer => 3002, :physicalDamageTaken => 7819, :magicDamageTaken => 11789, :largestCriticalStrike => 327, :timePlayed => 1965, :totalHeal => 720, :totalUnitsHealed => 1, :assists => 1, :item0 => 1055, :item1 => 1051, :item2 => 3072, :item3 => 1001, :item4 => 3093, :item5 => 1042, :item6 => 3350, :magicDamageDealtToChampions => 1575, :physicalDamageDealtToChampions => 10703, :totalDamageDealtToChampions => 12278, :trueDamageTaken => 58, :wardPlaced => 4, :neutralMinionsKilledYourJungle => 8, :totalTimeCrowdControlDealt => 534 }
|
30
|
+
} }
|
6
31
|
let(:dto) { described_class.new(json) }
|
7
32
|
|
8
33
|
it "has attributes" do
|
9
|
-
|
10
|
-
expect(dto.
|
11
|
-
expect(dto.create_date).to eq Time.at(1/1000)
|
34
|
+
expect(dto.champion_id).to eq 22
|
35
|
+
expect(dto.create_date).to eq Time.at(1391913992873/1000)
|
12
36
|
|
13
37
|
expect(dto.fellow_players).to be_an_instance_of Array
|
14
|
-
expect(dto.fellow_players.size).to eq
|
38
|
+
expect(dto.fellow_players.size).to eq 9
|
15
39
|
dto.fellow_players.each do |player|
|
16
40
|
expect(player).to be_an_instance_of ::LeagueOfLegends::DTO::Player
|
17
41
|
end
|
18
42
|
|
19
|
-
expect(dto.game_id).to eq
|
20
|
-
expect(dto.game_mode).to eq
|
21
|
-
expect(dto.game_type).to eq
|
22
|
-
expect(dto.invalid).to
|
23
|
-
expect(dto.level).to eq
|
24
|
-
expect(dto.map_id).to eq
|
25
|
-
expect(dto.spell_1).to eq
|
26
|
-
expect(dto.spell_2).to eq
|
43
|
+
expect(dto.game_id).to eq 1316392770
|
44
|
+
expect(dto.game_mode).to eq 'CLASSIC'
|
45
|
+
expect(dto.game_type).to eq 'MATCHED_GAME'
|
46
|
+
expect(dto.invalid).to be_false
|
47
|
+
expect(dto.level).to eq 11
|
48
|
+
expect(dto.map_id).to eq 1
|
49
|
+
expect(dto.spell_1).to eq 21
|
50
|
+
expect(dto.spell_2).to eq 6
|
27
51
|
expect(dto.stats).to be_an_instance_of ::LeagueOfLegends::DTO::RawStats
|
28
|
-
expect(dto.sub_type).to eq
|
29
|
-
expect(dto.team_id).to eq
|
52
|
+
expect(dto.sub_type).to eq 'NORMAL'
|
53
|
+
expect(dto.team_id).to eq 200
|
30
54
|
end
|
31
55
|
|
32
56
|
it "has a version" do
|
@@ -2,14 +2,13 @@ require_relative '../spec_helper'
|
|
2
2
|
|
3
3
|
describe ::LeagueOfLegends::DTO::Player do
|
4
4
|
|
5
|
-
let(:json) {
|
5
|
+
let(:json) { { :summonerId => 46493314, :teamId => 100, :championId => 7 } }
|
6
6
|
let(:dto){ described_class.new(json) }
|
7
7
|
|
8
8
|
it "has attributes" do
|
9
|
-
|
10
|
-
expect(dto.
|
11
|
-
expect(dto.
|
12
|
-
expect(dto.team_id).to eq
|
9
|
+
expect(dto.champion_id).to eq 7
|
10
|
+
expect(dto.summoner_id).to eq 46493314
|
11
|
+
expect(dto.team_id).to eq 100
|
13
12
|
end
|
14
13
|
|
15
14
|
it "has a version" do
|
@@ -2,88 +2,120 @@ require_relative '../spec_helper'
|
|
2
2
|
|
3
3
|
describe ::LeagueOfLegends::DTO::RawStats do
|
4
4
|
|
5
|
-
let(:json) {
|
5
|
+
let(:json) { {
|
6
|
+
:level => 12,
|
7
|
+
:goldEarned => 6372,
|
8
|
+
:numDeaths => 6,
|
9
|
+
:minionsKilled => 76,
|
10
|
+
:goldSpent => 5375,
|
11
|
+
:totalDamageDealt => 67406,
|
12
|
+
:totalDamageTaken => 19667,
|
13
|
+
:team => 200,
|
14
|
+
:win => false,
|
15
|
+
:neutralMinionsKilled => 8,
|
16
|
+
:physicalDamageDealtPlayer => 64404,
|
17
|
+
:magicDamageDealtPlayer => 3002,
|
18
|
+
:physicalDamageTaken => 7819,
|
19
|
+
:magicDamageTaken => 11789,
|
20
|
+
:largestCriticalStrike => 327,
|
21
|
+
:timePlayed => 1965,
|
22
|
+
:totalHeal => 720,
|
23
|
+
:totalUnitsHealed => 1,
|
24
|
+
:assists => 1,
|
25
|
+
:item0 => 1055,
|
26
|
+
:item1 => 1051,
|
27
|
+
:item2 => 3072,
|
28
|
+
:item3 => 1001,
|
29
|
+
:item4 => 3093,
|
30
|
+
:item5 => 1042,
|
31
|
+
:item6 => 3350,
|
32
|
+
:magicDamageDealtToChampions => 1575,
|
33
|
+
:physicalDamageDealtToChampions => 10703,
|
34
|
+
:totalDamageDealtToChampions => 12278,
|
35
|
+
:trueDamageTaken => 58,
|
36
|
+
:wardPlaced => 4,
|
37
|
+
:neutralMinionsKilledYourJungle => 8,
|
38
|
+
:totalTimeCrowdControlDealt => 534
|
39
|
+
} }
|
6
40
|
let(:dto){ described_class.new(json) }
|
7
41
|
|
8
42
|
it "has attributes" do
|
9
|
-
|
10
|
-
|
11
|
-
expect(dto.
|
12
|
-
expect(dto.
|
13
|
-
expect(dto.
|
14
|
-
expect(dto.
|
15
|
-
expect(dto.
|
16
|
-
expect(dto.
|
17
|
-
expect(dto.
|
18
|
-
expect(dto.
|
19
|
-
expect(dto.
|
20
|
-
expect(dto.
|
21
|
-
expect(dto.
|
22
|
-
expect(dto.
|
23
|
-
expect(dto.
|
24
|
-
expect(dto.
|
25
|
-
expect(dto.
|
26
|
-
expect(dto.
|
27
|
-
expect(dto.
|
28
|
-
expect(dto.
|
29
|
-
expect(dto.
|
30
|
-
expect(dto.
|
31
|
-
expect(dto.
|
32
|
-
expect(dto.
|
33
|
-
expect(dto.
|
34
|
-
expect(dto.
|
35
|
-
expect(dto.
|
36
|
-
expect(dto.
|
37
|
-
expect(dto.
|
38
|
-
expect(dto.
|
39
|
-
expect(dto.
|
40
|
-
expect(dto.
|
41
|
-
expect(dto.
|
42
|
-
expect(dto.
|
43
|
-
expect(dto.
|
44
|
-
expect(dto.
|
45
|
-
expect(dto.
|
46
|
-
expect(dto.
|
47
|
-
expect(dto.
|
48
|
-
expect(dto.
|
49
|
-
expect(dto.
|
50
|
-
expect(dto.
|
51
|
-
expect(dto.
|
52
|
-
expect(dto.
|
53
|
-
expect(dto.
|
54
|
-
expect(dto.
|
55
|
-
expect(dto.
|
56
|
-
expect(dto.
|
57
|
-
expect(dto.
|
58
|
-
expect(dto.
|
59
|
-
expect(dto.
|
60
|
-
expect(dto.
|
61
|
-
expect(dto.
|
62
|
-
expect(dto.
|
63
|
-
expect(dto.
|
64
|
-
expect(dto.
|
65
|
-
expect(dto.
|
66
|
-
expect(dto.
|
67
|
-
expect(dto.
|
68
|
-
expect(dto.
|
69
|
-
expect(dto.
|
70
|
-
expect(dto.
|
71
|
-
expect(dto.
|
72
|
-
expect(dto.
|
73
|
-
expect(dto.
|
74
|
-
expect(dto.
|
75
|
-
expect(dto.
|
76
|
-
expect(dto.
|
77
|
-
expect(dto.
|
78
|
-
expect(dto.
|
79
|
-
expect(dto.
|
80
|
-
expect(dto.
|
81
|
-
expect(dto.
|
82
|
-
expect(dto.
|
83
|
-
expect(dto.
|
84
|
-
expect(dto.
|
85
|
-
expect(dto.ward_placed).to eq
|
86
|
-
expect(dto.win).to eq
|
43
|
+
# expect(dto.assists).to eq
|
44
|
+
# expect(dto.barracks_killed).to eq
|
45
|
+
# expect(dto.champions_killed).to eq
|
46
|
+
# expect(dto.combat_player_score).to eq
|
47
|
+
# expect(dto.consumables_purchased).to eq
|
48
|
+
# expect(dto.damage_dealt_player).to eq
|
49
|
+
# expect(dto.double_kills).to eq
|
50
|
+
# expect(dto.first_blood).to eq
|
51
|
+
# expect(dto.gold).to eq
|
52
|
+
expect(dto.gold_earned).to eq 6372
|
53
|
+
expect(dto.gold_spent).to eq 5375
|
54
|
+
expect(dto.item_0).to eq 1055
|
55
|
+
expect(dto.item_1).to eq 1051
|
56
|
+
expect(dto.item_2).to eq 3072
|
57
|
+
expect(dto.item_3).to eq 1001
|
58
|
+
expect(dto.item_4).to eq 3093
|
59
|
+
expect(dto.item_5).to eq 1042
|
60
|
+
expect(dto.item_6).to eq 3350
|
61
|
+
# expect(dto.items_purchased).to eq
|
62
|
+
# expect(dto.killing_sprees).to eq
|
63
|
+
expect(dto.largest_critical_strike).to eq 327
|
64
|
+
# expect(dto.largest_killing_spree).to eq
|
65
|
+
# expect(dto.largest_multi_kill).to eq
|
66
|
+
# expect(dto.legendary_items_created).to eq
|
67
|
+
expect(dto.level).to eq 12
|
68
|
+
expect(dto.magic_damage_dealt_player).to eq 3002
|
69
|
+
expect(dto.magic_damage_dealt_to_champions).to eq 1575
|
70
|
+
expect(dto.magic_damage_taken).to eq 11789
|
71
|
+
# expect(dto.minions_denied).to eq
|
72
|
+
expect(dto.minions_killed).to eq 76
|
73
|
+
expect(dto.neutral_minions_killed).to eq 8
|
74
|
+
# expect(dto.neutral_minions_killed_enemy_jungle).to eq
|
75
|
+
expect(dto.neutral_minions_killed_your_jungle).to eq 8
|
76
|
+
# expect(dto.nexus_killed).to eq
|
77
|
+
# expect(dto.node_capture).to eq
|
78
|
+
# expect(dto.node_capture_assist).to eq
|
79
|
+
# expect(dto.node_neutralize).to eq
|
80
|
+
# expect(dto.node_neutralize_assist).to eq
|
81
|
+
expect(dto.num_deaths).to eq 6
|
82
|
+
# expect(dto.num_items_bought).to eq
|
83
|
+
# expect(dto.objective_player_score).to eq
|
84
|
+
# expect(dto.penta_kills).to eq
|
85
|
+
expect(dto.physical_damage_dealt_player).to eq 64404
|
86
|
+
expect(dto.physical_damage_dealt_to_champions).to eq 10703
|
87
|
+
expect(dto.physical_damage_taken).to eq 7819
|
88
|
+
# expect(dto.quadra_kills).to eq
|
89
|
+
# expect(dto.sight_wards_bought).to eq
|
90
|
+
# expect(dto.spell_1_cast).to eq
|
91
|
+
# expect(dto.spell_2_cast).to eq
|
92
|
+
# expect(dto.spell_3_cast).to eq
|
93
|
+
# expect(dto.spell_4_cast).to eq
|
94
|
+
# expect(dto.summon_spell_1_cast).to eq
|
95
|
+
# expect(dto.summon_spell_2_cast).to eq
|
96
|
+
# expect(dto.super_monster_killed).to eq
|
97
|
+
expect(dto.team).to eq 200
|
98
|
+
# expect(dto.team_objective).to eq
|
99
|
+
expect(dto.time_played).to eq 1965
|
100
|
+
expect(dto.total_damage_dealt).to eq 67406
|
101
|
+
expect(dto.total_damage_dealt_to_champions).to eq 12278
|
102
|
+
expect(dto.total_damage_taken).to eq 19667
|
103
|
+
expect(dto.total_heal).to eq 720
|
104
|
+
# expect(dto.total_player_score).to eq
|
105
|
+
# expect(dto.total_score_rank).to eq
|
106
|
+
expect(dto.total_time_crowd_control_dealt).to eq 534
|
107
|
+
expect(dto.total_units_healed).to eq 1
|
108
|
+
# expect(dto.triple_kills).to eq
|
109
|
+
# expect(dto.true_damage_dealt_player).to eq
|
110
|
+
# expect(dto.true_damage_dealt_to_champions).to eq
|
111
|
+
expect(dto.true_damage_taken).to eq 58
|
112
|
+
# expect(dto.turrets_killed).to eq
|
113
|
+
# expect(dto.unreal_kills).to eq
|
114
|
+
# expect(dto.victory_point_total).to eq
|
115
|
+
# expect(dto.vision_wards_bought).to eq
|
116
|
+
# expect(dto.ward_killed).to eq
|
117
|
+
expect(dto.ward_placed).to eq 4
|
118
|
+
expect(dto.win).to be_false
|
87
119
|
end
|
88
120
|
|
89
121
|
it "has a version" do
|
@@ -2,13 +2,22 @@ require_relative '../spec_helper'
|
|
2
2
|
|
3
3
|
describe ::LeagueOfLegends::DTO::RecentGames do
|
4
4
|
|
5
|
-
let(:json) { '
|
5
|
+
let(:json) { '{"summonerId":50519866,"games":[
|
6
|
+
{"gameId":1316392770,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":200,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391913992873,"fellowPlayers":[{"summonerId":46493314,"teamId":100,"championId":7},{"summonerId":49460388,"teamId":200,"championId":222},{"summonerId":52345403,"teamId":100,"championId":34},{"summonerId":19474335,"teamId":200,"championId":37},{"summonerId":46825692,"teamId":100,"championId":222},{"summonerId":20901501,"teamId":100,"championId":26},{"summonerId":49574516,"teamId":200,"championId":1},{"summonerId":38380347,"teamId":100,"championId":77},{"summonerId":32957220,"teamId":200,"championId":77}],"stats":{"level":12,"goldEarned":6372,"numDeaths":6,"minionsKilled":76,"goldSpent":5375,"totalDamageDealt":67406,"totalDamageTaken":19667,"team":200,"win":false,"neutralMinionsKilled":8,"physicalDamageDealtPlayer":64404,"magicDamageDealtPlayer":3002,"physicalDamageTaken":7819,"magicDamageTaken":11789,"largestCriticalStrike":327,"timePlayed":1965,"totalHeal":720,"totalUnitsHealed":1,"assists":1,"item0":1055,"item1":1051,"item2":3072,"item3":1001,"item4":3093,"item5":1042,"item6":3350,"magicDamageDealtToChampions":1575,"physicalDamageDealtToChampions":10703,"totalDamageDealtToChampions":12278,"trueDamageTaken":58,"wardPlaced":4,"neutralMinionsKilledYourJungle":8,"totalTimeCrowdControlDealt":534}},
|
7
|
+
{"gameId":1316359666,"invalid":false,"gameMode":"ARAM","gameType":"MATCHED_GAME","subType":"ARAM_UNRANKED_5x5","mapId":12,"teamId":100,"championId":60,"spell1":6,"spell2":7,"level":11,"createDate":1391911434692,"fellowPlayers":[{"summonerId":42852740,"teamId":200,"championId":11},{"summonerId":37107501,"teamId":200,"championId":121},{"summonerId":38367203,"teamId":200,"championId":267},{"summonerId":51749178,"teamId":100,"championId":54},{"summonerId":39333491,"teamId":200,"championId":22},{"summonerId":37107489,"teamId":200,"championId":99},{"summonerId":41532651,"teamId":100,"championId":64},{"summonerId":49574516,"teamId":100,"championId":61},{"summonerId":27490746,"teamId":100,"championId":15}],"stats":{"level":16,"goldEarned":8523,"numDeaths":7,"minionsKilled":26,"championsKilled":1,"goldSpent":7440,"totalDamageDealt":26390,"totalDamageTaken":14550,"team":100,"win":false,"largestMultiKill":1,"physicalDamageDealtPlayer":7079,"magicDamageDealtPlayer":19310,"physicalDamageTaken":6504,"magicDamageTaken":7924,"timePlayed":1333,"totalHeal":2506,"totalUnitsHealed":7,"assists":5,"item0":3001,"item1":2003,"item2":3136,"item3":1001,"item4":3089,"item6":2052,"magicDamageDealtToChampions":5234,"physicalDamageDealtToChampions":980,"totalDamageDealtToChampions":6215,"trueDamageTaken":122,"totalTimeCrowdControlDealt":16}},
|
8
|
+
{"gameId":1316339805,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":30,"spell1":21,"spell2":6,"level":11,"createDate":1391909674553,"fellowPlayers":[{"summonerId":309763,"teamId":200,"championId":119},{"summonerId":41595817,"teamId":200,"championId":55},{"summonerId":50378000,"teamId":200,"championId":11},{"summonerId":48911186,"teamId":200,"championId":75},{"summonerId":52144394,"teamId":100,"championId":24},{"summonerId":51680198,"teamId":200,"championId":60},{"summonerId":40460673,"teamId":100,"championId":29},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":27490746,"teamId":100,"championId":17}],"stats":{"level":14,"goldEarned":6970,"numDeaths":5,"minionsKilled":60,"championsKilled":3,"goldSpent":5655,"totalDamageDealt":56351,"totalDamageTaken":10133,"team":100,"win":true,"neutralMinionsKilled":8,"largestMultiKill":1,"physicalDamageDealtPlayer":13885,"magicDamageDealtPlayer":42466,"physicalDamageTaken":5803,"magicDamageTaken":3581,"timePlayed":1734,"assists":5,"item0":1052,"item1":2003,"item2":3040,"item3":1026,"item4":1001,"item5":1058,"item6":3350,"magicDamageDealtToChampions":9617,"physicalDamageDealtToChampions":1129,"totalDamageDealtToChampions":10746,"trueDamageTaken":748,"neutralMinionsKilledYourJungle":8,"totalTimeCrowdControlDealt":333}},
|
9
|
+
{"gameId":1316310555,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391906769228,"fellowPlayers":[{"summonerId":42963859,"teamId":200,"championId":23},{"summonerId":52518093,"teamId":200,"championId":11},{"summonerId":52526851,"teamId":100,"championId":80},{"summonerId":47067555,"teamId":200,"championId":121},{"summonerId":50911954,"teamId":100,"championId":121},{"summonerId":50930124,"teamId":100,"championId":75},{"summonerId":44533004,"teamId":200,"championId":10},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":51317797,"teamId":200,"championId":19}],"stats":{"level":15,"goldEarned":9574,"numDeaths":9,"minionsKilled":109,"championsKilled":5,"goldSpent":6700,"totalDamageDealt":92515,"totalDamageTaken":21869,"killingSprees":1,"largestKillingSpree":2,"team":100,"win":false,"neutralMinionsKilled":5,"largestMultiKill":1,"physicalDamageDealtPlayer":77059,"magicDamageDealtPlayer":15456,"physicalDamageTaken":14502,"magicDamageTaken":6939,"largestCriticalStrike":349,"timePlayed":2107,"totalHeal":970,"totalUnitsHealed":1,"assists":3,"item0":1055,"item1":2003,"item2":3006,"item3":3072,"item4":3087,"item6":3350,"magicDamageDealtToChampions":4412,"physicalDamageDealtToChampions":13580,"totalDamageDealtToChampions":17993,"trueDamageTaken":427,"wardPlaced":2,"neutralMinionsKilledYourJungle":5,"totalTimeCrowdControlDealt":746}},
|
10
|
+
{"gameId":1316258305,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":200,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391904184886,"fellowPlayers":[{"summonerId":50741248,"teamId":200,"championId":98},{"summonerId":51845718,"teamId":100,"championId":11},{"summonerId":51942528,"teamId":200,"championId":15},{"summonerId":52513745,"teamId":200,"championId":60},{"summonerId":52778920,"teamId":100,"championId":119},{"summonerId":48887221,"teamId":100,"championId":91},{"summonerId":49657256,"teamId":100,"championId":1},{"summonerId":49574516,"teamId":200,"championId":1},{"summonerId":52416209,"teamId":100,"championId":23}],"stats":{"level":10,"goldEarned":5885,"numDeaths":2,"minionsKilled":59,"championsKilled":5,"goldSpent":3250,"totalDamageDealt":42710,"totalDamageTaken":8415,"doubleKills":1,"killingSprees":1,"largestKillingSpree":4,"team":200,"win":true,"neutralMinionsKilled":3,"largestMultiKill":2,"physicalDamageDealtPlayer":41100,"magicDamageDealtPlayer":1609,"physicalDamageTaken":5918,"magicDamageTaken":1847,"largestCriticalStrike":279,"timePlayed":1217,"totalHeal":656,"totalUnitsHealed":1,"assists":1,"item0":1055,"item1":1038,"item2":3006,"item3":1053,"item4":3093,"item6":3350,"magicDamageDealtToChampions":1025,"physicalDamageDealtToChampions":3871,"totalDamageDealtToChampions":4897,"trueDamageTaken":650,"wardPlaced":2,"neutralMinionsKilledYourJungle":3,"totalTimeCrowdControlDealt":338}},
|
11
|
+
{"gameId":1316148661,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":121,"spell1":21,"spell2":6,"level":11,"createDate":1391902184432,"fellowPlayers":[{"summonerId":52487343,"teamId":200,"championId":61},{"summonerId":46434425,"teamId":100,"championId":55},{"summonerId":46937748,"teamId":200,"championId":60},{"summonerId":29301135,"teamId":200,"championId":121},{"summonerId":52218624,"teamId":100,"championId":98},{"summonerId":51840637,"teamId":200,"championId":22},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":44641636,"teamId":100,"championId":54},{"summonerId":51865487,"teamId":200,"championId":157}],"stats":{"level":18,"goldEarned":11892,"numDeaths":5,"minionsKilled":132,"goldSpent":7307,"totalDamageDealt":148847,"totalDamageTaken":25442,"team":100,"win":true,"neutralMinionsKilled":37,"physicalDamageDealtPlayer":147954,"magicDamageDealtPlayer":446,"physicalDamageTaken":22017,"magicDamageTaken":3198,"timePlayed":2614,"totalHeal":5994,"totalUnitsHealed":1,"assists":6,"item0":3042,"item1":3134,"item2":3158,"item3":3156,"item4":1053,"item6":3352,"sightWardsBought":1,"magicDamageDealtToChampions":446,"physicalDamageDealtToChampions":4885,"totalDamageDealtToChampions":5387,"trueDamageDealtPlayer":446,"trueDamageDealtToChampions":56,"trueDamageTaken":226,"wardPlaced":1,"neutralMinionsKilledEnemyJungle":7,"neutralMinionsKilledYourJungle":30,"totalTimeCrowdControlDealt":643}},
|
12
|
+
{"gameId":1316088808,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":30,"spell1":21,"spell2":6,"level":11,"createDate":1391899006603,"fellowPlayers":[{"summonerId":45966471,"teamId":100,"championId":64},{"summonerId":45882920,"teamId":200,"championId":75},{"summonerId":51686205,"teamId":200,"championId":10},{"summonerId":49161030,"teamId":200,"championId":21},{"summonerId":45833001,"teamId":200,"championId":60},{"summonerId":52406766,"teamId":100,"championId":121},{"summonerId":40916861,"teamId":200,"championId":267},{"summonerId":46771771,"teamId":100,"championId":17},{"summonerId":49574516,"teamId":100,"championId":1}],"stats":{"level":13,"goldEarned":5648,"numDeaths":5,"minionsKilled":76,"championsKilled":1,"goldSpent":4860,"totalDamageDealt":57262,"totalDamageTaken":14485,"team":100,"win":false,"neutralMinionsKilled":1,"largestMultiKill":1,"physicalDamageDealtPlayer":8427,"magicDamageDealtPlayer":48834,"physicalDamageTaken":7498,"magicDamageTaken":6987,"timePlayed":1736,"assists":2,"item0":1001,"item1":1052,"item2":3003,"item3":1028,"item4":1026,"item6":3350,"magicDamageDealtToChampions":8333,"physicalDamageDealtToChampions":414,"totalDamageDealtToChampions":8748,"wardPlaced":5,"neutralMinionsKilledEnemyJungle":1,"totalTimeCrowdControlDealt":100}},
|
13
|
+
{"gameId":1315880573,"invalid":false,"gameMode":"CLASSIC","gameType":"CUSTOM_GAME","subType":"NONE","mapId":1,"teamId":100,"championId":30,"spell1":21,"spell2":6,"level":11,"createDate":1391896857661,"fellowPlayers":[{"summonerId":49574516,"teamId":100,"championId":1}],"stats":{"level":18,"goldEarned":13161,"numDeaths":3,"barracksKilled":1,"turretsKilled":1,"minionsKilled":100,"championsKilled":8,"goldSpent":12710,"totalDamageDealt":132620,"totalDamageTaken":19204,"doubleKills":1,"killingSprees":1,"largestKillingSpree":8,"team":100,"win":true,"neutralMinionsKilled":23,"largestMultiKill":2,"physicalDamageDealtPlayer":28065,"magicDamageDealtPlayer":104555,"physicalDamageTaken":12800,"magicDamageTaken":5998,"timePlayed":2764,"assists":7,"item0":3020,"item1":3116,"item2":3089,"item3":3027,"item4":3135,"item6":3350,"magicDamageDealtToChampions":26419,"physicalDamageDealtToChampions":2505,"totalDamageDealtToChampions":28924,"trueDamageTaken":405,"wardPlaced":3,"neutralMinionsKilledEnemyJungle":11,"neutralMinionsKilledYourJungle":12,"totalTimeCrowdControlDealt":234}},
|
14
|
+
{"gameId":1315745391,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":200,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391893281615,"fellowPlayers":[{"summonerId":52309508,"teamId":100,"championId":75},{"summonerId":48904402,"teamId":200,"championId":17},{"summonerId":51854975,"teamId":200,"championId":55},{"summonerId":52582062,"teamId":100,"championId":267},{"summonerId":51661064,"teamId":100,"championId":8},{"summonerId":49574516,"teamId":200,"championId":1},{"summonerId":25677141,"teamId":100,"championId":121},{"summonerId":52594175,"teamId":100,"championId":15},{"summonerId":21036920,"teamId":200,"championId":121}],"stats":{"level":15,"goldEarned":9201,"numDeaths":6,"minionsKilled":111,"championsKilled":1,"goldSpent":4560,"totalDamageDealt":100517,"totalDamageTaken":16506,"team":200,"win":false,"neutralMinionsKilled":9,"largestMultiKill":1,"physicalDamageDealtPlayer":82840,"magicDamageDealtPlayer":17677,"physicalDamageTaken":10901,"magicDamageTaken":5053,"largestCriticalStrike":248,"timePlayed":2232,"totalHeal":1040,"totalUnitsHealed":1,"assists":6,"item0":1055,"item1":3046,"item2":3006,"item3":1053,"item4":3087,"item6":3350,"magicDamageDealtToChampions":4085,"physicalDamageDealtToChampions":8305,"totalDamageDealtToChampions":12391,"trueDamageTaken":551,"wardPlaced":8,"neutralMinionsKilledEnemyJungle":1,"neutralMinionsKilledYourJungle":8,"totalTimeCrowdControlDealt":629}},
|
15
|
+
{"gameId":1315589138,"invalid":false,"gameMode":"CLASSIC","gameType":"MATCHED_GAME","subType":"NORMAL","mapId":1,"teamId":100,"championId":22,"spell1":21,"spell2":6,"level":11,"createDate":1391890669788,"fellowPlayers":[{"summonerId":41791484,"teamId":200,"championId":24},{"summonerId":52531406,"teamId":200,"championId":30},{"summonerId":51319422,"teamId":100,"championId":24},{"summonerId":52338623,"teamId":200,"championId":20},{"summonerId":50943779,"teamId":200,"championId":23},{"summonerId":49574516,"teamId":100,"championId":1},{"summonerId":42617709,"teamId":100,"championId":238},{"summonerId":52148831,"teamId":200,"championId":22},{"summonerId":21036920,"teamId":100,"championId":121}],"stats":{"level":18,"goldEarned":19512,"numDeaths":17,"turretsKilled":1,"minionsKilled":176,"championsKilled":9,"goldSpent":15225,"totalDamageDealt":222425,"totalDamageTaken":38272,"killingSprees":3,"largestKillingSpree":3,"team":100,"win":true,"neutralMinionsKilled":21,"largestMultiKill":1,"physicalDamageDealtPlayer":193578,"magicDamageDealtPlayer":28098,"physicalDamageTaken":18684,"magicDamageTaken":19007,"largestCriticalStrike":701,"timePlayed":3480,"totalHeal":1062,"totalUnitsHealed":1,"assists":13,"item0":3031,"item1":3153,"item2":3251,"item3":3087,"item4":3035,"item5":3102,"item6":3350,"magicDamageDealtToChampions":5344,"physicalDamageDealtToChampions":16669,"totalDamageDealtToChampions":22014,"trueDamageDealtPlayer":748,"trueDamageTaken":580,"wardPlaced":7,"neutralMinionsKilledEnemyJungle":5,"neutralMinionsKilledYourJungle":16,"totalTimeCrowdControlDealt":1283}}]}' }
|
6
16
|
let(:dto){ described_class.new(json) }
|
7
17
|
|
8
18
|
it "has attributes" do
|
9
|
-
pending "need JSON result"
|
10
19
|
expect(dto.games).to be_an_instance_of Array
|
11
|
-
expect(dto.games.size).to eq
|
20
|
+
expect(dto.games.size).to eq 10
|
12
21
|
|
13
22
|
dto.games.each do |game|
|
14
23
|
expect(game).to be_an_instance_of ::LeagueOfLegends::DTO::Game
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require_relative '../../../spec_helper'
|
2
|
+
|
3
|
+
describe ::LeagueOfLegends::Request::Game::BySummoner::Recent do
|
4
|
+
|
5
|
+
let(:api) { ::LeagueOfLegends::Api.new 'a1a1a1a1-a1a1-a1a1-a1a1-a1a1a1a1a1a1' }
|
6
|
+
|
7
|
+
let(:request) { described_class.new api, 50519866 }
|
8
|
+
|
9
|
+
it "has the required parameters" do
|
10
|
+
expect(described_class.dto_class).to eq ::LeagueOfLegends::DTO::RecentGames
|
11
|
+
expect(described_class.version).to eq 'v1.3'
|
12
|
+
expect(request.region).to eq 'euw'
|
13
|
+
expect(request.api_key).to be_an_instance_of String
|
14
|
+
expect(request.api_key.length).to eq 36
|
15
|
+
|
16
|
+
expect(request.summoner_id).to eq 50519866
|
17
|
+
end
|
18
|
+
|
19
|
+
it "can be sent and get a response" do
|
20
|
+
VCR.use_cassette('game_spec') do
|
21
|
+
expect(request.response).to be_an_instance_of ::LeagueOfLegends::DTO::RecentGames
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
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.6
|
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-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -123,6 +123,7 @@ files:
|
|
123
123
|
- lib/league_of_legends/request/all.rb
|
124
124
|
- lib/league_of_legends/request/base.rb
|
125
125
|
- lib/league_of_legends/request/champion.rb
|
126
|
+
- lib/league_of_legends/request/game/by_summoner/recent.rb
|
126
127
|
- lib/league_of_legends/request/mapper.rb
|
127
128
|
- lib/league_of_legends/request/stats/by_summoner/ranked.rb
|
128
129
|
- lib/league_of_legends/request/stats/by_summoner/summary.rb
|
@@ -130,6 +131,7 @@ files:
|
|
130
131
|
- spec/fixtures/vcr_cassettes/api_spec_champions.yml
|
131
132
|
- spec/fixtures/vcr_cassettes/api_spec_summoner_stats_summary.yml
|
132
133
|
- spec/fixtures/vcr_cassettes/champion_spec_f2p.yml
|
134
|
+
- spec/fixtures/vcr_cassettes/game_spec.yml
|
133
135
|
- spec/fixtures/vcr_cassettes/ranked_spec_stats_by_summoner.yml
|
134
136
|
- spec/fixtures/vcr_cassettes/summary_spec_stats_by_summoner.yml
|
135
137
|
- spec/league_of_legends/api_spec.rb
|
@@ -147,6 +149,7 @@ files:
|
|
147
149
|
- spec/league_of_legends/dto/recent_games_spec.rb
|
148
150
|
- spec/league_of_legends/request/base_spec.rb
|
149
151
|
- spec/league_of_legends/request/champion_spec.rb
|
152
|
+
- spec/league_of_legends/request/game/by_summoner/recent_spec.rb
|
150
153
|
- spec/league_of_legends/request/mapper_spec.rb
|
151
154
|
- spec/league_of_legends/request/stats/by_summoner/ranked_spec.rb
|
152
155
|
- spec/league_of_legends/request/stats/by_summoner/summary_spec.rb
|
@@ -180,6 +183,7 @@ test_files:
|
|
180
183
|
- spec/fixtures/vcr_cassettes/api_spec_champions.yml
|
181
184
|
- spec/fixtures/vcr_cassettes/api_spec_summoner_stats_summary.yml
|
182
185
|
- spec/fixtures/vcr_cassettes/champion_spec_f2p.yml
|
186
|
+
- spec/fixtures/vcr_cassettes/game_spec.yml
|
183
187
|
- spec/fixtures/vcr_cassettes/ranked_spec_stats_by_summoner.yml
|
184
188
|
- spec/fixtures/vcr_cassettes/summary_spec_stats_by_summoner.yml
|
185
189
|
- spec/league_of_legends/api_spec.rb
|
@@ -197,6 +201,7 @@ test_files:
|
|
197
201
|
- spec/league_of_legends/dto/recent_games_spec.rb
|
198
202
|
- spec/league_of_legends/request/base_spec.rb
|
199
203
|
- spec/league_of_legends/request/champion_spec.rb
|
204
|
+
- spec/league_of_legends/request/game/by_summoner/recent_spec.rb
|
200
205
|
- spec/league_of_legends/request/mapper_spec.rb
|
201
206
|
- spec/league_of_legends/request/stats/by_summoner/ranked_spec.rb
|
202
207
|
- spec/league_of_legends/request/stats/by_summoner/summary_spec.rb
|