stretchr 1.0.0 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,8 @@
1
+ {
2
+ "~changes":
3
+ {
4
+ "~created":1,
5
+ "~deltas":[{"~id":"id-here"}]
6
+ },
7
+ "~status":201
8
+ }
data/test/test_bag.rb ADDED
@@ -0,0 +1,23 @@
1
+ require "test_helper"
2
+
3
+ describe "Param Bag" do
4
+ it "should let me set basic parameters" do
5
+ b = Stretchr::Bag.new
6
+ b.set("param", "value")
7
+ assert_equal "value", b.get("param")
8
+ end
9
+
10
+ it "Should let you merge parameters into a query string" do
11
+ b = Stretchr::Bag.new
12
+ b.set("include", "~parent")
13
+ b.set("key", "asdf")
14
+ assert_equal "include=~parent&key=asdf", URI.decode(b.query_string), "Should let you create a query string"
15
+ end
16
+
17
+ it "Should let me specify a key to start the bag with" do
18
+ b = Stretchr::Bag.new({prefix: ":"})
19
+ b.set("age", "21")
20
+ assert_equal "21", b.get("age"), "Should have set the age"
21
+ assert_equal ":age=21", URI.decode(b.query_string), "Should have added a prefix to the bag"
22
+ end
23
+ end
data/test/test_client.rb CHANGED
@@ -1,132 +1,55 @@
1
- require 'test/unit'
2
1
  require 'test_helper.rb'
3
2
 
4
- class StretchrTest < Test::Unit::TestCase
5
-
6
- def test_new_with_missing_fields
7
- assert_raise Stretchr::MissingAttributeError do
8
- stretchr = Stretchr::Client.new({})
9
- end
10
- assert_raise Stretchr::MissingAttributeError do
11
- stretchr = Stretchr::Client.new({public_key: "test", project: "project.company"})
12
- end
13
- assert_raise Stretchr::MissingAttributeError do
14
- stretchr = Stretchr::Client.new({private_key: 'ABC123-private', project: "project.company"})
15
- end
16
- assert_raise Stretchr::MissingAttributeError do
17
- stretchr = Stretchr::Client.new({private_key: 'ABC123-private', public_key: "test"})
18
- end
19
-
20
- end
21
-
22
- def test_new_defaults
23
-
24
- stretchr = test_stretchr_object
25
- assert_not_nil stretchr.signatory, "stretchr.signatory"
26
- assert_not_nil stretchr.transporter, "stretchr.transporter"
27
-
28
- end
29
-
30
- def test_new_custom_transporter
31
-
3
+ describe "Client" do
4
+ it "Should let you pass in the transporter you want" do
32
5
  transporter = Object.new
33
- stretchr = Stretchr::Client.new({transporter: transporter, private_key: 'ABC123-private', public_key: "test", project: "project.company"})
34
- assert_equal transporter, stretchr.transporter
35
-
6
+ stretchr = Stretchr::Client.new({transporter: transporter})
7
+ assert_equal transporter, stretchr.transporter, "Should have let me pass in a transporter"
36
8
  end
37
9
 
38
- def test_new_custom_signatory
39
-
40
- signatory = Object.new
41
- stretchr = Stretchr::Client.new({signatory: signatory, private_key: 'ABC123-private', public_key: "test", project: "project.company"})
42
- assert_equal signatory, stretchr.signatory
43
-
10
+ it "Should return a request object whenever you try to do something" do
11
+ stretchr = Stretchr::Client.new
12
+ r = stretchr.people
13
+ assert_equal Stretchr::Request, r.class, "Should have returned a request object"
14
+ assert_equal "people", r.path, "Should have started building the url"
44
15
  end
45
16
 
46
- def test_make_request
47
-
48
- stretchr = test_stretchr_object
49
- stretchr.people(123).books
50
-
51
- stretchr.http_method = :get
52
-
53
- request = stretchr.generate_request
54
-
55
- assert_equal true, request.is_a?(Stretchr::Request)
56
-
57
- assert_equal(stretchr.http_method, request.http_method)
58
- assert_equal(stretchr.signed_uri, request.signed_uri)
59
-
17
+ it "Should let you specify the version of the api you want to work with" do
18
+ stretchr = Stretchr::Client.new({api_version: "1.1"})
19
+ assert_equal "1.1", stretchr.api_version, "Should let me specify the api version that I want"
60
20
  end
61
21
 
