arcserver.rb 0.1.2 → 0.1.3

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/Rakefile CHANGED
@@ -1,62 +1,52 @@
1
- require 'rubygems'
1
+ $LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
2
2
  require 'rake'
3
+ require 'rake/testtask'
4
+ require 'rake/rdoctask'
5
+ require 'fileutils'
6
+ require 'arcserver/version'
3
7
 
4
- begin
5
- require 'jeweler'
6
- Jeweler::Tasks.new do |gem|
7
- gem.name = "arcserver.rb"
8
- gem.summary = %Q{Library for accessing ESRI ArcServer REST and SOAP APIs.}
9
- gem.email = "casey.colin@gmail.com"
10
- gem.homepage = "http://github.com/colincasey/arcserver.rb"
11
- gem.authors = ["Colin Casey"]
12
- gem.add_dependency('httparty', '>= 0.4.5')
13
- gem.add_dependency('handsoap', '>= 1.1.0')
14
- gem.add_dependency('nokogiri', '>= 1.3.3')
15
- gem.add_dependency('httpclient', '>= 2.1.5')
16
- gem.add_development_dependency('jeweler', '>= 1.2.1')
17
- gem.add_development_dependency('shoulda', '>= 2.10.2')
18
- gem.add_development_dependency('mocha', '>= 0.9.8')
19
- # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
20
- end
21
- rescue LoadError
22
- puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
23
- end
8
+ desc "Run all tests"
9
+ task :test => ["test:unit", "test:functional"]
24
10
 
25
- require 'rake/testtask'
26
- Rake::TestTask.new(:test) do |test|
27
- test.libs << 'lib' << 'test'
28
- test.pattern = 'test/**/*_test.rb'
29
- test.verbose = true
30
- end
11
+ task :default => :test
31
12
 
32
- begin
33
- require 'rcov/rcovtask'
34
- Rcov::RcovTask.new do |test|
35
- test.libs << 'test'
36
- test.pattern = 'test/**/*_test.rb'
13
+ namespace :test do
14
+ desc "Run unit tests"
15
+ Rake::TestTask.new(:unit) do |test|
16
+ test.libs << 'lib' << 'test'
17
+ test.pattern = 'test/unit/**/*_test.rb'
37
18
  test.verbose = true
38
19
  end
39
- rescue LoadError
40
- task :rcov do
41
- abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
20
+
21
+ desc "Run functional tests"
22
+ Rake::TestTask.new(:functional) do |test|
23
+ test.libs << 'lib' << 'test'
24
+ test.pattern = 'test/functional/**/*_test.rb'
25
+ test.verbose = true
42
26
  end
43
27
  end
44
28
 
45
-
46
- task :default => :test
47
-
48
- require 'rake/rdoctask'
49
29
  Rake::RDocTask.new do |rdoc|
50
- if File.exist?('VERSION.yml')
51
- config = YAML.load(File.read('VERSION.yml'))
52
- version = "#{config[:major]}.#{config[:minor]}.#{config[:patch]}"
53
- else
54
- version = ""
55
- end
56
-
57
30
  rdoc.rdoc_dir = 'rdoc'
58
- rdoc.title = "arcserver.rb #{version}"
31
+ rdoc.title = "arcserver.rb #{ArcServer::VERSION}"
59
32
  rdoc.rdoc_files.include('README*')
60
33
  rdoc.rdoc_files.include('lib/**/*.rb')
61
34
  end
62
35
 
36
+ desc "Build arcserver.rb gem"
37
+ task :build do
38
+ system "gem build arcserver.rb.gemspec"
39
+
40
+ base_dir = File.dirname(__FILE__)
41
+ pkg_dir = File.join(base_dir, "pkg")
42
+ FileUtils.mkdir_p pkg_dir
43
+
44
+ gem_file_name = File.join(base_dir, "arcserver.rb-#{ArcServer::VERSION}.gem")
45
+ FileUtils.mv(gem_file_name, pkg_dir)
46
+ end
47
+
48
+ desc "Release arcserver.rb gem"
49
+ task :release => :build do
50
+ system "gem push pkg/arcserver.rb-#{ArcServer::VERSION}"
51
+ end
52
+
@@ -4,4 +4,4 @@ require 'handsoap'
4
4
  Handsoap.http_driver = :httpclient
