ruby-lol 0.12.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (167) hide show
  1. checksums.yaml +4 -4
  2. data/.editorconfig +16 -0
  3. data/.gitignore +2 -0
  4. data/.rspec +1 -0
  5. data/.rubocop.yml +1157 -0
  6. data/.travis.yml +1 -1
  7. data/lib/lol/champion_mastery_request.rb +29 -57
  8. data/lib/lol/champion_request.rb +19 -23
  9. data/lib/lol/client.rb +16 -21
  10. data/lib/lol/dynamic_model.rb +14 -5
  11. data/lib/lol/featured_game_list.rb +15 -0
  12. data/lib/lol/league_request.rb +28 -49
  13. data/lib/lol/lol_status_request.rb +9 -26
  14. data/lib/lol/masteries_request.rb +14 -0
  15. data/lib/lol/match_request.rb +51 -9
  16. data/lib/lol/request.rb +55 -21
  17. data/lib/lol/runes_request.rb +14 -0
  18. data/lib/lol/spectator_request.rb +24 -0
  19. data/lib/lol/static_request.rb +34 -23
  20. data/lib/lol/summoner_request.rb +22 -51
  21. data/lib/lol/tournament_request.rb +95 -0
  22. data/lib/lol/version.rb +1 -1
  23. data/ruby-lol.gemspec +1 -1
  24. data/spec/api_version_spec.rb +10 -9
  25. data/spec/fixtures/{v1.2 → v3}/get-champion-266.json +0 -0
  26. data/spec/fixtures/{v1.2/get-champion.json → v3/get-champion-all.json} +0 -0
  27. data/spec/fixtures/{v1.0/get-champion-mastery-champions.json → v3/get-champion-masteries.json} +0 -0
  28. data/spec/fixtures/{v1.0/get-champion-mastery-champion.json → v3/get-champion-mastery.json} +0 -0
  29. data/spec/fixtures/v3/get-current-game.json +1 -0
  30. data/spec/fixtures/v3/get-featured-games.json +1 -0
  31. data/spec/fixtures/v3/get-ids-by-tc.json +1 -0
  32. data/spec/fixtures/v3/get-league-challenger.json +1 -0
  33. data/spec/fixtures/v3/get-league-master.json +1 -0
  34. data/spec/fixtures/v3/get-league-positions.json +1 -0
  35. data/spec/fixtures/v3/get-league-summoner.json +1 -0
  36. data/spec/fixtures/v3/get-lol-status-shard.json +1 -0
  37. data/spec/fixtures/v3/get-masteries.json +1 -0
  38. data/spec/fixtures/v3/get-match-with-tc.json +1 -0
  39. data/spec/fixtures/v3/get-match.json +1 -0
  40. data/spec/fixtures/v3/get-matches-recent.json +1 -0
  41. data/spec/fixtures/v3/get-matches.json +1 -0
  42. data/spec/fixtures/v3/get-runes.json +1 -0
  43. data/spec/fixtures/v3/get-static-champions-by-id.json +1 -0
  44. data/spec/fixtures/v3/get-static-champions.json +1 -0
  45. data/spec/fixtures/v3/get-static-items-by-id.json +1 -0
  46. data/spec/fixtures/v3/get-static-items.json +1 -0
  47. data/spec/fixtures/v3/get-static-maps.json +1 -0
  48. data/spec/fixtures/v3/get-static-masteries-by-id.json +1 -0
  49. data/spec/fixtures/v3/get-static-masteries.json +1 -0
  50. data/spec/fixtures/v3/get-static-realms.json +1 -0
  51. data/spec/fixtures/v3/get-static-runes-by-id.json +1 -0
  52. data/spec/fixtures/v3/get-static-runes.json +1 -0
  53. data/spec/fixtures/v3/get-static-summoner-spells-by-id.json +1 -0
  54. data/spec/fixtures/v3/get-static-summoner-spells.json +1 -0
  55. data/spec/fixtures/v3/get-static-versions.json +1 -0
  56. data/spec/fixtures/v3/get-summoner-by-name.json +1 -0
  57. data/spec/fixtures/v3/get-summoner.json +1 -0
  58. data/spec/fixtures/v3/get-timeline.json +1 -0
  59. data/spec/fixtures/v3/get-tournament-code.json +1 -0
  60. data/spec/lol/champion_mastery_request_spec.rb +33 -133
  61. data/spec/lol/champion_request_spec.rb +17 -30
  62. data/spec/lol/client_spec.rb +12 -56
  63. data/spec/lol/league_request_spec.rb +29 -72
  64. data/spec/lol/lol_status_request_spec.rb +6 -34
  65. data/spec/lol/masteries_request_spec.rb +15 -0
  66. data/spec/lol/match_request_spec.rb +45 -10
  67. data/spec/lol/request_spec.rb +5 -5
  68. data/spec/lol/runes_request_spec.rb +15 -0
  69. data/spec/lol/spectator_request_spec.rb +23 -0
  70. data/spec/lol/static_request_spec.rb +44 -48
  71. data/spec/lol/summoner_request_spec.rb +20 -71
  72. data/spec/lol/tournament_request_spec.rb +36 -0
  73. metadata +92 -175
  74. data/lib/lol/champion.rb +0 -37
  75. data/lib/lol/champion_mastery.rb +0 -50
  76. data/lib/lol/champion_statistics_summary.rb +0 -25
  77. data/lib/lol/current_game_request.rb +0 -16
  78. data/lib/lol/featured_games_request.rb +0 -15
  79. data/lib/lol/game.rb +0 -85
  80. data/lib/lol/game_request.rb +0 -19
  81. data/lib/lol/league.rb +0 -32
  82. data/lib/lol/league_entry.rb +0 -74
  83. data/lib/lol/mastery.rb +0 -16
  84. data/lib/lol/mastery_page.rb +0 -28
  85. data/lib/lol/match_list_request.rb +0 -15
  86. data/lib/lol/match_summary.rb +0 -59
  87. data/lib/lol/mini_series.rb +0 -29
  88. data/lib/lol/model.rb +0 -28
  89. data/lib/lol/player.rb +0 -21
  90. data/lib/lol/player_statistic.rb +0 -46
  91. data/lib/lol/ranked_statistics_summary.rb +0 -35
  92. data/lib/lol/roster.rb +0 -23
  93. data/lib/lol/rune_page.rb +0 -28
  94. data/lib/lol/rune_slot.rb +0 -29
  95. data/lib/lol/stats_request.rb +0 -35
  96. data/lib/lol/summoner.rb +0 -36
  97. data/lib/lol/team.rb +0 -110
  98. data/lib/lol/team_member.rb +0 -33
  99. data/lib/lol/team_request.rb +0 -32
  100. data/lib/lol/team_statistic.rb +0 -53
  101. data/lib/lol/tournament_code.rb +0 -58
  102. data/lib/lol/tournament_provider_request.rb +0 -111
  103. data/spec/fixtures/v1.0/get-champion-mastery-top-champions-10.json +0 -121
  104. data/spec/fixtures/v1.0/get-champion-mastery-top-champions.json +0 -38
  105. data/spec/fixtures/v1.0/get-current-game.json +0 -1065
  106. data/spec/fixtures/v1.0/get-featured-games.json +0 -730
  107. data/spec/fixtures/v1.0/get-lol-status-shard-by-region.json +0 -39
  108. data/spec/fixtures/v1.0/get-lol-status-shards.json +0 -78
  109. data/spec/fixtures/v1.2/get-champion-by-id.json +0 -6
  110. data/spec/fixtures/v1.2/get-item-by-id.json +0 -6
  111. data/spec/fixtures/v1.2/get-item.json +0 -1563
  112. data/spec/fixtures/v1.2/get-mastery-by-id.json +0 -9
  113. data/spec/fixtures/v1.2/get-mastery.json +0 -389
  114. data/spec/fixtures/v1.2/get-realm.json +0 -1
  115. data/spec/fixtures/v1.2/get-rune-by-id.json +0 -26
  116. data/spec/fixtures/v1.2/get-rune.json +0 -2966
  117. data/spec/fixtures/v1.2/get-static-champion.json +0 -714
  118. data/spec/fixtures/v1.2/get-summoner-spell-by-id.json +0 -39
  119. data/spec/fixtures/v1.2/get-summoner-spell.json +0 -97
  120. data/spec/fixtures/v1.2/get-versions.json +0 -1
  121. data/spec/fixtures/v1.3/get-game.json +0 -1040
  122. data/spec/fixtures/v1.3/get-ranked_stats.json +0 -1
  123. data/spec/fixtures/v1.3/get-stats.json +0 -1
  124. data/spec/fixtures/v1.4/get-summoner-by-name.json +0 -1
  125. data/spec/fixtures/v1.4/get-summoner-masteries.json +0 -898
  126. data/spec/fixtures/v1.4/get-summoner-name.json +0 -1
  127. data/spec/fixtures/v1.4/get-summoner-runes.json +0 -2547
  128. data/spec/fixtures/v1.4/get-summoner.json +0 -1
  129. data/spec/fixtures/v2.2/get-match.json +0 -1
  130. data/spec/fixtures/v2.2/get-match_list.json +0 -1
  131. data/spec/fixtures/v2.4/get-by-summoner.json +0 -1
  132. data/spec/fixtures/v2.4/get-team.json +0 -1
  133. data/spec/fixtures/v2.5/get-league-by-team.json +0 -1
  134. data/spec/fixtures/v2.5/get-league-challenger.json +0 -1
  135. data/spec/fixtures/v2.5/get-league-entry-by-team.json +0 -1
  136. data/spec/fixtures/v2.5/get-league-entry.json +0 -1
  137. data/spec/fixtures/v2.5/get-league-master.json +0 -1
  138. data/spec/fixtures/v2.5/get-league.json +0 -1
  139. data/spec/lol/champion_mastery_spec.rb +0 -20
  140. data/spec/lol/champion_spec.rb +0 -19
  141. data/spec/lol/champion_statistics_summary_spec.rb +0 -38
  142. data/spec/lol/current_game_request_spec.rb +0 -47
  143. data/spec/lol/featured_games_request_spec.rb +0 -39
  144. data/spec/lol/game_request_spec.rb +0 -32
  145. data/spec/lol/game_spec.rb +0 -51
  146. data/spec/lol/league_entry_spec.rb +0 -51
  147. data/spec/lol/league_spec.rb +0 -31
  148. data/spec/lol/mastery_page_spec.rb +0 -29
  149. data/spec/lol/mastery_spec.rb +0 -17
  150. data/spec/lol/match_list_request_spec.rb +0 -39
  151. data/spec/lol/match_summary_spec.rb +0 -25
  152. data/spec/lol/mini_series_spec.rb +0 -25
  153. data/spec/lol/model_spec.rb +0 -13
  154. data/spec/lol/player_spec.rb +0 -19
  155. data/spec/lol/player_statistic_spec.rb +0 -44
  156. data/spec/lol/ranked_statistics_summary_spec.rb +0 -32
  157. data/spec/lol/roster_spec.rb +0 -24
  158. data/spec/lol/rune_page_spec.rb +0 -28
  159. data/spec/lol/rune_slot_spec.rb +0 -16
  160. data/spec/lol/stats_request_spec.rb +0 -93
  161. data/spec/lol/summoner_spec.rb +0 -20
  162. data/spec/lol/team_member_spec.rb +0 -27
  163. data/spec/lol/team_request_spec.rb +0 -47
  164. data/spec/lol/team_spec.rb +0 -54
  165. data/spec/lol/team_statistic_spec.rb +0 -20
  166. data/spec/lol/tournament_code_spec.rb +0 -20
  167. data/spec/lol/tournament_provider_request_spec.rb +0 -73