62
- def test_basic_url_generation
63
- stretchr = test_stretchr_object
64
- assert_equal URI.parse("http://project.company.stretchr.com/api/v1/people/1/cars").to_s, stretchr.people(1).cars.to_url
22
+ it "Should let me specify the project and key" do
23
+ stretchr = Stretchr::Client.new({project: "asdf", key: "asdf2"})
24
+ assert_equal "asdf", stretchr.project, "Should have let me pass in the project"
25
+ assert_equal "asdf2", stretchr.key, "Should have let me pass in the key"
65
26
  end
66
27
 
67
- def test_paging
68
- stretchr = test_stretchr_object
69
- stretchr.people.limit(10).skip(10)
70
- assert_equal true, stretchr.uri.validate_param_value("~limit", "10"), "limit not set"
71
- assert_equal true, stretchr.uri.validate_param_value("~skip", "10"), "skip not set"
72
-
73
- stretchr = test_stretchr_object
74
- stretchr.people.limit(10).page(2)
75
- assert_equal true, stretchr.uri.validate_param_value("~limit", "10"), "limit not set"
76
- assert_equal true, stretchr.uri.validate_param_value("~skip", "10"), "skip not set"
28
+ it "Should pass the client to the request" do
29
+ stretchr = Stretchr::Client.new({project: "asdf", api_version: "v1.1"})
30
+ r = stretchr.people
31
+ assert_equal stretchr, r.client, "Should have passed the client into the request"
77
32
  end
78
33
 
79
- def test_orders
80
- stretchr = test_stretchr_object
81
- stretchr.people.order("-age")
82
- assert_equal true, stretchr.uri.validate_param_value("~order", "-age")
83
-
84
- stretchr = test_stretchr_object
85
- stretchr.people.order("-age,name")
86
- assert_equal true, stretchr.uri.validate_param_value("~order", "-age,name")
34
+ it "Should have a default api_version" do
35
+ stretchr = Stretchr::Client.new
36
+ assert stretchr.api_version, "Should have set a default api version"
87
37
  end
88
38
 
89
- def test_configuration_setup
90
- Stretchr.config do |s|
91
- s.private_key = "test_private"
92
- s.public_key = "test_public"
93
- s.project = "test"
94
- end
95
-
96
- assert_equal Stretchr.instance_eval {@configuration.private_key}, "test_private", "Should have setup configuration for the module"
97
- assert_nothing_raised do
98
- client = Stretchr::Client.new
99
- end
100
-
101
- assert_raise Stretchr::UnknownConfiguration, "Should raise an error when we pass an unknown configuration in" do
102
- Stretchr.config do |s|
103
- s.fake_param = "what"
104
- end
105
- end
106
- #FIXME : this is a hack to reset the client!
107
- Stretchr.instance_eval {@configuration = Stretchr::Configuration.new}
39
+ it "Should let me specify the hostname I want" do
40
+ stretchr = Stretchr::Client.new({hostname: "ryon.com"})
41
+ assert_equal "ryon.com", stretchr.hostname, "Should have let me specify the hostname I want"
108
42
  end
109
43
 
110
- def test_client_shouldnt_expect_options
111
- assert_nothing_raised do
112
- client = Stretchr::Client.new(nil)
113
- end
44
+ it "Should default to the stretchr hostname" do
45
+ stretchr = Stretchr::Client.new
46
+ assert_equal 'stretchr.com', stretchr.hostname, "Should have defaulted to the correct hostname"
114
47
  end
115
48
 
116
- def test_client_should_raise_errors
117
- stretchr = test_stretchr_object
118
- stretchr.noisy_errors = true
119
- assert_raises Stretchr::NotFound, "Should have returned not found!" do
120
- stretchr.transporter.responses << Stretchr::Response.new({json: ({"~s" => 404}).to_json})
121
- stretchr.get
122
- end
49
+ it "Should set a default transporter if I don't" do
50
+ stretchr = Stretchr::Client.new
51
+ assert_equal Stretchr::JSONTransporter, stretchr.transporter.class, "Should have defaulted to JSON transport"
123
52
  end
124
53
 
125
- def test_query
126
- stretchr = test_stretchr_object
127
- stretchr.where("name" => "ryan", "age" => ">21")
128
- assert stretchr.uri.validate_param_value(":name", "ryan"), "Should have searched for a name"
129
- assert stretchr.uri.validate_param_value(":age", ">21"), "Should search for an age"
130
- end
131
54
 