5
5
 
6
6
  require 'arcserver/url_helper'
7
- require 'arcserver/map_server'
7
+ require 'arcserver/map_server'
@@ -1,15 +1,18 @@
1
1
  # encoding: utf-8
2
2
  require 'arcserver/rest/map_server'
3
3
  require 'arcserver/soap/map_server'
4
+ require 'arcserver/util/legend_image'
4
5
  require 'forwardable'
5
6
 
6
7
  module ArcServer
8
+ class ArcServerError < StandardError; end
9
+
7
10
  class MapServer
8
11
  include UrlHelper
9
12
  extend Forwardable
10
13
 
11
14
  attr_reader :soap_service
12
- def_delegators :soap_service, :get_default_map_name, :get_legend_info
15
+ def_delegators :soap_service, :get_default_map_name, :get_legend_info, :get_legend_image
13
16
 
14
17
  attr_reader :rest_service
15
18
  def_delegators :rest_service, :export
@@ -20,5 +23,18 @@ module ArcServer
20
23
  @soap_service = opts[:soap_service] || SOAP::MapServer.new(to_soap(url))
21
24
  @rest_service = opts[:rest_service] || REST::MapServer.new(to_rest(url))
22
25
  end
26
+
27
+ # Utility method for generating a legend image
28
+ # (requires optional dependency, RMagick [>= 2.13.1], to be installed)
29
+ #
30
+ # @return [Magick::Image] the legend as an RMagick Image object
31
+ def get_legend_image
32
+ begin
33
+ require 'RMagick' unless Object.const_defined?("Magick")
34
+ rescue LoadError
35
+ raise ArcServerError, "#{self.class}#get_legend_image needs an optional dependency 'RMagick [>= 2.13.1]' to be installed - try `gem install rmagick`"
36
+ end
37
+ Util::LegendImage.new(self).get_image
38
+ end
23
39
  end
24
40
  end
@@ -24,7 +24,6 @@ module ArcServer
24
24
 
25
25
  def get_legend_info(args = {})
26
26
  image_return_type = args[:image_return_url] ? "esriImageReturnURL" : "esriImageReturnMimeData"
27
-
28
27
  response = invoke("ns:GetLegendInfo") do |message|
29
28
  message.add "MapName", args[:map_name] || get_default_map_name
30
29
  message.add "ImageType" do |image_type|
@@ -85,6 +84,7 @@ module ArcServer
85
84
  }
86
85
  }
87
86
  end
87
+
88
88
 
89
89
  end
90
90
  end
@@ -0,0 +1,69 @@
1
+ # encoding: utf-8
2
+
3
+ module ArcServer
4
+ module Util
5
+ class LegendImage
6
+ DEFAULT_LEGEND_WIDTH = 250
7
+
8
+ def initialize(map_server)
9
+ @map_server = map_server
10
+ end
11
+
12
+ def get_image
13
+ legend_image = Magick::Image.new(*determine_legend_size)
14
+
15
+ gc = Magick::Draw.new
16
+ gc.stroke_antialias(false)
17
+ gc.text_antialias = false
18
+ gc.density = "96x96"
19
+
20
+ y = 0
21
+ legend_info.each do |legend|
22
+ name = legend[:name]
23
+ gc.text(10, y+=30, name)
24
+
25
+ gc.draw(legend_image)
26
+ y -= 15
27
+
28
+ legend_classes = legend[:legend_groups][0][:legend_classes]
29
+ legend_classes.each do |legend_class|
30
+ img = Magick::Image.read_inline(legend_class[:symbol_image][:image_data]).first
31
+ legend_image.composite!(img, 20, y+=25, Magick::OverCompositeOp)
32
+ gc.text(50, y+14, legend_class[:label]) unless legend_class[:label].nil?
33
+ gc.draw(legend_image)
34
+ img.destroy!
35
+ end
36
+
37
+ y += 5
38
+ end
39
+
40
+ legend_image
41
+ end
42
+
43
+ private
44
+ def determine_legend_size
45
+ width = DEFAULT_LEGEND_WIDTH
46
+
47
+ height = legend_info.inject(0) do |h, legend|
48
+ legend_classes = legend[:legend_groups][0][:legend_classes]
49
+
50
+ # expand the legend width if labels are present
51
+ legend_classes.each do |legend_class|
52
+ if label = legend_class[:label]
53
+ label_width = label.length * 10
54
+ width = width > label_width ? width : label_width
55
+ end
56
+ end
57
+
58
+ h += (20 + (25 * legend_classes.length))
59
+ end
60
+
61
+ [width, height + 20]
62
+ end
63
+
64
+ def legend_info
65
+ @legend_info ||= @map_server.get_legend_info
66
+ end
67
+ end
68
+ end
69
+ end
@@ -0,0 +1,7 @@
1
+ # encoding: utf-8
2
+ module ArcServer
3
+ MAJOR = 0
4
+ MINOR = 1
5
+ PATCH = 3
6
+ VERSION = [MAJOR, MINOR, PATCH].join('.')
7
+ end
@@ -9,4 +9,17 @@ $LOAD_PATH.unshift(File.dirname(__FILE__))
9
9
  require 'arcserver'
