massdebator_api 0.0.3 → 0.0.5
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/Gemfile +12 -1
- data/Gemfile.lock +94 -8
- data/Rakefile +3 -3
- data/VERSION +1 -1
- data/config/masdebator.yml +0 -0
- data/config/massdebator.yml +8 -0
- data/lib/massdebator_api.rb +4 -0
- data/lib/massdebator_api/debate.rb +5 -0
- data/lib/massdebator_api/service.rb +94 -73
- data/massdebator_api.gemspec +62 -13
- data/pkg/massdebator_api-0.0.4.gem +0 -0
- data/spec/massdebator_api/debate_spec.rb +22 -0
- data/spec/massdebator_api/service_spec.rb +46 -0
- data/spec/spec_helper.rb +7 -1
- data/vendor/cache/abstract-1.0.0.gem +0 -0
- data/vendor/cache/actionmailer-3.0.7.gem +0 -0
- data/vendor/cache/actionpack-3.0.7.gem +0 -0
- data/vendor/cache/activemodel-3.0.7.gem +0 -0
- data/vendor/cache/activerecord-3.0.7.gem +0 -0
- data/vendor/cache/activeresource-3.0.7.gem +0 -0
- data/vendor/cache/activesupport-3.0.7.gem +0 -0
- data/vendor/cache/arel-2.0.9.gem +0 -0
- data/vendor/cache/builder-2.1.2.gem +0 -0
- data/vendor/cache/columnize-0.3.2.gem +0 -0
- data/vendor/cache/diff-lcs-1.1.2.gem +0 -0
- data/vendor/cache/erubis-2.6.6.gem +0 -0
- data/vendor/cache/factory_girl-1.3.3.gem +0 -0
- data/vendor/cache/factory_girl_rails-1.0.1.gem +0 -0
- data/vendor/cache/git-1.2.5.gem +0 -0
- data/vendor/cache/i18n-0.5.0.gem +0 -0
- data/vendor/cache/jeweler-1.5.2.gem +0 -0
- data/vendor/cache/linecache-0.43.gem +0 -0
- data/vendor/cache/mail-2.2.17.gem +0 -0
- data/vendor/cache/mime-types-1.16.gem +0 -0
- data/vendor/cache/mocha-0.9.8.gem +0 -0
- data/vendor/cache/polyglot-0.3.1.gem +0 -0
- data/vendor/cache/rack-1.2.2.gem +0 -0
- data/vendor/cache/rack-mount-0.6.14.gem +0 -0
- data/vendor/cache/rack-test-0.5.7.gem +0 -0
- data/vendor/cache/rails-3.0.7.gem +0 -0
- data/vendor/cache/railties-3.0.7.gem +0 -0
- data/vendor/cache/rake-0.8.7.gem +0 -0
- data/vendor/cache/rcov-0.9.9.gem +0 -0
- data/vendor/cache/rspec-2.5.0.gem +0 -0
- data/vendor/cache/rspec-core-2.5.1.gem +0 -0
- data/vendor/cache/rspec-expectations-2.5.0.gem +0 -0
- data/vendor/cache/rspec-mocks-2.5.0.gem +0 -0
- data/vendor/cache/rspec-rails-2.5.0.gem +0 -0
- data/vendor/cache/ruby-debug-0.10.4.gem +0 -0
- data/vendor/cache/ruby-debug-base-0.10.4.gem +0 -0
- data/vendor/cache/shoulda-2.11.3.gem +0 -0
- data/vendor/cache/thor-0.14.6.gem +0 -0
- data/vendor/cache/treetop-1.4.9.gem +0 -0
- data/vendor/cache/tzinfo-0.3.26.gem +0 -0
- metadata +86 -41
- data/spec/massdebator_api_spec.rb +0 -7
data/Gemfile
CHANGED
@@ -5,9 +5,20 @@ source "http://rubygems.org"
|
|
5
5
|
|
6
6
|
# Add dependencies to develop your gem here.
|
7
7
|
# Include everything needed to run rake, tests, features, etc.
|
8
|
+
gem 'rails'
|
9
|
+
|
8
10
|
group :development do
|
9
|
-
gem
|
11
|
+
gem 'rspec-rails', '2.5.0'
|
10
12
|
gem "bundler", "~> 1.0.0"
|
11
13
|
gem "jeweler", "~> 1.5.2"
|
12
14
|
gem "rcov", ">= 0"
|
13
15
|
end
|
16
|
+
|
17
|
+
group :test do
|
18
|
+
gem 'rspec', '2.5.0'
|
19
|
+
gem 'shoulda', '2.11.3'
|
20
|
+
gem 'factory_girl_rails', '1.0.1'
|
21
|
+
gem "mocha"
|
22
|
+
gem 'ruby-debug'
|
23
|
+
end
|
24
|
+
|
data/Gemfile.lock
CHANGED
@@ -1,28 +1,114 @@
|
|
1
1
|
GEM
|
2
2
|
remote: http://rubygems.org/
|
3
3
|
specs:
|
4
|
+
abstract (1.0.0)
|
5
|
+
actionmailer (3.0.7)
|
6
|
+
actionpack (= 3.0.7)
|
7
|
+
mail (~> 2.2.15)
|
8
|
+
actionpack (3.0.7)
|
9
|
+
activemodel (= 3.0.7)
|
10
|
+
activesupport (= 3.0.7)
|
11
|
+
builder (~> 2.1.2)
|
12
|
+
erubis (~> 2.6.6)
|
13
|
+
i18n (~> 0.5.0)
|
14
|
+
rack (~> 1.2.1)
|
15
|
+
rack-mount (~> 0.6.14)
|
16
|
+
rack-test (~> 0.5.7)
|
17
|
+
tzinfo (~> 0.3.23)
|
18
|
+
activemodel (3.0.7)
|
19
|
+
activesupport (= 3.0.7)
|
20
|
+
builder (~> 2.1.2)
|
21
|
+
i18n (~> 0.5.0)
|
22
|
+
activerecord (3.0.7)
|
23
|
+
activemodel (= 3.0.7)
|
24
|
+
activesupport (= 3.0.7)
|
25
|
+
arel (~> 2.0.2)
|
26
|
+
tzinfo (~> 0.3.23)
|
27
|
+
activeresource (3.0.7)
|
28
|
+
activemodel (= 3.0.7)
|
29
|
+
activesupport (= 3.0.7)
|
30
|
+
activesupport (3.0.7)
|
31
|
+
arel (2.0.9)
|
32
|
+
builder (2.1.2)
|
33
|
+
columnize (0.3.2)
|
4
34
|
diff-lcs (1.1.2)
|
35
|
+
erubis (2.6.6)
|
36
|
+
abstract (>= 1.0.0)
|
37
|
+
factory_girl (1.3.3)
|
38
|
+
factory_girl_rails (1.0.1)
|
39
|
+
factory_girl (~> 1.3)
|
40
|
+
railties (>= 3.0.0)
|
5
41
|
git (1.2.5)
|
42
|
+
i18n (0.5.0)
|
6
43
|
jeweler (1.5.2)
|
7
44
|
bundler (~> 1.0.0)
|
8
45
|
git (>= 1.2.5)
|
9
46
|
rake
|
47
|
+
linecache (0.43)
|
48
|
+
mail (2.2.17)
|
49
|
+
activesupport (>= 2.3.6)
|
50
|
+
i18n (>= 0.4.0)
|
51
|
+
mime-types (~> 1.16)
|
52
|
+
treetop (~> 1.4.8)
|
53
|
+
mime-types (1.16)
|
54
|
+
mocha (0.9.8)
|
55
|
+
rake
|
56
|
+
polyglot (0.3.1)
|
57
|
+
rack (1.2.2)
|
58
|
+
rack-mount (0.6.14)
|
59
|
+
rack (>= 1.0.0)
|
60
|
+
rack-test (0.5.7)
|
61
|
+
rack (>= 1.0)
|
62
|
+
rails (3.0.7)
|
63
|
+
actionmailer (= 3.0.7)
|
64
|
+
actionpack (= 3.0.7)
|
65
|
+
activerecord (= 3.0.7)
|
66
|
+
activeresource (= 3.0.7)
|
67
|
+
activesupport (= 3.0.7)
|
68
|
+
bundler (~> 1.0)
|
69
|
+
railties (= 3.0.7)
|
70
|
+
railties (3.0.7)
|
71
|
+
actionpack (= 3.0.7)
|
72
|
+
activesupport (= 3.0.7)
|
73
|
+
rake (>= 0.8.7)
|
74
|
+
thor (~> 0.14.4)
|
10
75
|
rake (0.8.7)
|
11
76
|
rcov (0.9.9)
|
12
|
-
rspec (2.
|
13
|
-
rspec-core (~> 2.
|
14
|
-
rspec-expectations (~> 2.
|
15
|
-
rspec-mocks (~> 2.
|
16
|
-
rspec-core (2.
|
17
|
-
rspec-expectations (2.
|
77
|
+
rspec (2.5.0)
|
78
|
+
rspec-core (~> 2.5.0)
|
79
|
+
rspec-expectations (~> 2.5.0)
|
80
|
+
rspec-mocks (~> 2.5.0)
|
81
|
+
rspec-core (2.5.1)
|
82
|
+
rspec-expectations (2.5.0)
|
18
83
|
diff-lcs (~> 1.1.2)
|
19
|
-
rspec-mocks (2.
|
84
|
+
rspec-mocks (2.5.0)
|
85
|
+
rspec-rails (2.5.0)
|
86
|
+
actionpack (~> 3.0)
|
87
|
+
activesupport (~> 3.0)
|
88
|
+
railties (~> 3.0)
|
89
|
+
rspec (~> 2.5.0)
|
90
|
+
ruby-debug (0.10.4)
|
91
|
+
columnize (>= 0.1)
|
92
|
+
ruby-debug-base (~> 0.10.4.0)
|
93
|
+
ruby-debug-base (0.10.4)
|
94
|
+
linecache (>= 0.3)
|
95
|
+
shoulda (2.11.3)
|
96
|
+
thor (0.14.6)
|
97
|
+
treetop (1.4.9)
|
98
|
+
polyglot (>= 0.3.1)
|
99
|
+
tzinfo (0.3.26)
|
20
100
|
|
21
101
|
PLATFORMS
|
22
102
|
ruby
|
23
103
|
|
24
104
|
DEPENDENCIES
|
25
105
|
bundler (~> 1.0.0)
|
106
|
+
factory_girl_rails (= 1.0.1)
|
26
107
|
jeweler (~> 1.5.2)
|
108
|
+
mocha
|
109
|
+
rails
|
27
110
|
rcov
|
28
|
-
rspec (
|
111
|
+
rspec (= 2.5.0)
|
112
|
+
rspec-rails (= 2.5.0)
|
113
|
+
ruby-debug
|
114
|
+
shoulda (= 2.11.3)
|
data/Rakefile
CHANGED
@@ -13,12 +13,12 @@ require 'jeweler'
|
|
13
13
|
Jeweler::Tasks.new do |gem|
|
14
14
|
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
15
15
|
gem.name = "massdebator_api"
|
16
|
-
gem.homepage = "http://github.com/
|
16
|
+
gem.homepage = "http://github.com/cmavromoustakos/massdebator_api"
|
17
17
|
gem.license = "MIT"
|
18
18
|
gem.summary = %Q{Massdebator API gem}
|
19
|
-
gem.description = %Q{Massdebator API create and manage debates
|
19
|
+
gem.description = %Q{Massdebator api gem. Connect to the massdebator API and create and manage debates for your organization}
|
20
20
|
gem.email = "c4-enterprise@googlegroups.com"
|
21
|
-
gem.authors = ["
|
21
|
+
gem.authors = ["Constantine Mavromoustakos"]
|
22
22
|
# Include your dependencies below. Runtime dependencies are required when using your gem,
|
23
23
|
# and development dependencies are only needed for development (ie running rake tasks, tests, etc)
|
24
24
|
# gem.add_runtime_dependency 'jabber4r', '> 0.1'
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.5
|
File without changes
|
data/lib/massdebator_api.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
module MassdebatorApi
|
2
|
-
|
2
|
+
class Service < ActiveResource::Base
|
3
|
+
mattr_accessor :config_hash
|
3
4
|
|
4
|
-
class Service
|
5
5
|
def self.base_path
|
6
6
|
"/api/v1"
|
7
7
|
end
|
@@ -11,7 +11,11 @@ module MassdebatorApi
|
|
11
11
|
end
|
12
12
|
|
13
13
|
def self.configuration_hash
|
14
|
-
|
14
|
+
if Rails.root
|
15
|
+
@@config_hash ||= YAML.load_file("#{Rails.root}/config/massdebator.yml")
|
16
|
+
else
|
17
|
+
@@config_hash ||= YAML.load_file("config/massdebator.yml")
|
18
|
+
end
|
15
19
|
end
|
16
20
|
|
17
21
|
def self.host
|
@@ -30,77 +34,94 @@ module MassdebatorApi
|
|
30
34
|
self.configuration_hash[Rails.env]['port']
|
31
35
|
end
|
32
36
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
request(:put, path, options)
|
48
|
-
end
|
49
|
-
|
50
|
-
def self.delete(path, options = {})
|
51
|
-
request(:delete, path, options)
|
52
|
-
end
|
53
|
-
|
54
|
-
def self.post_with_response(*args)
|
55
|
-
response = post(*args)
|
56
|
-
JSON.parse(response.body)
|
57
|
-
rescue JSON::JSONError
|
58
|
-
{}
|
59
|
-
end
|
60
|
-
|
61
|
-
def self.put_with_response(*args)
|
62
|
-
response = put(*args)
|
63
|
-
JSON.parse(response.body)
|
64
|
-
rescue JSON::JSONError
|
65
|
-
{}
|
66
|
-
end
|
67
|
-
|
68
|
-
def self.request(http_verb, path, options = {})
|
69
|
-
verb_type = case http_verb.to_sym
|
70
|
-
when :get then Net::HTTP::Get
|
71
|
-
when :post then Net::HTTP::Post
|
72
|
-
when :put then Net::HTTP::Put
|
73
|
-
when :delete then Net::HTTP::Delete
|
74
|
-
end
|
75
|
-
|
76
|
-
request_path = "#{self.base_path}#{path}"
|
77
|
-
request_body = nil
|
78
|
-
|
79
|
-
if verb_type == Net::HTTP::Get
|
80
|
-
query = options.to_query
|
81
|
-
request_path += "?#{query}" if query.present?
|
82
|
-
else
|
83
|
-
request_body = options.to_json
|
37
|
+
self.site = self.base_uri
|
38
|
+
MassdebatorApi::Service.headers['massdebator-token'] = token
|
39
|
+
MassdebatorApi::Service.headers['massdebator-secret'] = secret
|
40
|
+
self.format = :json
|
41
|
+
|
42
|
+
class << self
|
43
|
+
# If headers are not defined in a given subclass, then obtain
|
44
|
+
# headers from the superclass.
|
45
|
+
def headers
|
46
|
+
if defined?(@headers)
|
47
|
+
@headers
|
48
|
+
elsif superclass != Object && superclass.headers
|
49
|
+
superclass.headers
|
50
|
+
end
|
84
51
|
end
|
85
|
-
|
86
|
-
response = Net::HTTP.start(self.host, self.port || 80) do |http|
|
87
|
-
http_req = verb_type.new(request_path)
|
88
|
-
|
89
|
-
http_req.add_field "Content-Length", request_body.size if request_body
|
90
|
-
http_req.add_field "Content-Type", "application/json"
|
91
|
-
http_req.add_field "massdebator-token", self.token
|
92
|
-
http_req.add_field "massdebator-secret", self.secret
|
93
|
-
|
94
|
-
http.request(http_req, request_body)
|
95
|
-
end
|
96
|
-
|
97
|
-
if [Net::HTTPClientError, Net::HTTPServerError].any? {|resp| response.is_a?(resp) }
|
98
|
-
message = %{Error communicating with Massdebator (#{response.code}): #{request_path}}
|
99
|
-
exception = Net::HTTPBadResponse.new(message)
|
100
|
-
raise exception
|
101
|
-
end
|
102
|
-
|
103
|
-
response
|
104
52
|
end
|
53
|
+
|
54
|
+
# private
|
55
|
+
#
|
56
|
+
# def self.get(path, options = {})
|
57
|
+
# response = request(:get, path, options)
|
58
|
+
# JSON.parse(response.body)
|
59
|
+
# rescue JSON::JSONError
|
60
|
+
# {}
|
61
|
+
# end
|
62
|
+
#
|
63
|
+
# def self.post(path, options = {})
|
64
|
+
# request(:post, path, options)
|
65
|
+
# end
|
66
|
+
#
|
67
|
+
# def self.put(path, options = {})
|
68
|
+
# request(:put, path, options)
|
69
|
+
# end
|
70
|
+
#
|
71
|
+
# def self.delete(path, options = {})
|
72
|
+
# request(:delete, path, options)
|
73
|
+
# end
|
74
|
+
#
|
75
|
+
# def self.post_with_response(*args)
|
76
|
+
# response = post(*args)
|
77
|
+
# JSON.parse(response.body)
|
78
|
+
# rescue JSON::JSONError
|
79
|
+
# {}
|
80
|
+
# end
|
81
|
+
#
|
82
|
+
# def self.put_with_response(*args)
|
83
|
+
# response = put(*args)
|
84
|
+
# JSON.parse(response.body)
|
85
|
+
# rescue JSON::JSONError
|
86
|
+
# {}
|
87
|
+
# end
|
88
|
+
#
|
89
|
+
# def self.request(http_verb, path, options = {})
|
90
|
+
# verb_type = case http_verb.to_sym
|
91
|
+
# when :get then Net::HTTP::Get
|
92
|
+
# when :post then Net::HTTP::Post
|
93
|
+
# when :put then Net::HTTP::Put
|
94
|
+
# when :delete then Net::HTTP::Delete
|
95
|
+
# end
|
96
|
+
#
|
97
|
+
# request_path = "#{self.base_path}#{path}"
|
98
|
+
# request_body = nil
|
99
|
+
#
|
100
|
+
# if verb_type == Net::HTTP::Get
|
101
|
+
# query = options.to_query
|
102
|
+
# request_path += "?#{query}" if query.present?
|
103
|
+
# else
|
104
|
+
# request_body = options.to_json
|
105
|
+
# end
|
106
|
+
#
|
107
|
+
# response = Net::HTTP.start(self.host, self.port || 80) do |http|
|
108
|
+
# http_req = verb_type.new(request_path)
|
109
|
+
#
|
110
|
+
# http_req.add_field "Content-Length", request_body.size if request_body
|
111
|
+
# http_req.add_field "Content-Type", "application/json"
|
112
|
+
# http_req.add_field "massdebator-token", self.token
|
113
|
+
# http_req.add_field "massdebator-secret", self.secret
|
114
|
+
#
|
115
|
+
# http.request(http_req, request_body)
|
116
|
+
# end
|
117
|
+
#
|
118
|
+
# if [Net::HTTPClientError, Net::HTTPServerError].any? {|resp| response.is_a?(resp) }
|
119
|
+
# message = %{Error communicating with Massdebator (#{response.code}): #{request_path}}
|
120
|
+
# exception = Net::HTTPBadResponse.new(message)
|
121
|
+
# raise exception
|
122
|
+
# end
|
123
|
+
#
|
124
|
+
# response
|
125
|
+
# end
|
105
126
|
end
|
106
127
|
end
|
data/massdebator_api.gemspec
CHANGED
@@ -5,12 +5,12 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{massdebator_api}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.5"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
-
s.authors = ["
|
12
|
-
s.date = %q{2011-04-
|
13
|
-
s.description = %q{Massdebator API create and manage debates
|
11
|
+
s.authors = ["Constantine Mavromoustakos"]
|
12
|
+
s.date = %q{2011-04-23}
|
13
|
+
s.description = %q{Massdebator api gem. Connect to the massdebator API and create and manage debates for your organization}
|
14
14
|
s.email = %q{c4-enterprise@googlegroups.com}
|
15
15
|
s.extra_rdoc_files = [
|
16
16
|
"LICENSE.txt",
|
@@ -25,19 +25,65 @@ Gem::Specification.new do |s|
|
|
25
25
|
"README.rdoc",
|
26
26
|
"Rakefile",
|
27
27
|
"VERSION",
|
28
|
+
"config/masdebator.yml",
|
29
|
+
"config/massdebator.yml",
|
28
30
|
"lib/massdebator_api.rb",
|
31
|
+
"lib/massdebator_api/debate.rb",
|
29
32
|
"lib/massdebator_api/service.rb",
|
30
33
|
"massdebator_api.gemspec",
|
31
|
-
"
|
32
|
-
"spec/
|
34
|
+
"pkg/massdebator_api-0.0.4.gem",
|
35
|
+
"spec/massdebator_api/debate_spec.rb",
|
36
|
+
"spec/massdebator_api/service_spec.rb",
|
37
|
+
"spec/spec_helper.rb",
|
38
|
+
"vendor/cache/abstract-1.0.0.gem",
|
39
|
+
"vendor/cache/actionmailer-3.0.7.gem",
|
40
|
+
"vendor/cache/actionpack-3.0.7.gem",
|
41
|
+
"vendor/cache/activemodel-3.0.7.gem",
|
42
|
+
"vendor/cache/activerecord-3.0.7.gem",
|
43
|
+
"vendor/cache/activeresource-3.0.7.gem",
|
44
|
+
"vendor/cache/activesupport-3.0.7.gem",
|
45
|
+
"vendor/cache/arel-2.0.9.gem",
|
46
|
+
"vendor/cache/builder-2.1.2.gem",
|
47
|
+
"vendor/cache/columnize-0.3.2.gem",
|
48
|
+
"vendor/cache/diff-lcs-1.1.2.gem",
|
49
|
+
"vendor/cache/erubis-2.6.6.gem",
|
50
|
+
"vendor/cache/factory_girl-1.3.3.gem",
|
51
|
+
"vendor/cache/factory_girl_rails-1.0.1.gem",
|
52
|
+
"vendor/cache/git-1.2.5.gem",
|
53
|
+
"vendor/cache/i18n-0.5.0.gem",
|
54
|
+
"vendor/cache/jeweler-1.5.2.gem",
|
55
|
+
"vendor/cache/linecache-0.43.gem",
|
56
|
+
"vendor/cache/mail-2.2.17.gem",
|
57
|
+
"vendor/cache/mime-types-1.16.gem",
|
58
|
+
"vendor/cache/mocha-0.9.8.gem",
|
59
|
+
"vendor/cache/polyglot-0.3.1.gem",
|
60
|
+
"vendor/cache/rack-1.2.2.gem",
|
61
|
+
"vendor/cache/rack-mount-0.6.14.gem",
|
62
|
+
"vendor/cache/rack-test-0.5.7.gem",
|
63
|
+
"vendor/cache/rails-3.0.7.gem",
|
64
|
+
"vendor/cache/railties-3.0.7.gem",
|
65
|
+
"vendor/cache/rake-0.8.7.gem",
|
66
|
+
"vendor/cache/rcov-0.9.9.gem",
|
67
|
+
"vendor/cache/rspec-2.5.0.gem",
|
68
|
+
"vendor/cache/rspec-core-2.5.1.gem",
|
69
|
+
"vendor/cache/rspec-expectations-2.5.0.gem",
|
70
|
+
"vendor/cache/rspec-mocks-2.5.0.gem",
|
71
|
+
"vendor/cache/rspec-rails-2.5.0.gem",
|
72
|
+
"vendor/cache/ruby-debug-0.10.4.gem",
|
73
|
+
"vendor/cache/ruby-debug-base-0.10.4.gem",
|
74
|
+
"vendor/cache/shoulda-2.11.3.gem",
|
75
|
+
"vendor/cache/thor-0.14.6.gem",
|
76
|
+
"vendor/cache/treetop-1.4.9.gem",
|
77
|
+
"vendor/cache/tzinfo-0.3.26.gem"
|
33
78
|
]
|
34
|
-
s.homepage = %q{http://github.com/
|
79
|
+
s.homepage = %q{http://github.com/cmavromoustakos/massdebator_api}
|
35
80
|
s.licenses = ["MIT"]
|
36
81
|
s.require_paths = ["lib"]
|
37
|
-
s.rubygems_version = %q{1.3.
|
82
|
+
s.rubygems_version = %q{1.3.6}
|
38
83
|
s.summary = %q{Massdebator API gem}
|
39
84
|
s.test_files = [
|
40
|
-
"spec/
|
85
|
+
"spec/massdebator_api/debate_spec.rb",
|
86
|
+
"spec/massdebator_api/service_spec.rb",
|
41
87
|
"spec/spec_helper.rb"
|
42
88
|
]
|
43
89
|
|
@@ -45,19 +91,22 @@ Gem::Specification.new do |s|
|
|
45
91
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
46
92
|
s.specification_version = 3
|
47
93
|
|
48
|
-
if Gem::Version.new(Gem::
|
49
|
-
s.
|
94
|
+
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
95
|
+
s.add_runtime_dependency(%q<rails>, [">= 0"])
|
96
|
+
s.add_development_dependency(%q<rspec-rails>, ["= 2.5.0"])
|
50
97
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
51
98
|
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
52
99
|
s.add_development_dependency(%q<rcov>, [">= 0"])
|
53
100
|
else
|
54
|
-
s.add_dependency(%q<
|
101
|
+
s.add_dependency(%q<rails>, [">= 0"])
|
102
|
+
s.add_dependency(%q<rspec-rails>, ["= 2.5.0"])
|
55
103
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
56
104
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
57
105
|
s.add_dependency(%q<rcov>, [">= 0"])
|
58
106
|
end
|
59
107
|
else
|
60
|
-
s.add_dependency(%q<
|
108
|
+
s.add_dependency(%q<rails>, [">= 0"])
|
109
|
+
s.add_dependency(%q<rspec-rails>, ["= 2.5.0"])
|
61
110
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
62
111
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
63
112
|
s.add_dependency(%q<rcov>, [">= 0"])
|
Binary file
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe MassdebatorApi::Debate, "class defaults" do
|
4
|
+
subject { MassdebatorApi::Debate}
|
5
|
+
let(:config_hash) do
|
6
|
+
{
|
7
|
+
"test" => {
|
8
|
+
"host" => "localhost",
|
9
|
+
"port" => 80,
|
10
|
+
"token" => "abc123",
|
11
|
+
"secret" => "def456"
|
12
|
+
}
|
13
|
+
}
|
14
|
+
end
|
15
|
+
|
16
|
+
it "returns the headers" do
|
17
|
+
subject.headers.should == {
|
18
|
+
"massdebator-token" => config_hash['test']['token'],
|
19
|
+
"massdebator-secret" => config_hash['test']['secret']
|
20
|
+
}
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe MassdebatorApi::Service, "class defaults" do
|
4
|
+
subject { MassdebatorApi::Service }
|
5
|
+
let(:config_hash) do
|
6
|
+
{
|
7
|
+
"test" => {
|
8
|
+
"host" => "localhost",
|
9
|
+
"port" => 80,
|
10
|
+
"token" => "abc123",
|
11
|
+
"secret" => "def456"
|
12
|
+
}
|
13
|
+
}
|
14
|
+
end
|
15
|
+
|
16
|
+
before do
|
17
|
+
MassdebatorApi::Service.stubs(:configuration_hash => config_hash)
|
18
|
+
end
|
19
|
+
|
20
|
+
it "returns the correct path for the api" do
|
21
|
+
subject.base_path.should == "/api/v1"
|
22
|
+
end
|
23
|
+
|
24
|
+
it "returns the base uri" do
|
25
|
+
subject.base_uri.should == "http://#{config_hash['test']['host']}#{subject.base_path}"
|
26
|
+
end
|
27
|
+
|
28
|
+
it "returns the token" do
|
29
|
+
subject.token.should == config_hash['test']['token']
|
30
|
+
end
|
31
|
+
|
32
|
+
it "returns the secret" do
|
33
|
+
subject.secret.should == config_hash['test']['secret']
|
34
|
+
end
|
35
|
+
|
36
|
+
it "returns the port" do
|
37
|
+
subject.port.should == config_hash['test']['port']
|
38
|
+
end
|
39
|
+
|
40
|
+
it "returns the headers" do
|
41
|
+
subject.headers.should == {
|
42
|
+
"massdebator-token" => config_hash['test']['token'],
|
43
|
+
"massdebator-secret" => config_hash['test']['secret']
|
44
|
+
}
|
45
|
+
end
|
46
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,12 +1,18 @@
|
|
1
|
+
ENV["RAILS_ENV"] ||= 'test'
|
2
|
+
|
1
3
|
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
2
4
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
5
|
+
|
3
6
|
require 'rspec'
|
4
7
|
require 'massdebator_api'
|
8
|
+
require 'shoulda'
|
9
|
+
require 'shoulda/integrations/rspec'
|
10
|
+
require 'factory_girl'
|
5
11
|
|
6
12
|
# Requires supporting files with custom matchers and macros, etc,
|
7
13
|
# in ./support/ and its subdirectories.
|
8
14
|
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
9
15
|
|
10
16
|
RSpec.configure do |config|
|
11
|
-
|
17
|
+
config.mock_with :mocha
|
12
18
|
end
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,86 +1,89 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: massdebator_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash: 25
|
5
4
|
prerelease: false
|
6
5
|
segments:
|
7
6
|
- 0
|
8
7
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
8
|
+
- 5
|
9
|
+
version: 0.0.5
|
11
10
|
platform: ruby
|
12
11
|
authors:
|
13
|
-
-
|
12
|
+
- Constantine Mavromoustakos
|
14
13
|
autorequire:
|
15
14
|
bindir: bin
|
16
15
|
cert_chain: []
|
17
16
|
|
18
|
-
date: 2011-04-
|
17
|
+
date: 2011-04-23 00:00:00 -04:00
|
19
18
|
default_executable:
|
20
19
|
dependencies:
|
21
20
|
- !ruby/object:Gem::Dependency
|
21
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - ">="
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
segments:
|
26
|
+
- 0
|
27
|
+
version: "0"
|
22
28
|
prerelease: false
|
23
|
-
type: :
|
24
|
-
name:
|
25
|
-
version_requirements:
|
26
|
-
|
29
|
+
type: :runtime
|
30
|
+
name: rails
|
31
|
+
version_requirements: *id001
|
32
|
+
- !ruby/object:Gem::Dependency
|
33
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
27
34
|
requirements:
|
28
|
-
- -
|
35
|
+
- - "="
|
29
36
|
- !ruby/object:Gem::Version
|
30
|
-
hash: 3
|
31
37
|
segments:
|
32
38
|
- 2
|
33
|
-
-
|
39
|
+
- 5
|
34
40
|
- 0
|
35
|
-
version: 2.
|
36
|
-
requirement: *id001
|
37
|
-
- !ruby/object:Gem::Dependency
|
41
|
+
version: 2.5.0
|
38
42
|
prerelease: false
|
39
43
|
type: :development
|
40
|
-
name:
|
41
|
-
version_requirements:
|
42
|
-
|
44
|
+
name: rspec-rails
|
45
|
+
version_requirements: *id002
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
43
48
|
requirements:
|
44
49
|
- - ~>
|
45
50
|
- !ruby/object:Gem::Version
|
46
|
-
hash: 23
|
47
51
|
segments:
|
48
52
|
- 1
|
49
53
|
- 0
|
50
54
|
- 0
|
51
55
|
version: 1.0.0
|
52
|
-
requirement: *id002
|
53
|
-
- !ruby/object:Gem::Dependency
|
54
56
|
prerelease: false
|
55
57
|
type: :development
|
56
|
-
name:
|
57
|
-
version_requirements:
|
58
|
-
|
58
|
+
name: bundler
|
59
|
+
version_requirements: *id003
|
60
|
+
- !ruby/object:Gem::Dependency
|
61
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
59
62
|
requirements:
|
60
63
|
- - ~>
|
61
64
|
- !ruby/object:Gem::Version
|
62
|
-
hash: 7
|
63
65
|
segments:
|
64
66
|
- 1
|
65
67
|
- 5
|
66
68
|
- 2
|
67
69
|
version: 1.5.2
|
68
|
-
requirement: *id003
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
70
|
prerelease: false
|
71
71
|
type: :development
|
72
|
-
name:
|
73
|
-
version_requirements:
|
74
|
-
|
72
|
+
name: jeweler
|
73
|
+
version_requirements: *id004
|
74
|
+
- !ruby/object:Gem::Dependency
|
75
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
75
76
|
requirements:
|
76
77
|
- - ">="
|
77
78
|
- !ruby/object:Gem::Version
|
78
|
-
hash: 3
|
79
79
|
segments:
|
80
80
|
- 0
|
81
81
|
version: "0"
|
82
|
-
|
83
|
-
|
82
|
+
prerelease: false
|
83
|
+
type: :development
|
84
|
+
name: rcov
|
85
|
+
version_requirements: *id005
|
86
|
+
description: Massdebator api gem. Connect to the massdebator API and create and manage debates for your organization
|
84
87
|
email: c4-enterprise@googlegroups.com
|
85
88
|
executables: []
|
86
89
|
|
@@ -98,13 +101,58 @@ files:
|
|
98
101
|
- README.rdoc
|
99
102
|
- Rakefile
|
100
103
|
- VERSION
|
104
|
+
- config/masdebator.yml
|
105
|
+
- config/massdebator.yml
|
101
106
|
- lib/massdebator_api.rb
|
107
|
+
- lib/massdebator_api/debate.rb
|
102
108
|
- lib/massdebator_api/service.rb
|
103
109
|
- massdebator_api.gemspec
|
104
|
-
-
|
110
|
+
- pkg/massdebator_api-0.0.4.gem
|
111
|
+
- spec/massdebator_api/debate_spec.rb
|
112
|
+
- spec/massdebator_api/service_spec.rb
|
105
113
|
- spec/spec_helper.rb
|
114
|
+
- vendor/cache/abstract-1.0.0.gem
|
115
|
+
- vendor/cache/actionmailer-3.0.7.gem
|
116
|
+
- vendor/cache/actionpack-3.0.7.gem
|
117
|
+
- vendor/cache/activemodel-3.0.7.gem
|
118
|
+
- vendor/cache/activerecord-3.0.7.gem
|
119
|
+
- vendor/cache/activeresource-3.0.7.gem
|
120
|
+
- vendor/cache/activesupport-3.0.7.gem
|
121
|
+
- vendor/cache/arel-2.0.9.gem
|
122
|
+
- vendor/cache/builder-2.1.2.gem
|
123
|
+
- vendor/cache/columnize-0.3.2.gem
|
124
|
+
- vendor/cache/diff-lcs-1.1.2.gem
|
125
|
+
- vendor/cache/erubis-2.6.6.gem
|
126
|
+
- vendor/cache/factory_girl-1.3.3.gem
|
127
|
+
- vendor/cache/factory_girl_rails-1.0.1.gem
|
128
|
+
- vendor/cache/git-1.2.5.gem
|
129
|
+
- vendor/cache/i18n-0.5.0.gem
|
130
|
+
- vendor/cache/jeweler-1.5.2.gem
|
131
|
+
- vendor/cache/linecache-0.43.gem
|
132
|
+
- vendor/cache/mail-2.2.17.gem
|
133
|
+
- vendor/cache/mime-types-1.16.gem
|
134
|
+
- vendor/cache/mocha-0.9.8.gem
|
135
|
+
- vendor/cache/polyglot-0.3.1.gem
|
136
|
+
- vendor/cache/rack-1.2.2.gem
|
137
|
+
- vendor/cache/rack-mount-0.6.14.gem
|
138
|
+
- vendor/cache/rack-test-0.5.7.gem
|
139
|
+
- vendor/cache/rails-3.0.7.gem
|
140
|
+
- vendor/cache/railties-3.0.7.gem
|
141
|
+
- vendor/cache/rake-0.8.7.gem
|
142
|
+
- vendor/cache/rcov-0.9.9.gem
|
143
|
+
- vendor/cache/rspec-2.5.0.gem
|
144
|
+
- vendor/cache/rspec-core-2.5.1.gem
|
145
|
+
- vendor/cache/rspec-expectations-2.5.0.gem
|
146
|
+
- vendor/cache/rspec-mocks-2.5.0.gem
|
147
|
+
- vendor/cache/rspec-rails-2.5.0.gem
|
148
|
+
- vendor/cache/ruby-debug-0.10.4.gem
|
149
|
+
- vendor/cache/ruby-debug-base-0.10.4.gem
|
150
|
+
- vendor/cache/shoulda-2.11.3.gem
|
151
|
+
- vendor/cache/thor-0.14.6.gem
|
152
|
+
- vendor/cache/treetop-1.4.9.gem
|
153
|
+
- vendor/cache/tzinfo-0.3.26.gem
|
106
154
|
has_rdoc: true
|
107
|
-
homepage: http://github.com/
|
155
|
+
homepage: http://github.com/cmavromoustakos/massdebator_api
|
108
156
|
licenses:
|
109
157
|
- MIT
|
110
158
|
post_install_message:
|
@@ -113,30 +161,27 @@ rdoc_options: []
|
|
113
161
|
require_paths:
|
114
162
|
- lib
|
115
163
|
required_ruby_version: !ruby/object:Gem::Requirement
|
116
|
-
none: false
|
117
164
|
requirements:
|
118
165
|
- - ">="
|
119
166
|
- !ruby/object:Gem::Version
|
120
|
-
hash: 3
|
121
167
|
segments:
|
122
168
|
- 0
|
123
169
|
version: "0"
|
124
170
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
125
|
-
none: false
|
126
171
|
requirements:
|
127
172
|
- - ">="
|
128
173
|
- !ruby/object:Gem::Version
|
129
|
-
hash: 3
|
130
174
|
segments:
|
131
175
|
- 0
|
132
176
|
version: "0"
|
133
177
|
requirements: []
|
134
178
|
|
135
179
|
rubyforge_project:
|
136
|
-
rubygems_version: 1.3.
|
180
|
+
rubygems_version: 1.3.6
|
137
181
|
signing_key:
|
138
182
|
specification_version: 3
|
139
183
|
summary: Massdebator API gem
|
140
184
|
test_files:
|
141
|
-
- spec/
|
185
|
+
- spec/massdebator_api/debate_spec.rb
|
186
|
+
- spec/massdebator_api/service_spec.rb
|
142
187
|
- spec/spec_helper.rb
|