132
55
  end
@@ -0,0 +1,7 @@
1
+ require "test_helper"
2
+
3
+ describe "Load Config" do
4
+ it "Should load the config file for you" do
5
+ assert_equal "~status", Stretchr.config["v1.1"]["status"], "Should have loaded the config file"
6
+ end
7
+ end
data/test/test_helper.rb CHANGED
@@ -1,59 +1,9 @@
1
1
  require "cgi" unless defined? CGI
2
2
  require_relative "../lib/stretchr"
3
+ require "minitest/autorun"
3
4
 
4
- def test_stretchr_object
5
- Stretchr::Client.new({transporter: Stretchr::TestTransporter.new, private_key: 'ABC123-private', public_key: "test", project: "project.company"})
6
- end
7
-
8
- module Stretchr
9
- class GenerateResponse
10
- class << self
11
- def get_single_response(params = {})
12
- response = {
13
- "~s" => params[:status] || 200,
14
- "~d" => params[:data],
15
- }
16
- response["~e"] = params[:errors] if params[:errors]
17
- response["~x"] = params[:context] if params[:context]
18
- response["~ch"] = params[:change_info] if params[:change_info]
19
- response.to_json
20
- end
21
-
22
- def get_collection_response(params = {})
23
- response = {
24
- "~s" => params[:status] || 200,
25
- "~d" => {
26
- "~t" => params[:total] || 10,
27
- "~c" => params[:in_response] || 0
28
- },
29
- }
30
- if params[:objects]
31
- response["~d"]["~i"] = params[:objects]
32
- response["~d"]["~c"] = params[:objects].length
33
- end
34
- response["~e"] = params[:errors] if params[:errors]
35
- response["~x"] = params[:context] if params[:context]
36
- response["~ch"] = params[:change_info] if params[:change_info]
37
- response.to_json
38
- end
39
-
40
- def post_response(params = {})
41
- response = {
42
- "~s" => params[:status] || 200,
43
- "~ch" => {"~c" => 1, "~u" => 1, "~d" => 0 }
44
- }
45
- response["~ch"]["~deltas"] = params[:deltas] if params[:deltas]
46
- response.to_json
47
- end
48
-
49
- def put_response(params = {})
50
- {
51
-
52
- }
53
- end
54
-
55
- end
56
- end
5
+ def load_api_response(filename)
6
+ File.open(File.join(Dir.pwd, "test", "stubs", filename)) {|f| f.read }
57
7
  end
58
8
 
59
9
  module URI