10
10
 
11
11
  class Test::Unit::TestCase
12
+ @@fixtures = {}
13
+ def self.fixtures list
14
+ [list].flatten.each do |fixture|
15
+ self.class_eval do
16
+ # add a method name for this fixture type
17
+ define_method(fixture) do |item|
18
+ # load and cache the YAML
19
+ @@fixtures[fixture] ||= YAML::load_file("test/fixtures/#{fixture.to_s}.yml")
20
+ @@fixtures[fixture][item.to_s]
21
+ end
22
+ end
23
+ end
24
+ end
12
25
  end
@@ -40,4 +40,22 @@ class ArcServer::MapServerTest < Test::Unit::TestCase
40
40
  @map_server.export
41
41
  end
42
42
  end
43
+
44
+ context "verify delegation of legend image creation to ArcServer::Util::LegendImage" do
45
+ setup do
46
+ @map_server = ArcServer::MapServer.new('http://sampleserver1.arcgisonline.com/ArcGIS/services/Demographics/ESRI_Census_USA/MapServer')
47
+ end
48
+
49
+ should "fail if optional dependency RMagick is not installed" do
50
+ Object.expects(:const_defined?).with("Magick").returns(false)
51
+ @map_server.expects(:require).with('RMagick').raises(LoadError)
52
+ assert_raise(ArcServer::ArcServerError) { @map_server.get_legend_image }
53
+ end
54
+
55
+ should "forward get_legend_image to LegendImage" do
56
+ mock_legend_image = mock { expects(:get_image) }
57
+ ArcServer::Util::LegendImage.expects(:new).with(@map_server).returns(mock_legend_image)
58
+ @map_server.get_legend_image
59
+ end
60
+ end
43
61
  end