@@ -1,29 +0,0 @@
1
- module Lol
2
- # Holds the representation of a MiniSeries
3
- class MiniSeries < Model
4
- # @!attribute [r] target
5
- # @return [String] number of games required to advance
6
- attr_reader :target
7
-
8
- # @!attribute [r] wins
9
- # @return [Fixnum] wins in the miniseries
10
- attr_reader :wins
11
-
12
- # @!attribute [r] losses
13
- # @return [Fixnum] losses in the miniseries
14
- attr_reader :losses
15
-
16
- # @!attribute [r] time_left_to_play_millis
17
- # @return [Fixnum] time left to play the miniseries, expressed in milliseconds
18
- attr_reader :time_left_to_play_millis
19
-
20
- # @!attribute [r] progress
21
- # @return [String] string representation of the miniseries progress.
22
- # i.e. "WLN" (Win / Loss / Not played)
23
- attr_reader :progress
24
-
25
- private
26
-
27
- attr_writer :target, :wins, :losses, :time_left_to_play_millis, :progress
28
- end
29
- end
@@ -1,28 +0,0 @@
1
- require 'active_support/core_ext/string/inflections'
2
-
3
- module Lol
4
- class Model
5
- # @!attribute [r] raw
6
- # @return [Hash] raw version of options Hash used to initialize Model
7
- attr_reader :raw
8
-
9
- # Initializes a Lol::Model
10
- # @param options [Hash]
11
- # @return [Lol::Model]
12
- def initialize options = {}
13
- @raw = options
14
- options.each do |attribute_name, value|
15
- send "#{attribute_name.to_s.underscore}=", value
16
- end
17
- end
18
-
19
- # Re-written Object#inspect to skip the @raw instance variable
20
- # @return [String] representation of object
21
- def inspect
22
- vars = self.instance_variables.
23
- select {|v| v != :@raw}.
24
- map{|v| "#{v}=#{instance_variable_get(v).inspect}"}.join(", ")
25
- "<#{self.class}: #{vars}>"
26
- end
27
- end
28
- end
@@ -1,21 +0,0 @@
1
- require 'lol/model'
2
-
3
- module Lol
4
- class Player < Lol::Model
5
- # @!attribute [r] champion_id
6
- # @return [Fixnum] Champion Id associated with player
7
- attr_reader :champion_id
8
-
9
- # @!attribute [r] summoner_id
10
- # @return [Fixnum] Summoner Id associated with player
11
- attr_reader :summoner_id
12
-
13
- # @!attribute [r] team_id
14
- # @return [Fixnum] Team Id associated with player
15
- attr_reader :team_id
16
-
17
- private
18
-
19
- attr_writer :champion_id, :summoner_id, :team_id
20
- end
21
- end
@@ -1,46 +0,0 @@
1
- require 'lol/model'
2
-
3
- module Lol
4
- class PlayerStatistic < Lol::Model
5
- # @!attribute [r] aggregated_stats
6
- # @return [Array] List of aggregated statistics
7
- attr_reader :aggregated_stats
8
-
9
- # @!attribute [r] losses
10
- # @return [Fixnum] Number of losses for this queue type. It's presed only for ranked queue types
11
- attr_reader :losses
12
-
13
- # @!attribute [r] modify_date
14
- # @return [Time] Date stat was last modified
15
- attr_reader :modify_date
16
-
17
- # @!attribute [r] modify_date_str
18
- # @return [String] Human readable string representing date stat was last modified
19
- attr_reader :modify_date_str
20
-
21
- # @!attribute [r] player_stat_summary_type
22
- # @return [String] Summary Type. Legal values: AramUnranked5x5, CoopVsAI, OdinUnranked, RankedPremade3x3, RankedPremade5x5, RankedSolo5x5, RankedTeam3x3, RankedTeam5x5, Unranked, Unranked3x3
23
- attr_reader :player_stat_summary_type
24
-
25
- # @!attribute [r] wins
26
- # @return [Fixnum] Number of wins for this queue type
27
- attr_reader :wins
28
-
29
- private
30
-
31
- attr_writer :id, :losses, :modify_date_str, :player_stat_summary_type,
32
- :wins
33
-
34
- def modify_date= value
35
- @modify_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
36
- end
37
-
38
- def aggregated_stats= value
39
- @aggregated_stats = value.is_a?(Hash) && OpenStruct.new(underscore_hash_keys value) || value
40
- end
41
-
42
- def underscore_hash_keys hash
43
- hash.inject({}) { |memo, (key, value)| memo.update key.to_s.underscore => value }
44
- end
45
- end
46
- end
@@ -1,35 +0,0 @@
1
- require 'lol/model'
2
-
3
- module Lol
4
- class RankedStatisticsSummary < Lol::Model
5
- # @!attribute [r] champions
6
- # @return [Array] List of player stats summarized by champion
7
- attr_reader :champions
8
-
9
- # @!attribute [r] modify_date
10
- # @return [Time] Time stats were last updated
11
- attr_reader :modify_date
12
-
13
- # @!attribute [r] modify_date_str
14
- # @return [String] Human readable string representing date stats were last updated
15
- attr_reader :modify_date_str
16
-
17
- # @!attribute [r] summoner_id
18
- # @return [Fixnum] Summoner Id
19
- attr_reader :summoner_id
20
-
21
- private
22
-
23
- attr_writer :modify_date_str, :summoner_id
24
-
25
- def modify_date= value
26
- @modify_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
27
- end
28
-
29
- def champions= collection
30
- @champions = collection.map do |c|
31
- c.respond_to?(:[]) && ChampionStatisticsSummary.new(c) || c
32
- end
33
- end
34
- end
35
- end
@@ -1,23 +0,0 @@
1
- require 'lol/model'
2
-
3
- module Lol
4
- class Roster < Lol::Model
5
- # @!attribute [r] owner_id
6
- # @return [Fixnum] Team Owner Id
7
- attr_reader :owner_id
8
-
9
- # @!attribute [r] member_list
10
- # @return [Array] List of members
11
- attr_reader :member_list
12
-
13
- private
14
-
15
- attr_writer :owner_id
16
-
17
- def member_list= collection
18
- @member_list = collection.map do |c|
19
- c.respond_to?(:[]) && TeamMember.new(c) || c
20
- end
21
- end
22
- end
23
- end
@@ -1,28 +0,0 @@
1
- module Lol
2
- class RunePage < Model
3
- # @!attribute [r] id
4
- # @return [Fixnum] id of Runepage
5
- attr_reader :id
6
-
7
- # @!attribute [r] name
8
- # @return [String] name of Runepage
9
- attr_reader :name
10
-
11
- # @!attribute [r] current
12
- # @return [Boolean] is the Runepage currently active?
13
- attr_reader :current
14
-
15
-
16
- # @!attribute [r] current
17
- # @return [Array] array of Lol::RuneSlot
18
- attr_reader :slots
19
-
20
- private
21
-
22
- attr_writer :id, :name, :current
23
-
24
- def slots= *runeslots
25
- @slots = runeslots.flatten.map {|slot| RuneSlot.new slot}
26
- end
27
- end
28
- end
@@ -1,29 +0,0 @@
1
- module Lol
2
- class RuneSlot < Model
3
- # @!attribute [r] id
4
- # @return [Fixnum] id of RuneSlot
5
- def id
6
- @rune_slot_id
7
- end
8
-
9
- # @!attribute [r] rune_id
10
- # @return [Fixnum] id of Rune
11
- def rune_id
12
- @rune_id
13
- end
14
-
15
- private
16
-
17
- def id= new_id
18
- @rune_slot_id = new_id
19
- end
20
-
21
- def rune_id= new_id
22
- @rune_id = new_id
23
- end
24
-
25
- def rune_slot_id= new_id
26
- @rune_slot_id = new_id
27
- end
28
- end
29
- end
@@ -1,35 +0,0 @@
1
- module Lol
2
- class StatsRequest < Request
3
- # Returns the supported API Version
4
- # @return [String] the supported api version
5
- def self.api_version
6
- "v1.3"
7
- end
8
-
9
- # Retrieves player statistics summaries for the given summoner
10
- # @param [String] summoner_id
11
- # @return [Array] an array of player statistics, one per queue type
12
- def summary summoner_id, extra = {}
13
- if extra.keys.select { |k| k.to_sym != :season }.any?
14
- raise ArgumentError, 'Only :season is allowed as extra parameter'
15
- end
16
- stats_api_path = "stats/by-summoner/#{summoner_id}/summary"
17
- perform_request(api_url(stats_api_path, extra))['playerStatSummaries'].map do |player_stat_data|
18
- PlayerStatistic.new player_stat_data
19
- end
20
- end
21
-
22
- # Retrieves ranked statistics summary for the given summoner
23
- # @param [String] summoner_id
24
- # @return [RankedStatisticsSummary] Ranked Stats.
25
- # Includes stats for Twisted Treeline and Summoner's Rift
26
- def ranked summoner_id, extra = {}
27
- if extra.keys.select { |k| k.to_sym != :season }.any?
28
- raise ArgumentError, 'Only :season is allowed as extra parameter'
29
- end
30
- stats_api_path = "stats/by-summoner/#{summoner_id}/ranked"
31
- RankedStatisticsSummary.new perform_request api_url stats_api_path, extra
32
- end
33
-
34
- end
35
- end
@@ -1,36 +0,0 @@
1
- module Lol
2
- class Summoner < Model
3
- # @!attribute [r] id
4
- # @return [String]
5
- attr_reader :id
6
-
7
- # @!attribute [r] name
8
- # @return [String] Summoner Name
9
- attr_reader :name
10
-
11
- # @!attribute [r] profile_icon_id
12
- # @return [String] Id of the profile icon. No way to get the icon out for now
13
- attr_reader :profile_icon_id
14
-
15
- # @!attribute [r] revision_date
16
- # @return [Time] Last date of summoner profile revision
17
- attr_reader :revision_date
18
-
19
- # @!attribute [r] revision_date_str
20
- # @return [String] Human readable string representing date of summoner profile revision
21
- attr_reader :revision_date_str
22
-
23
- # @!attribute [r] summoner_level
24
- # @return [Numeric] 1-30
25
- attr_reader :summoner_level
26
-
27
- private
28
-
29
- attr_writer :id, :name, :profile_icon_id, :summoner_level, :revision_date_str
30
-
31
- def revision_date= value
32
- @revision_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
33
- end
34
-
35
- end
36
- end
@@ -1,110 +0,0 @@
1
- require 'lol/model'
2
-
3
- module Lol
4
- class Team < Lol::Model
5
- # @!attribute [r] create_date
6
- # @return [Time] Create Date
7
- attr_reader :create_date
8
-
9
- # @!attribute [r] full_id
10
- # @return [String] Full Team ID
11
- attr_reader :full_id
12
-
13
- # @!attribute [r] last_game_date
14
- # @return [Time] Last Game Date
15
- attr_reader :last_game_date
16
-
17
- # @!attribute [r] last_join_date
18
- # @return [Time] Last Join Date
19
- attr_reader :last_join_date
20
-
21
- # @!attribute [r] last_joined_ranked_team_queue_date
22
- # @return [Time] Last Joined Ranked Team Queue Date
23
- attr_reader :last_joined_ranked_team_queue_date
24
-
25
- # @!attribute [r] match_history
26
- # @return [Array] List of played matches
27
- attr_reader :match_history
28
-
29
- # @!attribute [r] modify_date
30
- # @return [Time] Modified Date
31
- attr_reader :modify_date
32
-
33
- # @!attribute [r] name
34
- # @return [String] Team name
35
- attr_reader :name
36
-
37
- # @!attribute [r] roster
38
- # @return [Roster] Roster
39
- attr_reader :roster
40
-
41
- # @!attribute [r] second_last_join_date
42
- # @return [Time] Second Last Join Date
43
- attr_reader :second_last_join_date
44
-
45
- # @!attribute [r] status
46
- # @return [String] Status
47
- attr_reader :status
48
-
49
- # @!attribute [r] tag
50
- # @return [String] Team Tag
51
- attr_reader :tag
52
-
53
- # @!attribute [r] team_stat_details
54
- # @return [Array] List of Team Statistics
55
- attr_reader :team_stat_details
56
-
57
- # @!attribute [r] third_last_join_date
58
- # @return [Time] Third Last Join Date
59
- attr_reader :third_last_join_date
60
-
61
- private
62
-
63
- attr_writer :name, :status, :tag, :full_id
64
-
65
- def create_date= value
66
- @create_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
67
- end
68
-
69
- def last_game_date= value
70
- @last_game_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
71
- end
72
-
73
- def last_join_date= value
74
- @last_join_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
75
- end
76
-
77
- def last_joined_ranked_team_queue_date= value
78
- @last_joined_ranked_team_queue_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
79
- end
80
-
81
- def second_last_join_date= value
82
- @second_last_join_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
83
- end
84
-
85
- def third_last_join_date= value
86
- @third_last_join_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
87
- end
88
-
89
- def modify_date= value
90
- @modify_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
91
- end
92
-
93
- def match_history= collection
94
- @match_history = collection.map do |c|
95
- c.respond_to?(:[]) && MatchSummary.new(c) || c
96
- end
97
- end
98
-
99
- def roster= roster
100
- @roster = roster.is_a?(Hash) && Roster.new(roster) || roster
101
- end
102
-
103
- def team_stat_details= value
104
- collection = value.is_a?(Hash) && value['teamStatDetails'] || value
105
- @team_stat_details = collection.map do |c|
106
- c.respond_to?(:[]) && TeamStatistic.new(c) || c
107
- end
108
- end
109
- end
110
- end
@@ -1,33 +0,0 @@
1
- require 'lol/model'
2
-
3
- module Lol
4
- class TeamMember < Lol::Model
5
- # @!attribute [r] invite_date
6
- # @return [Time] Invite date
7
- attr_reader :invite_date
8
-
9
- # @!attribute [r] join_date
10
- # @return [Time] Join date
11
- attr_reader :join_date
12
-
13
- # @!attribute [r] player_id
14
- # @return [Fixnum] Player Id
15
- attr_reader :player_id
16
-
17
- # @!attribute [r] status
18
- # @return [String] Status
19
- attr_reader :status
20
-
21
- private
22
-
23
- attr_writer :player_id, :status
24
-
25
- def invite_date= value
26
- @invite_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
27
- end
28
-
29
- def join_date= value
30
- @join_date = value.is_a?(Numeric) && Time.at(value / 1000) || value
31
- end
32
- end
33
- end