@@ -0,0 +1,184 @@
1
+ require "test_helper"
2
+
3
+ describe "Request Object" do
4
+ it "Should let you build up a url" do
5
+ r = Stretchr::Request.new
6
+ r.people(1).cars
7
+ assert_equal "people/1/cars", r.path, "Should have built up a path"
8
+ end
9
+
10
+ it "Should know how to build a complete url including path" do
11
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1"})
12
+ r = Stretchr::Request.new({client: c})
13
+ assert_equal "http://project.stretchr.com/api/v1.1/people/1/cars", r.people(1).cars.to_url, "Should have built the url properly"
14
+ end
15
+
16
+ it "Should let you pass in params" do
17
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1"})
18
+ r = Stretchr::Request.new({client: c})
19
+ r.param("key", "asdf")
20
+ assert r.to_url.include?("?key=asdf"), "Should have added the params"
21
+ end
22
+
23
+ it "should let you chain params" do
24
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1"})
25
+ r = Stretchr::Request.new({client: c})
26
+ r.param("key", "asdf").param("key2", "asdf2")
27
+ uri = r.to_uri
28
+ assert_equal "asdf", uri.get_param("key").first, "should have set key"
29
+ assert_equal "asdf2", uri.get_param("key2").first, "Should have set key2"
30
+ end
31
+
32
+ it "should let you add filters" do
33
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1"})
34
+ r = Stretchr::Request.new({client: c})
35
+ r.where("name", "ryan").where("age", "21")
36
+ assert_equal ["ryan"], r.to_uri.get_param(":name"), "Should have added filters"
37
+ assert_equal ["21"], r.to_uri.get_param(":age"), "Should have added filter for age"
38
+ end
39
+
40
+ it "Should let you add multiple filters" do
41
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1"})
42
+ r = Stretchr::Request.new({client: c})
43
+ r.where("age", [">21", "<40"])
44
+ assert_equal [">21", "<40"], r.to_uri.get_param(":age"), "Should have added multiple ages"
45
+ end
46
+
47
+ it "Should let you get objects" do
48
+ t = Stretchr::TestTransporter.new
49
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
50
+ r = Stretchr::Request.new({client: c})
51
+ r.people.get
52
+ assert_equal :get, t.requests.first[:method], "Should have performed a get request"
53
+ end
54
+
55
+ it "Should let you create new objects" do
56
+ t = Stretchr::TestTransporter.new
57
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
58
+ r = Stretchr::Request.new({client: c})
59
+ r.people.create({name: "ryan"})
60
+ assert_equal :post, t.requests.first[:method], "Should have performed a post"
61
+ assert_equal "ryan", t.requests.first[:body][:name], "Should have sent the body to the transporter"
62
+ end
63
+
64
+ it "Should let you replace an existing object" do
65
+ t = Stretchr::TestTransporter.new
66
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
67
+ r = Stretchr::Request.new({client: c})
68
+ r.people(1).replace({name: "ryan"})
69
+ assert_equal :put, t.requests.first[:method], "Should have performed a put"
70
+ assert_equal "ryan", t.requests.first[:body][:name], "Should have sent the body to the transporter"
71
+ end
72
+
73
+ it "Should let you update an existing object" do
74
+ t = Stretchr::TestTransporter.new
75
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
76
+ r = Stretchr::Request.new({client: c})
77
+ r.people(1).update({name: "ryan"})
78
+ assert_equal :patch, t.requests.first[:method], "Should have performed a put"
79
+ assert_equal "ryan", t.requests.first[:body][:name], "Should have sent the body to the transporter"
80
+ end
81
+
82
+ it "Should let you remove an object or collection" do
83
+ t = Stretchr::TestTransporter.new
84
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
85
+ r = Stretchr::Request.new({client: c})
86
+ r.people(1).remove
87
+ assert_equal :delete, t.requests.first[:method], "Should have performed a put"
88
+ end
89
+
90
+ it "Should set a default api version" do
91
+ r = Stretchr::Request.new
92
+ assert r.api_version, "it should have set a default api version"
93
+ end
94
+
95
+ it "Should let me pass in a client" do
96
+ client = Object.new
97
+ r = Stretchr::Request.new({client: client})
98
+ assert_equal client, r.client, "Should have passed the client to the request"
99
+ end
100
+
101
+ it "Should pass the client to the transporter" do
102
+ t = Stretchr::TestTransporter.new
103
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
104
+ r = Stretchr::Request.new({client: c})
105
+ r.people.get
106
+ assert_equal c, t.requests.first[:client], "Should have passed the client to the transporter"
107
+ end
108
+
109
+ it "should pass the correct uri to the transporter" do
110
+ t = Stretchr::TestTransporter.new
111
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
112
+ r = Stretchr::Request.new({client: c})
113
+ r.people.get
114
+ assert_equal "http://project.stretchr.com/api/v1.1/people", r.to_url, "Should have saved the right url in the request"
115
+ assert_equal "http://project.stretchr.com/api/v1.1/people", t.requests.first[:uri].to_s, "Should have created the right URL and sent it to the transporter"
116
+ end
117
+
118
+ it "Should know how to handle paging" do
119
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1"})
120
+ r = Stretchr::Request.new({client: c})
121
+ r.people.limit(10).skip(10)
122
+ assert r.to_uri.validate_param_value("limit", "10"), "should have added limit"
123
+ assert r.to_uri.validate_param_value("skip", "10"), "should have added skip"
124
+
125
+ r2 = Stretchr::Request.new({client: c})
126
+ r2.people.limit(10).page(2)
127
+ assert r2.to_uri.validate_param_value("limit", "10"), "should have added limit"
128
+ assert r2.to_uri.validate_param_value("skip", "10"), "should have added skip from paging"
129
+ end
130
+
131
+ it "Should understand how to do ordering" do
132
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1"})
133
+ r = Stretchr::Request.new({client: c})
134
+ r.order("-name,age")
135
+ assert r.to_uri.validate_param_value("order", "-name,age"), "should have added order attribute"
136
+ end
137
+
138
+ it "Should support the necessary convenience methods" do
139
+ # READ/GET
140
+ t = Stretchr::TestTransporter.new
141
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
142
+ r = Stretchr::Request.new({client: c})
143
+ r.people.get
144
+ assert_equal :get, t.requests.first[:method], "Should have performed a get request"
145
+ r.people.read
146
+ assert_equal :get, t.requests[1][:method], "Should have performed a get request"
147
+
148
+ # REPLACE/PUT
149
+ t = Stretchr::TestTransporter.new
150
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
151
+ r = Stretchr::Request.new({client: c})
152
+ r.people.replace({name: "ryan"})
153
+ assert_equal :put, t.requests.first[:method], "Should have performed a put request"
154
+ r.people.put({name: "ryan"})
155
+ assert_equal :put, t.requests[1][:method], "Should have performed a put request"
156
+
157
+ # UPDATE/PATCH
158
+ t = Stretchr::TestTransporter.new
159
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
160
+ r = Stretchr::Request.new({client: c})
161
+ r.people.update({name: "ryan"})
162
+ assert_equal :patch, t.requests.first[:method], "Should have performed a patch request"
163
+ r.people.patch({name: "ryan"})
164
+ assert_equal :patch, t.requests[1][:method], "Should have performed a patch request"
165
+
166
+ # CREATE/POST
167
+ t = Stretchr::TestTransporter.new
168
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
169
+ r = Stretchr::Request.new({client: c})
170
+ r.people.create({name: "ryan"})
171
+ assert_equal :post, t.requests.first[:method], "Should have performed a post request"
172
+ r.people.post({name: "ryan"})
173
+ assert_equal :post, t.requests[1][:method], "Should have performed a post request"
174
+
175
+ # REMOVE/DELETE
176
+ t = Stretchr::TestTransporter.new
177
+ c = Stretchr::Client.new({project: "project", api_version: "v1.1", transporter: t})
178
+ r = Stretchr::Request.new({client: c})
179
+ r.people.remove
180
+ assert_equal :delete, t.requests.first[:method], "Should have performed a delete request"
181
+ r.people.delete
182
+ assert_equal :delete, t.requests[1][:method], "Should have performed a delete request"
183
+ end
184
+ end
@@ -0,0 +1,52 @@
1
+ require "test_helper"
2
+
3
+ describe "Response" do
4
+ it "Should take in and store a response" do
5
+ d = {name: "ryon"}.to_json
6
+ r = Stretchr::Response.new(d)
7
+ assert_equal d, r.raw, "Should have saved the raw response"
8
+ end
9
+
10
+ it "Should know if the response was successfull" do
11
+ r = Stretchr::Response.new(load_api_response("get_collection_response.json"))
12
+ assert r.success?, "Should have registered response as success"
13
+ end
14
+
15
+ it "Should parse out the json data" do
16
+ d = {name: "ryon"}.to_json
17
+ r = Stretchr::Response.new(d)
18
+ assert_equal "ryon", r.parsed["name"], "Should have parsed out the data"
19
+ end
20
+
21
+ it "Should no how to pull out data from a stretchr response" do
22
+ r = Stretchr::Response.new(load_api_response("get_single_response.json"))
23
+ assert_equal "value", r.data["field"], "Should have pulled actual data from stretchr standard response"
24
+ end
25
+
26
+ it "Should let me specify my own api_version" do
27
+ d = {name: "ryon"}.to_json
28
+ r = Stretchr::Response.new(d, {api_version: "v2"})
29
+ assert_equal "v2", r.api_version, "Should have let me specify the api version"
30
+ end
31
+
32
+ it "Should know how to extract errors out" do
33
+ r = Stretchr::Response.new(load_api_response("not_found_error.json"))
34
+ assert_equal false, r.success?, "Should have registered as a failure"
35
+ assert_equal "one", r.errors.first["~message"], "Should have returned the errors as an array"
36
+ end
37
+
38
+ it "Should be able to return the changes" do
39
+ r = Stretchr::Response.new(load_api_response("post_single_object.json"))
40
+ assert_equal 1, r.changes["~created"], "Should have returned the changes"
41
+ end
42
+
43
+ it "Should give me access to the status" do
44
+ r = Stretchr::Response.new(load_api_response("get_single_response.json"))
45
+ assert_equal 200, r.status, "Should have pulled out the response"
46
+ end
47
+
48
+ it "Should know how to pull items out of a response" do
49
+ r = Stretchr::Response.new(load_api_response("get_collection_response.json"))
50
+ assert_equal "Mat", r.items.first["name"], "Should know how to pull items from response"
51
+ end
52
+ end
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stretchr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
5
- prerelease:
4
+ version: 1.2.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Ryan Quinn
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-30 00:00:00.000000000 Z
11
+ date: 2013-12-17 00:00:00.000000000 Z
13
12
  dependencies: []