@@ -0,0 +1,69 @@
1
+ # encoding: utf-8
2
+ require File.dirname(__FILE__) + '/../../test_helper'
3
+ require 'RMagick'
4
+
5
+ class ArcServer::Util::LegendImageTest < Test::Unit::TestCase
6
+ should "raise an error if nothing supplied to constructor" do
7
+ assert_raise(ArgumentError) { ArcServer::Util::LegendImage.new }
8
+ end
9
+
10
+ context "with third party libraries mocked out" do
11
+ setup do
12
+ legend_info = test_legend_info
13
+ map_server = mock('map_server') { stubs(:get_legend_info).returns(legend_info) }
14
+ @legend = ArcServer::Util::LegendImage.new(map_server)
15
+
16
+ mock_symbol_image = mock('symbol_image') do
17
+ expects(:first).times(3).returns(self)
18
+ expects(:destroy!).times(3)
19
+ end
20
+ Magick::Image.expects(:read_inline).with("AAA").returns(mock_symbol_image)
21
+ Magick::Image.expects(:read_inline).with("BBB").returns(mock_symbol_image)
22
+ Magick::Image.expects(:read_inline).with("CCC").returns(mock_symbol_image)
23
+
24
+ mock_image = mock('image') do
25
+ stubs(:cur_image)
26
+ expects(:composite!).with(mock_symbol_image, 20, 40, Magick::OverCompositeOp)
27
+ expects(:composite!).with(mock_symbol_image, 20, 65, Magick::OverCompositeOp)
28
+ expects(:composite!).with(mock_symbol_image, 20, 110, Magick::OverCompositeOp)
29
+ end
30
+ Magick::Image.expects(:new).returns(mock_image)
31
+
32
+ mock_draw = mock('draw') do
33
+ stubs(:draw)
34
+ stubs(:stroke_antialias)
35
+ stubs(:text_antialias=)
36
+ stubs(:density=)
37
+ expects(:text).with(10, 30, "Legend 1")
38
+ expects(:text).with(50, 54, "Symbol 1")
39
+ expects(:text).with(50, 79, "Symbol 2")
40
+ expects(:text).with(10, 100, "Legend 2")
41
+ end
42
+ Magick::Draw.expects(:new).returns(mock_draw)
43
+
44
+ end
45
+
46
+ should "be able to retrieve legend image" do
47
+ @legend.get_image
48
+ end
49
+ end
50
+
51
+ def test_legend_info
52
+ [{
53
+ :name => "Legend 1",
54
+ :legend_groups => [
55
+ :legend_classes => [
56
+ { :label => "Symbol 1", :symbol_image => { :image_data => "AAA" } },
57
+ { :label => "Symbol 2", :symbol_image => { :image_data => "BBB" } }
58
+ ]
59
+ ]
60
+ }, {
61
+ :name => "Legend 2",
62
+ :legend_groups => [
63
+ :legend_classes => [
64
+ { :symbol_image => { :image_data => "CCC" } }
65
+ ]
66
+ ]
67
+ }]
68
+ end
69
+ end
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arcserver.rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 1
8
+ - 3
9
+ version: 0.1.3
5
10
  platform: ruby
6
11
  authors:
7
12
  - Colin Casey
@@ -9,81 +14,117 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2009-10-13 00:00:00 -03:00
17
+ date: 2010-08-18 00:00:00 -03:00
13
18
  default_executable:
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: httparty
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
20
25
  requirements:
21
26
  - - ">="
22
27
  - !ruby/object:Gem::Version
28
+ segments:
29
+ - 0
30
+ - 4
31
+ - 5
23
32
  version: 0.4.5
24
- version:
33
+ type: :runtime
34
+ version_requirements: *id001
25
35
  - !ruby/object:Gem::Dependency
26
36
  name: handsoap
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
30
40
  requirements:
31
41
  - - ">="
32
42
  - !ruby/object:Gem::Version
43
+ segments:
44
+ - 1
45
+ - 1
46
+ - 0
33
47
  version: 1.1.0
34
- version:
48
+ type: :runtime
49
+ version_requirements: *id002
35
50
  - !ruby/object:Gem::Dependency
36
51
  name: nokogiri
37
- type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
52
+ prerelease: false
53
+ requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
40
55
  requirements:
41
56
  - - ">="
42
57
  - !ruby/object:Gem::Version
58
+ segments:
59
+ - 1
60
+ - 3
61
+ - 3
43
62
  version: 1.3.3
44
- version:
63
+ type: :runtime
64
+ version_requirements: *id003
45
65
  - !ruby/object:Gem::Dependency
46
66
  name: httpclient
47
- type: :runtime
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
67
+ prerelease: false
68
+ requirement: &id004 !ruby/object:Gem::Requirement
69
+ none: false
50
70
  requirements:
51
71
  - - ">="
52
72
  - !ruby/object:Gem::Version
73
+ segments:
74
+ - 2
75
+ - 1
76
+ - 5
53
77
  version: 2.1.5
54
- version:
55
- - !ruby/object:Gem::Dependency
56
- name: jeweler
57
- type: :development
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
60
- requirements:
61
- - - ">="
62
- - !ruby/object:Gem::Version
63
- version: 1.2.1
64
- version:
78
+ type: :runtime
79
+ version_requirements: *id004
65
80
  - !ruby/object:Gem::Dependency
