From e6556976fa7eb7be013336997c59fd81e858e18b Mon Sep 17 00:00:00 2001 From: danijoo Date: Tue, 25 Mar 2014 11:07:22 +0100 Subject: [PATCH] added specs for champion module --- Gemfile.lock | 8 ++ lib/sightstone/modules/champion_module.rb | 2 +- sightstone.gemspec | 3 +- spec/modules/champion_module_spec.rb | 77 +++++++++++++++++++ .../raw_responses/champion_v1.1_euw.response | 12 +++ .../champion_v1.1_euw_f2p.response | 12 +++ spec/spec_helper.rb | 1 + 7 files changed, 113 insertions(+), 2 deletions(-) create mode 100644 spec/modules/champion_module_spec.rb create mode 100644 spec/modules/raw_responses/champion_v1.1_euw.response create mode 100644 spec/modules/raw_responses/champion_v1.1_euw_f2p.response diff --git a/Gemfile.lock b/Gemfile.lock index 3d0e997..94e2813 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -7,6 +7,9 @@ PATH GEM remote: https://rubygems.org/ specs: + addressable (2.3.6) + crack (0.4.2) + safe_yaml (~> 1.0.0) diff-lcs (1.2.5) mime-types (2.2) rake (10.1.1) @@ -20,6 +23,10 @@ GEM rspec-expectations (2.14.5) diff-lcs (>= 1.1.3, < 2.0) rspec-mocks (2.14.6) + safe_yaml (1.0.1) + webmock (1.17.4) + addressable (>= 2.2.7) + crack (>= 0.3.2) PLATFORMS ruby @@ -29,3 +36,4 @@ DEPENDENCIES rake rspec sightstone! + webmock diff --git a/lib/sightstone/modules/champion_module.rb b/lib/sightstone/modules/champion_module.rb index d8a1d9c..26f2fa7 100644 --- a/lib/sightstone/modules/champion_module.rb +++ b/lib/sightstone/modules/champion_module.rb @@ -13,7 +13,7 @@ class ChampionModule < SightstoneBaseModule # @return [Array] array of champs def champions(optional={}) region = optional[:region] || @sightstone.region - free_to_play = optional[:free_to_play] + free_to_play = optional[:free_to_play] || false uri = "https://prod.api.pvp.net/api/lol/#{region}/v1.1/champion" response = _get_api_response(uri, {'freeToPlay' => free_to_play}) diff --git a/sightstone.gemspec b/sightstone.gemspec index 73a79ca..ca10d61 100644 --- a/sightstone.gemspec +++ b/sightstone.gemspec @@ -12,5 +12,6 @@ Gem::Specification.new do |s| s.add_runtime_dependency 'rest-client' s.add_development_dependency 'rake' - s.add_development_dependency "rspec" + s.add_development_dependency 'rspec' + s.add_development_dependency 'webmock' end diff --git a/spec/modules/champion_module_spec.rb b/spec/modules/champion_module_spec.rb new file mode 100644 index 0000000..ce1721f --- /dev/null +++ b/spec/modules/champion_module_spec.rb @@ -0,0 +1,77 @@ +require 'spec_helper' + +module Sightstone + + describe ChampionModule do + + before :each do + @module = ChampionModule.new(Sightstone.new("api_key", "euw")) + + end + + describe "#new" do + it "should initialize a ChampionModule" do + @module.should be_instance_of ChampionModule + end + + end + + describe "#champions" do + + before :each do + raw_response = File.new("spec/modules/raw_responses/champion_v1.1_euw.response") + stub_request(:get, "https://prod.api.pvp.net/api/lol/euw/v1.1/champion?api_key=api_key&freeToPlay=false"). + with(:headers => {'Accept'=>'*/*; q=0.5, application/xml', 'Accept-Encoding'=>'gzip, deflate', 'User-Agent'=>'Ruby'}). + to_return(raw_response) + + raw_response_f2p = File.new("spec/modules/raw_responses/champion_v1.1_euw_f2p.response") + stub_request(:get, "https://prod.api.pvp.net/api/lol/euw/v1.1/champion?api_key=api_key&freeToPlay=true"). + with(:headers => {'Accept'=>'*/*; q=0.5, application/xml', 'Accept-Encoding'=>'gzip, deflate', 'User-Agent'=>'Ruby'}). + to_return(raw_response_f2p) + end + + it "should return a list of champions for the default region" do + + champions = @module.champions + champions.should be_instance_of Array + champions.each do |champ| + champ.should be_instance_of Champion + end + end + + it "should return a list of champions for given region" do + @module.instance_variable_set("@sightstone", Sightstone.new("api_key", "na")) + + champions = @module.champions(region: "euw") + champions.should be_instance_of Array + champions.each do |champ| + champ.should be_instance_of Champion + end + end + + it "should only return free to play champions" do + champions = @module.champions({free_to_play: true}) + champions.should be_instance_of Array + champions.each do |champ| + champ.should be_instance_of Champion + champ.freeToPlay.should be true + end + end + + it "should evaluate codeblocks" do + filtered = [] + @module.champions do |champions| + champions.each do |champ| + filtered << champ if champ.name == "Heimerdinger" + end + end + filtered.should have(1).item + filtered[0].name.should eql "Heimerdinger" + + end + + end + + end + +end \ No newline at end of file diff --git a/spec/modules/raw_responses/champion_v1.1_euw.response b/spec/modules/raw_responses/champion_v1.1_euw.response new file mode 100644 index 0000000..294a8fe --- /dev/null +++ b/spec/modules/raw_responses/champion_v1.1_euw.response @@ -0,0 +1,12 @@ +HTTP/1.1 200 OK +Access-Control-Allow-Headers: Content-Type +Access-Control-Allow-Methods: GET, POST, DELETE, PUT +Access-Control-Allow-Origin: * +Content-Type: application/json; charset=UTF-8 +Date: Tue, 25 Mar 2014 09:14:51 GMT +Server: Jetty(9.1.1.v20140108) +Vary: Accept-Encoding, User-Agent +transfer-encoding: chunked +Connection: keep-alive + +{"champions":[{"id":266,"name":"Aatrox","active":true,"attackRank":8,"defenseRank":4,"magicRank":3,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":103,"name":"Ahri","active":true,"attackRank":3,"defenseRank":4,"magicRank":8,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":84,"name":"Akali","active":true,"attackRank":5,"defenseRank":3,"magicRank":8,"difficultyRank":6,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":12,"name":"Alistar","active":true,"attackRank":6,"defenseRank":9,"magicRank":5,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":32,"name":"Amumu","active":true,"attackRank":2,"defenseRank":6,"magicRank":8,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":34,"name":"Anivia","active":true,"attackRank":1,"defenseRank":4,"magicRank":10,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":1,"name":"Annie","active":true,"attackRank":2,"defenseRank":3,"magicRank":10,"difficultyRank":4,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":22,"name":"Ashe","active":true,"attackRank":7,"defenseRank":3,"magicRank":2,"difficultyRank":4,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":53,"name":"Blitzcrank","active":true,"attackRank":4,"defenseRank":8,"magicRank":5,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":63,"name":"Brand","active":true,"attackRank":2,"defenseRank":2,"magicRank":9,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":51,"name":"Caitlyn","active":true,"attackRank":8,"defenseRank":2,"magicRank":2,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":69,"name":"Cassiopeia","active":true,"attackRank":2,"defenseRank":3,"magicRank":9,"difficultyRank":10,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":31,"name":"Chogath","active":true,"attackRank":3,"defenseRank":7,"magicRank":7,"difficultyRank":7,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":42,"name":"Corki","active":true,"attackRank":8,"defenseRank":3,"magicRank":6,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":122,"name":"Darius","active":true,"attackRank":9,"defenseRank":5,"magicRank":1,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":131,"name":"Diana","active":true,"attackRank":7,"defenseRank":6,"magicRank":8,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":119,"name":"Draven","active":true,"attackRank":9,"defenseRank":3,"magicRank":1,"difficultyRank":10,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":36,"name":"DrMundo","active":true,"attackRank":5,"defenseRank":7,"magicRank":6,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":60,"name":"Elise","active":true,"attackRank":6,"defenseRank":5,"magicRank":7,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":28,"name":"Evelynn","active":true,"attackRank":4,"defenseRank":2,"magicRank":7,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":81,"name":"Ezreal","active":true,"attackRank":7,"defenseRank":2,"magicRank":6,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":9,"name":"FiddleSticks","active":true,"attackRank":2,"defenseRank":3,"magicRank":9,"difficultyRank":5,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":114,"name":"Fiora","active":true,"attackRank":10,"defenseRank":4,"magicRank":2,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":105,"name":"Fizz","active":true,"attackRank":6,"defenseRank":4,"magicRank":7,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":3,"name":"Galio","active":true,"attackRank":3,"defenseRank":7,"magicRank":6,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":41,"name":"Gangplank","active":true,"attackRank":7,"defenseRank":6,"magicRank":4,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":86,"name":"Garen","active":true,"attackRank":7,"defenseRank":7,"magicRank":1,"difficultyRank":2,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":79,"name":"Gragas","active":true,"attackRank":5,"defenseRank":6,"magicRank":7,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":104,"name":"Graves","active":true,"attackRank":8,"defenseRank":5,"magicRank":3,"difficultyRank":4,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":120,"name":"Hecarim","active":true,"attackRank":8,"defenseRank":6,"magicRank":4,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":74,"name":"Heimerdinger","active":true,"attackRank":2,"defenseRank":6,"magicRank":8,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":39,"name":"Irelia","active":true,"attackRank":7,"defenseRank":4,"magicRank":5,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":40,"name":"Janna","active":true,"attackRank":3,"defenseRank":5,"magicRank":7,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":59,"name":"JarvanIV","active":true,"attackRank":6,"defenseRank":8,"magicRank":3,"difficultyRank":5,"botEnabled":false,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":24,"name":"Jax","active":true,"attackRank":7,"defenseRank":5,"magicRank":7,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":126,"name":"Jayce","active":true,"attackRank":8,"defenseRank":4,"magicRank":3,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":222,"name":"Jinx","active":true,"attackRank":9,"defenseRank":2,"magicRank":4,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":43,"name":"Karma","active":true,"attackRank":1,"defenseRank":7,"magicRank":8,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":30,"name":"Karthus","active":true,"attackRank":2,"defenseRank":2,"magicRank":10,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":38,"name":"Kassadin","active":true,"attackRank":3,"defenseRank":5,"magicRank":8,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":55,"name":"Katarina","active":true,"attackRank":4,"defenseRank":3,"magicRank":9,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":10,"name":"Kayle","active":true,"attackRank":6,"defenseRank":6,"magicRank":7,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":85,"name":"Kennen","active":true,"attackRank":6,"defenseRank":4,"magicRank":7,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":121,"name":"Khazix","active":true,"attackRank":9,"defenseRank":4,"magicRank":3,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":96,"name":"KogMaw","active":true,"attackRank":8,"defenseRank":2,"magicRank":5,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":7,"name":"Leblanc","active":true,"attackRank":1,"defenseRank":4,"magicRank":10,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":64,"name":"LeeSin","active":true,"attackRank":8,"defenseRank":5,"magicRank":3,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":89,"name":"Leona","active":true,"attackRank":4,"defenseRank":8,"magicRank":3,"difficultyRank":4,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":127,"name":"Lissandra","active":true,"attackRank":2,"defenseRank":5,"magicRank":8,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":236,"name":"Lucian","active":true,"attackRank":8,"defenseRank":5,"magicRank":3,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":117,"name":"Lulu","active":true,"attackRank":4,"defenseRank":5,"magicRank":7,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":99,"name":"Lux","active":true,"attackRank":2,"defenseRank":4,"magicRank":9,"difficultyRank":6,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":54,"name":"Malphite","active":true,"attackRank":5,"defenseRank":9,"magicRank":7,"difficultyRank":3,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":90,"name":"Malzahar","active":true,"attackRank":2,"defenseRank":2,"magicRank":9,"difficultyRank":6,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":57,"name":"Maokai","active":true,"attackRank":3,"defenseRank":8,"magicRank":6,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":11,"name":"MasterYi","active":true,"attackRank":10,"defenseRank":4,"magicRank":2,"difficultyRank":2,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":21,"name":"MissFortune","active":true,"attackRank":8,"defenseRank":2,"magicRank":5,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":62,"name":"MonkeyKing","active":true,"attackRank":8,"defenseRank":5,"magicRank":2,"difficultyRank":3,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":82,"name":"Mordekaiser","active":true,"attackRank":4,"defenseRank":6,"magicRank":7,"difficultyRank":3,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":25,"name":"Morgana","active":true,"attackRank":1,"defenseRank":6,"magicRank":8,"difficultyRank":6,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":267,"name":"Nami","active":true,"attackRank":4,"defenseRank":3,"magicRank":7,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":75,"name":"Nasus","active":true,"attackRank":7,"defenseRank":5,"magicRank":6,"difficultyRank":2,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":111,"name":"Nautilus","active":true,"attackRank":4,"defenseRank":6,"magicRank":6,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":76,"name":"Nidalee","active":true,"attackRank":5,"defenseRank":4,"magicRank":7,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":56,"name":"Nocturne","active":true,"attackRank":9,"defenseRank":5,"magicRank":2,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":20,"name":"Nunu","active":true,"attackRank":4,"defenseRank":6,"magicRank":7,"difficultyRank":1,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":2,"name":"Olaf","active":true,"attackRank":9,"defenseRank":5,"magicRank":3,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":61,"name":"Orianna","active":true,"attackRank":4,"defenseRank":3,"magicRank":9,"difficultyRank":10,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":80,"name":"Pantheon","active":true,"attackRank":9,"defenseRank":4,"magicRank":3,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":78,"name":"Poppy","active":true,"attackRank":6,"defenseRank":6,"magicRank":5,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":133,"name":"Quinn","active":true,"attackRank":9,"defenseRank":4,"magicRank":2,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":33,"name":"Rammus","active":true,"attackRank":4,"defenseRank":10,"magicRank":5,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":58,"name":"Renekton","active":true,"attackRank":8,"defenseRank":5,"magicRank":2,"difficultyRank":3,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":107,"name":"Rengar","active":true,"attackRank":7,"defenseRank":4,"magicRank":2,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":92,"name":"Riven","active":true,"attackRank":8,"defenseRank":5,"magicRank":1,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":68,"name":"Rumble","active":true,"attackRank":3,"defenseRank":6,"magicRank":8,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":13,"name":"Ryze","active":true,"attackRank":2,"defenseRank":2,"magicRank":10,"difficultyRank":3,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":113,"name":"Sejuani","active":true,"attackRank":5,"defenseRank":7,"magicRank":6,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":35,"name":"Shaco","active":true,"attackRank":8,"defenseRank":4,"magicRank":6,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":98,"name":"Shen","active":true,"attackRank":3,"defenseRank":9,"magicRank":3,"difficultyRank":3,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":102,"name":"Shyvana","active":true,"attackRank":8,"defenseRank":6,"magicRank":3,"difficultyRank":4,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":27,"name":"Singed","active":true,"attackRank":4,"defenseRank":8,"magicRank":7,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":14,"name":"Sion","active":true,"attackRank":5,"defenseRank":8,"magicRank":7,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":15,"name":"Sivir","active":true,"attackRank":9,"defenseRank":3,"magicRank":1,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":72,"name":"Skarner","active":true,"attackRank":7,"defenseRank":6,"magicRank":5,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":37,"name":"Sona","active":true,"attackRank":5,"defenseRank":2,"magicRank":8,"difficultyRank":1,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":16,"name":"Soraka","active":true,"attackRank":2,"defenseRank":5,"magicRank":7,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":50,"name":"Swain","active":true,"attackRank":2,"defenseRank":6,"magicRank":9,"difficultyRank":5,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":134,"name":"Syndra","active":true,"attackRank":2,"defenseRank":3,"magicRank":9,"difficultyRank":10,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":91,"name":"Talon","active":true,"attackRank":9,"defenseRank":3,"magicRank":1,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":44,"name":"Taric","active":true,"attackRank":4,"defenseRank":8,"magicRank":5,"difficultyRank":3,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":17,"name":"Teemo","active":true,"attackRank":5,"defenseRank":3,"magicRank":7,"difficultyRank":4,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":412,"name":"Thresh","active":true,"attackRank":5,"defenseRank":6,"magicRank":6,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":18,"name":"Tristana","active":true,"attackRank":9,"defenseRank":3,"magicRank":5,"difficultyRank":3,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":48,"name":"Trundle","active":true,"attackRank":7,"defenseRank":6,"magicRank":2,"difficultyRank":5,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":23,"name":"Tryndamere","active":true,"attackRank":10,"defenseRank":5,"magicRank":2,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":4,"name":"TwistedFate","active":true,"attackRank":6,"defenseRank":2,"magicRank":6,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":29,"name":"Twitch","active":true,"attackRank":9,"defenseRank":2,"magicRank":3,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":77,"name":"Udyr","active":true,"attackRank":8,"defenseRank":7,"magicRank":4,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":6,"name":"Urgot","active":true,"attackRank":8,"defenseRank":5,"magicRank":3,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":110,"name":"Varus","active":true,"attackRank":7,"defenseRank":3,"magicRank":4,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":67,"name":"Vayne","active":true,"attackRank":10,"defenseRank":1,"magicRank":1,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":45,"name":"Veigar","active":true,"attackRank":2,"defenseRank":2,"magicRank":10,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":161,"name":"Velkoz","active":true,"attackRank":2,"defenseRank":2,"magicRank":10,"difficultyRank":8,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":254,"name":"Vi","active":true,"attackRank":8,"defenseRank":5,"magicRank":3,"difficultyRank":5,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":112,"name":"Viktor","active":true,"attackRank":2,"defenseRank":5,"magicRank":9,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":8,"name":"Vladimir","active":true,"attackRank":2,"defenseRank":6,"magicRank":8,"difficultyRank":2,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":106,"name":"Volibear","active":true,"attackRank":7,"defenseRank":7,"magicRank":4,"difficultyRank":2,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":19,"name":"Warwick","active":true,"attackRank":7,"defenseRank":4,"magicRank":4,"difficultyRank":2,"botEnabled":true,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":101,"name":"Xerath","active":true,"attackRank":1,"defenseRank":3,"magicRank":10,"difficultyRank":6,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":5,"name":"XinZhao","active":true,"attackRank":8,"defenseRank":6,"magicRank":3,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":157,"name":"Yasuo","active":true,"attackRank":8,"defenseRank":4,"magicRank":4,"difficultyRank":8,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":83,"name":"Yorick","active":true,"attackRank":6,"defenseRank":6,"magicRank":6,"difficultyRank":3,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":154,"name":"Zac","active":true,"attackRank":3,"defenseRank":7,"magicRank":7,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":238,"name":"Zed","active":true,"attackRank":9,"defenseRank":2,"magicRank":1,"difficultyRank":9,"botEnabled":false,"freeToPlay":false,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":115,"name":"Ziggs","active":true,"attackRank":2,"defenseRank":4,"magicRank":9,"difficultyRank":6,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":26,"name":"Zilean","active":true,"attackRank":2,"defenseRank":5,"magicRank":8,"difficultyRank":4,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":143,"name":"Zyra","active":true,"attackRank":4,"defenseRank":3,"magicRank":8,"difficultyRank":7,"botEnabled":false,"freeToPlay":false,"botMmEnabled":true,"rankedPlayEnabled":true}]} \ No newline at end of file diff --git a/spec/modules/raw_responses/champion_v1.1_euw_f2p.response b/spec/modules/raw_responses/champion_v1.1_euw_f2p.response new file mode 100644 index 0000000..aa0eb19 --- /dev/null +++ b/spec/modules/raw_responses/champion_v1.1_euw_f2p.response @@ -0,0 +1,12 @@ +HTTP/1.1 200 OK +Access-Control-Allow-Headers: Content-Type +Access-Control-Allow-Methods: GET, POST, DELETE, PUT +Access-Control-Allow-Origin: * +Content-Type: application/json; charset=UTF-8 +Date: Tue, 25 Mar 2014 09:57:23 GMT +Server: Jetty(9.1.1.v20140108) +Vary: Accept-Encoding, User-Agent +Content-Length: 1878 +Connection: keep-alive + +{"champions":[{"id":84,"name":"Akali","active":true,"attackRank":5,"defenseRank":3,"magicRank":8,"difficultyRank":6,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":59,"name":"JarvanIV","active":true,"attackRank":6,"defenseRank":8,"magicRank":3,"difficultyRank":5,"botEnabled":false,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":21,"name":"MissFortune","active":true,"attackRank":8,"defenseRank":2,"magicRank":5,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":15,"name":"Sivir","active":true,"attackRank":9,"defenseRank":3,"magicRank":1,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":37,"name":"Sona","active":true,"attackRank":5,"defenseRank":2,"magicRank":8,"difficultyRank":1,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":16,"name":"Soraka","active":true,"attackRank":2,"defenseRank":5,"magicRank":7,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":17,"name":"Teemo","active":true,"attackRank":5,"defenseRank":3,"magicRank":7,"difficultyRank":4,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":101,"name":"Xerath","active":true,"attackRank":1,"defenseRank":3,"magicRank":10,"difficultyRank":6,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true},{"id":5,"name":"XinZhao","active":true,"attackRank":8,"defenseRank":6,"magicRank":3,"difficultyRank":3,"botEnabled":true,"freeToPlay":true,"botMmEnabled":true,"rankedPlayEnabled":true},{"id":157,"name":"Yasuo","active":true,"attackRank":8,"defenseRank":4,"magicRank":4,"difficultyRank":8,"botEnabled":false,"freeToPlay":true,"botMmEnabled":false,"rankedPlayEnabled":true}]} \ No newline at end of file diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 23e5ea3..5a89b5b 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,5 +1,6 @@ require 'rspec' require 'sightstone' +require 'webmock/rspec' RSpec.configure do |config| config.color_enabled = true