Files
Sightstone/test/test_stats.rb
2014-01-12 16:04:11 +01:00

57 lines
1.6 KiB
Ruby

require 'test/unit'
require 'sightstone'
class StatsModuleTest < BaseTest
def test_summary
begin
summary = @@sightstone.stats.summary @@req_id
rescue Sightstone::RateLimitExceededException
puts "Rate limit exeeded, waiting 1 sec"
sleep 1
retry
end
assert_instance_of(Sightstone::PlayerStatsSummaryList, summary)
assert_instance_of(Fixnum, summary.summonerId)
assert_instance_of(Array, summary.playerStatSummaries)
summary.playerStatSummaries.each do |summary|
_check_summary(summary)
end
end
def _check_summary(sum)
assert_instance_of(Sightstone::PlayerStatSummary, sum)
assert_instance_of(Fixnum, sum.wins)
assert_instance_of(Fixnum, sum.modifyDate)
assert_instance_of(String, sum.playerStatSummaryType)
assert_instance_of(Hash, sum.aggregatedStats)
keys = sum.aggregatedStats.keys
keys.each do |key|
assert_instance_of(Fixnum, sum.aggregatedStats[key])
end
end
def test_ranked_stats
begin
stats = @@sightstone.stats.ranked @@req_id
rescue Sightstone::RateLimitExceededException
puts "Rate limit exeeded, waiting 1 sec"
sleep 1
retry
end
assert_instance_of(Fixnum, stats.summonerId)
assert_instance_of(Fixnum, stats.modifyDate)
assert_instance_of(Hash, stats.champions)
keys = stats.champions.keys
keys.each do |champId|
assert_instance_of(Hash, stats.champions[champId])
statkeys = stats.champions[champId].keys
statkeys.each do |statkey|
assert_instance_of(String, statkey)
assert_instance_of(Fixnum, stats.champions[champId][statkey])
end
end
end
end