66
81
  name: shoulda
67
- type: :development
68
- version_requirement:
69
- version_requirements: !ruby/object:Gem::Requirement
82
+ prerelease: false
83
+ requirement: &id005 !ruby/object:Gem::Requirement
84
+ none: false
70
85
  requirements:
71
86
  - - ">="
72
87
  - !ruby/object:Gem::Version
88
+ segments:
89
+ - 2
90
+ - 10
91
+ - 2
73
92
  version: 2.10.2
74
- version:
93
+ type: :development
94
+ version_requirements: *id005
75
95
  - !ruby/object:Gem::Dependency
76
96
  name: mocha
77
- type: :development
78
- version_requirement:
79
- version_requirements: !ruby/object:Gem::Requirement
97
+ prerelease: false
98
+ requirement: &id006 !ruby/object:Gem::Requirement
99
+ none: false
80
100
  requirements:
81
101
  - - ">="
82
102
  - !ruby/object:Gem::Version
103
+ segments:
104
+ - 0
105
+ - 9
106
+ - 8
83
107
  version: 0.9.8
84
- version:
85
- description:
86
- email: casey.colin@gmail.com
108
+ type: :development
109
+ version_requirements: *id006
110
+ - !ruby/object:Gem::Dependency
111
+ name: rmagick
112
+ prerelease: false
113
+ requirement: &id007 !ruby/object:Gem::Requirement
114
+ none: false
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ segments:
119
+ - 2
120
+ - 13
121
+ - 1
122
+ version: 2.13.1
123
+ type: :development
124
+ version_requirements: *id007
125
+ description: arcserver.rb is a utility for accessing ESRI ArcServer REST and SOAP APIs from a unified interface
126
+ email:
127
+ - casey.colin@gmail.com
87
128
  executables: []
88
129
 
89
130
  extensions: []
@@ -92,21 +133,21 @@ extra_rdoc_files:
92
133
  - LICENSE
93
134
  - README.rdoc
94
135
  files:
95
- - .gitignore
96
- - LICENSE
97
- - README.rdoc
98
- - Rakefile
99
- - VERSION
100
- - arcserver.rb.gemspec
101
- - lib/arcserver.rb
102
136
  - lib/arcserver/map_server.rb
103
137
  - lib/arcserver/rest/map_server.rb
104
138
  - lib/arcserver/soap/map_server.rb
105
139
  - lib/arcserver/url_helper.rb
140
+ - lib/arcserver/util/legend_image.rb
141
+ - lib/arcserver/version.rb
142
+ - lib/arcserver.rb
143
+ - LICENSE
144
+ - README.rdoc
145
+ - Rakefile
106
146
  - test/functional/soap/map_server_test.rb
107
147
  - test/test_helper.rb
108
148
  - test/unit/map_server_test.rb
109
149
  - test/unit/url_helper_test.rb
150
+ - test/unit/util/legend_image_test.rb
110
151
  has_rdoc: true
111
152
  homepage: http://github.com/colincasey/arcserver.rb
112
153
  licenses: []
@@ -117,26 +158,31 @@ rdoc_options:
117
158
  require_paths:
118
159
  - lib
119
160
  required_ruby_version: !ruby/object:Gem::Requirement
161
+ none: false
120
162
  requirements:
121
163
  - - ">="
122
164
  - !ruby/object:Gem::Version
165
+ segments:
166
+ - 0
123
167
  version: "0"
124
- version:
125
168
  required_rubygems_version: !ruby/object:Gem::Requirement
169
+ none: false
126
170
  requirements:
127
171
  - - ">="
128
172
  - !ruby/object:Gem::Version
173
+ segments:
174
+ - 0
129
175
  version: "0"
130
- version:
131
176
  requirements: []
132
177
 
133
178
  rubyforge_project:
134
- rubygems_version: 1.3.4
179
+ rubygems_version: 1.3.7
135
180
  signing_key:
136
181
  specification_version: 3
137
182
  summary: Library for accessing ESRI ArcServer REST and SOAP APIs.