14
13
  description: A gem for interacting with your stretchr data
15
14
  email: ryan@mazondo.com
@@ -17,50 +16,45 @@ executables: []
17
16
  extensions: []
18
17
  extra_rdoc_files: []
19
18
  files:
19
+ - lib/stretchr/bag.rb
20
20
  - lib/stretchr/client.rb
21
- - lib/stretchr/configuration.rb
22
- - lib/stretchr/exceptions.rb
23
- - lib/stretchr/resources/resource.rb
24
- - lib/stretchr/resources.rb
25
- - lib/stretchr/security/signatory.rb
26
- - lib/stretchr/security.rb
27
- - lib/stretchr/stretchr_request.rb
28
- - lib/stretchr/stretchr_response.rb
29
- - lib/stretchr/transporters/default_transporter.rb
21
+ - lib/stretchr/defaults.yaml
22
+ - lib/stretchr/request.rb
23
+ - lib/stretchr/response.rb
24
+ - lib/stretchr/transporters/json_transporter.rb
30
25
  - lib/stretchr/transporters/test_transporter.rb
31
- - lib/stretchr/transporters.rb
32
26
  - lib/stretchr.rb
27
+ - test/stubs/get_collection_response.json
28
+ - test/stubs/get_single_response.json
29
+ - test/stubs/not_found_error.json
30
+ - test/stubs/post_single_object.json
31
+ - test/test_bag.rb
33
32
  - test/test_client.rb
