ruby-lol 0.12.2 → 1.0.0

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 (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