starcraft2 0.0.1 → 0.0.2

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.
data/lib/sc2/client.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  module SC2
2
2
  class Client
3
3
  ACHIEVEMENTS_PATH = "/api/sc2/data/achievements"
4
+ REWARDS_PATH = "/api/sc2/data/rewards"
4
5
 
5
6
  attr_accessor :locale, :host
6
7
 
@@ -14,6 +15,10 @@ module SC2
14
15
  Achievement.build_achievements(achievements_data)
15
16
  end
16
17
 
18
+ def rewards
19
+ Reward.build_rewards(rewards_data)
20
+ end
21
+
17
22
  private
18
23
 
19
24
  def achievements_data
@@ -21,8 +26,19 @@ module SC2
21
26
  end
22
27
 
23
28
  def achievements_url
24
- current_locale = locale.nil? ? '' : "?locale=#{locale}"
25
- "http://" + host + ACHIEVEMENTS_PATH + current_locale
29
+ "http://" + host + ACHIEVEMENTS_PATH + locale_param
30
+ end
31
+
32
+ def rewards_data
33
+ HTTParty.get(rewards_url).body
34
+ end
35
+
36
+ def rewards_url
37
+ "http://" + host + REWARDS_PATH + locale_param
38
+ end
39
+
40
+ def locale_param
41
+ locale.nil? ? '' : "?locale=#{locale}"
26
42
  end
27
43
  end
28
44
  end
@@ -11,35 +11,65 @@ describe SC2::Client do
11
11
  it 'should store the achievements url' do
12
12
  SC2::Client::ACHIEVEMENTS_PATH.should == '/api/sc2/data/achievements'
13
13
  end
14
- end
15
14
 
16
- it 'should store the locale' do
17
- @options = { :locale => 'en_US' }
18
- client.locale.should == 'en_US'
15
+ it 'should store the rewards url' do
16
+ SC2::Client::REWARDS_PATH.should == '/api/sc2/data/rewards'
17
+ end
19
18
  end
20
19
 
21
- it 'should store the host' do
22
- @options = { :host => 'someserver.com'}
23
- client.host.should == 'someserver.com'
24
- end
20
+ describe ".initialize" do
21
+ it 'should store the locale' do
22
+ @options = { :locale => 'en_US' }
23
+ client.locale.should == 'en_US'
24
+ end
25
25
 
26
- it 'should return an array of achievements' do
27
- VCR.use_cassette('achievements') do
28
- client.achievements.class.should == Array
26
+ it 'should store the host' do
27
+ @options = { :host => 'someserver.com'}
28
+ client.host.should == 'someserver.com'
29
29
  end
30
30
  end
31
31
 
32
- it 'should return items of type SC2::Achievement' do
33
- VCR.use_cassette('achievements') do
34
- client.achievements.first.class.should == SC2::Achievement
32
+ describe ".achievements" do
33
+ it 'should return an array of achievements' do
34
+ VCR.use_cassette('achievements') do
35
+ client.achievements.class.should == Array
36
+ end
37
+ end
38
+
39
+ it 'should return items of type SC2::Achievement' do
40
+ VCR.use_cassette('achievements') do
41
+ client.achievements.first.class.should == SC2::Achievement
42
+ end
43
+ end
44
+
45
+ it "should return achievements in the correct locale" do
46
+ @options.merge!({:locale => "pt_BR"})
47
+
48
+ VCR.use_cassette('achievements') do
49
+ client.achievements.first.title.should == "TCT Destruidor"
50
+ end
35
51
  end
36
52
  end
37
53
 
38
- it "should return achievements in the correct locale" do
39
- @options.merge!({:locale => "pt_BR"})
54
+ describe ".rewards" do
55
+ it 'should return an array of rewards' do
56
+ VCR.use_cassette('rewards') do
57
+ client.rewards.class.should == Array
58
+ end
59
+ end
60
+
61
+ it 'should return items of type SC2::Reward' do
62
+ VCR.use_cassette('rewards') do
63
+ client.rewards.first.class.should == SC2::Reward
64
+ end
65
+ end
66
+
67
+ it "should return rewards in the correct locale" do
68
+ @options.merge!({:locale => "pt_BR"})
40
69
 
41
- VCR.use_cassette('achievements') do
42
- client.achievements.first.title.should == "TCT Destruidor"
70
+ VCR.use_cassette('rewards') do
71
+ client.rewards.first.title.should == "Kachinsky"
72
+ end
43
73
  end
44
74
  end
45
75
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: starcraft2
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -114,7 +114,6 @@ files:
114
114
  - lib/sc2/loader.rb
115
115
  - lib/sc2/reward.rb
116
116
  - lib/starcraft2.rb
117
- - sc2.gemspec
118
117
  - spec/sc2/achievement_spec.rb
119
118
  - spec/sc2/client_spec.rb
120
119
  - spec/sc2/reward_spec.rb
@@ -133,7 +132,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
133
132
  version: '0'
134
133
  segments:
135
134
  - 0
136
- hash: -2271089934831786972
135
+ hash: 2678161590067484758
137
136
  required_rubygems_version: !ruby/object:Gem::Requirement
138
137
  none: false
139
138
  requirements:
@@ -142,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
142
141
  version: '0'
143
142
  segments:
144
143
  - 0
145
- hash: -2271089934831786972
144
+ hash: 2678161590067484758
146
145
  requirements: []
147
146
  rubyforge_project:
148
147
  rubygems_version: 1.8.25
data/sc2.gemspec DELETED
@@ -1,22 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- Gem::Specification.new do |gem|
3
- gem.add_dependency 'httparty'
4
-
5
- gem.authors = ["Josh Ellithorpe", "James Fickel", "Jan Hein Hoogstad"]
6
- gem.email = ["quest@mac.com"]
7
- gem.description = %q{A small SC2 api wrapper}
8
- gem.summary = %q{A small SC2 api wrapper}
9
- gem.homepage = ""
10
-
11
- gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
12
- gem.files = `git ls-files`.split("\n")
13
- gem.test_files = `git ls-files -- {spec}/*`.split("\n")
14
- gem.name = "starcraft2"
15
- gem.require_paths = ["lib"]
16
- gem.version = "0.0.1"
17
-
18
- gem.add_development_dependency 'rspec', '~> 2.6.0'
19
- gem.add_development_dependency 'rake'
20
- gem.add_development_dependency 'vcr'
21
- gem.add_development_dependency 'webmock', '1.11'
22
- end