33
+ - test/test_config.rb
34
34
  - test/test_helper.rb
35
- - test/test_resources.rb
36
- - test/test_signatory.rb
37
- - test/test_stretchr_http_actions.rb
38
- - test/test_stretchr_request.rb
39
- - test/test_stretchr_response.rb
40
- - test/test_test_transporter.rb
41
- homepage: http://www.stretchr.com
35
+ - test/test_request.rb
36
+ - test/test_response.rb
37
+ homepage: https://github.com/stretchr/sdk-ruby
42
38
  licenses: []
39
+ metadata: {}
43
40
  post_install_message:
44
41
  rdoc_options: []
45
42
  require_paths:
46
43
  - lib
47
44
  required_ruby_version: !ruby/object:Gem::Requirement
48
- none: false
49
45
  requirements:
50
- - - ! '>='
46
+ - - '>='
51
47
  - !ruby/object:Gem::Version
52
48
  version: '0'
53
49
  required_rubygems_version: !ruby/object:Gem::Requirement
54
- none: false
55
50
  requirements:
56
- - - ! '>='
51
+ - - '>='
57
52
  - !ruby/object:Gem::Version
58
53
  version: '0'
59
54
  requirements: []
60
55
  rubyforge_project:
61
- rubygems_version: 1.8.24
56
+ rubygems_version: 2.0.3
62
57
  signing_key:
63
- specification_version: 3
58
+ specification_version: 4
64
59
  summary: A gem for managing your stretchr data
65
60
  test_files: []
66
- has_rdoc:
@@ -1,20 +0,0 @@
1
- module Stretchr
2
-
3
- class Configuration
4
-
5
- def self.add_option(name, default_value = nil)
6
- attr_accessor name
7
- @name = default_value
8
- end
9
-
10
- add_option :private_key
11
- add_option :public_key
12
- add_option :project
13
- add_option :noisy_errors
14
-
15
- def method_missing(name, *params)
16
- raise Stretchr::UnknownConfiguration
17
- end
18
- end
19
-
20
- end
@@ -1,18 +0,0 @@
1
- #FIXME : Right now we just define some errors that users can implement if they wish. Should we implement them for them?
2
- module Stretchr
3
- #basic stretchr error namespace
4
- class StretchrError < StandardError; end
5
-
6
- #Configuration
7
- class MissingAttributeError < StretchrError; end #thrown when initializing client without params
8
- class UnknownConfiguration < StretchrError; end #thrown when we try to set an unknown configuration option
9
-
10
- #stretchr status errors
11
- class NotFound < StretchrError; end
12
- class InternalServerError < StretchrError; end
13
- class BadRequest < StretchrError; end
14
- class Unathorized < StretchrError; end
15
- class Forbidden < StretchrError; end
16
- class Unknown < StretchrError; end
17
-
18
- end