138
183
  test_files:
139
- - test/test_helper.rb
140
184
  - test/functional/soap/map_server_test.rb
141
- - test/unit/url_helper_test.rb
185
+ - test/test_helper.rb
142
186
  - test/unit/map_server_test.rb
187
+ - test/unit/url_helper_test.rb
188
+ - test/unit/util/legend_image_test.rb
data/.gitignore DELETED
@@ -1,6 +0,0 @@
1
- *.sw?
2
- .DS_Store
3
- coverage
4
- rdoc
5
- pkg
6
- nbproject
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.1.2
@@ -1,77 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{arcserver.rb}
8
- s.version = "0.1.2"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Colin Casey"]
12
- s.date = %q{2009-10-13}
13
- s.email = %q{casey.colin@gmail.com}
14
- s.extra_rdoc_files = [
15
- "LICENSE",
16
- "README.rdoc"
17
- ]
18
- s.files = [
19
- ".gitignore",
20
- "LICENSE",
21
- "README.rdoc",
22
- "Rakefile",
23
- "VERSION",
24
- "arcserver.rb.gemspec",
25
- "lib/arcserver.rb",
26
- "lib/arcserver/map_server.rb",
27
- "lib/arcserver/rest/map_server.rb",
28
- "lib/arcserver/soap/map_server.rb",
29
- "lib/arcserver/url_helper.rb",
30
- "test/functional/soap/map_server_test.rb",
31
- "test/test_helper.rb",
32
- "test/unit/map_server_test.rb",
33
- "test/unit/url_helper_test.rb"
34
- ]
35
- s.homepage = %q{http://github.com/colincasey/arcserver.rb}
36
- s.rdoc_options = ["--charset=UTF-8"]
37
- s.require_paths = ["lib"]
38
- s.rubygems_version = %q{1.3.4}
39
- s.summary = %q{Library for accessing ESRI ArcServer REST and SOAP APIs.}
40
- s.test_files = [
41
- "test/test_helper.rb",
42
- "test/functional/soap/map_server_test.rb",
43
- "test/unit/url_helper_test.rb",
44
- "test/unit/map_server_test.rb"
45
- ]
46
-
47
- if s.respond_to? :specification_version then
48
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
49
- s.specification_version = 3
50
-
51
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
52
- s.add_runtime_dependency(%q<httparty>, [">= 0.4.5"])
53
- s.add_runtime_dependency(%q<handsoap>, [">= 1.1.0"])
54
- s.add_runtime_dependency(%q<nokogiri>, [">= 1.3.3"])
55
- s.add_runtime_dependency(%q<httpclient>, [">= 2.1.5"])
56
- s.add_development_dependency(%q<jeweler>, [">= 1.2.1"])
57
- s.add_development_dependency(%q<shoulda>, [">= 2.10.2"])
58
- s.add_development_dependency(%q<mocha>, [">= 0.9.8"])
59
- else
60
- s.add_dependency(%q<httparty>, [">= 0.4.5"])
61
- s.add_dependency(%q<handsoap>, [">= 1.1.0"])
62
- s.add_dependency(%q<nokogiri>, [">= 1.3.3"])
63
- s.add_dependency(%q<httpclient>, [">= 2.1.5"])
64
- s.add_dependency(%q<jeweler>, [">= 1.2.1"])
65
- s.add_dependency(%q<shoulda>, [">= 2.10.2"])
66
- s.add_dependency(%q<mocha>, [">= 0.9.8"])
67
- end
68
- else
69
- s.add_dependency(%q<httparty>, [">= 0.4.5"])
70
- s.add_dependency(%q<handsoap>, [">= 1.1.0"])
71
- s.add_dependency(%q<nokogiri>, [">= 1.3.3"])
72
- s.add_dependency(%q<httpclient>, [">= 2.1.5"])
73
- s.add_dependency(%q<jeweler>, [">= 1.2.1"])
74
- s.add_dependency(%q<shoulda>, [">= 2.10.2"])
75
- s.add_dependency(%q<mocha>, [">= 0.9.8"])
76
- end
77
- end