sage_one 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/History.txt +7 -0
- data/README.md +1 -1
- data/lib/sage_one/connection.rb +2 -0
- data/lib/sage_one/version.rb +1 -1
- data/sage_one.gemspec +1 -1
- data/spec/sage_one/connection_spec.rb +1 -1
- data/spec/sage_one/oauth_spec.rb +1 -1
- data/spec/sage_one/request_spec.rb +14 -0
- metadata +8 -4
data/History.txt
ADDED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Sage One [][travis] [][travis] [][gemnasium]
|
2
2
|
Faraday-based Ruby wrapper for the Sage One API
|
3
3
|
|
4
4
|
[travis]: http://travis-ci.org/customersure/sage_one
|
data/lib/sage_one/connection.rb
CHANGED
data/lib/sage_one/version.rb
CHANGED
data/sage_one.gemspec
CHANGED
@@ -5,7 +5,7 @@ Gem::Specification.new do |s|
|
|
5
5
|
s.add_dependency 'addressable', '~>2.3'
|
6
6
|
s.add_dependency 'faraday', '~>0.8'
|
7
7
|
s.add_dependency 'faraday_middleware', '~> 0.9'
|
8
|
-
s.add_dependency 'hashie', '~>
|
8
|
+
s.add_dependency 'hashie', '~>2.0'
|
9
9
|
s.add_dependency 'multi_json', '~> 1.4'
|
10
10
|
|
11
11
|
s.add_development_dependency 'json'
|
@@ -3,7 +3,7 @@ require 'spec_helper'
|
|
3
3
|
describe SageOne::Connection do
|
4
4
|
|
5
5
|
let(:client) { SageOne.new }
|
6
|
-
let(:basic_middleware) { %w(FaradayMiddleware::EncodeJson FaradayMiddleware::OAuth2 FaradayMiddleware::RaiseSageOneException) }
|
6
|
+
let(:basic_middleware) { %w(FaradayMiddleware::EncodeJson FaradayMiddleware::OAuth2 FaradayMiddleware::RaiseSageOneException FaradayMiddleware::FollowRedirects) }
|
7
7
|
let(:non_raw_middleware) { %w(FaradayMiddleware::Mashify FaradayMiddleware::ParseJson) }
|
8
8
|
|
9
9
|
it "returns a Faraday" do
|
data/spec/sage_one/oauth_spec.rb
CHANGED
@@ -15,7 +15,7 @@ describe SageOne::OAuth do
|
|
15
15
|
|
16
16
|
stub_post("https://app.sageone.com/oauth/token/").
|
17
17
|
with(:body => "{\"client_id\":\"CLIENT_ID\",\"client_secret\":\"CLIENT_SECRET\",\"grant_type\":\"authorization_code\",\"code\":\"uuddlrlr\",\"redirect_uri\":\"http://www.example.com/endpoint\"}",
|
18
|
-
:headers => {'Accept'=>'application/json; charset=utf-8', 'Content-Type'=>'application/json'
|
18
|
+
:headers => {'Accept'=>'application/json; charset=utf-8', 'Content-Type'=>'application/json'}).
|
19
19
|
to_return(:body => fixture("oauth/oauth_token.json"))
|
20
20
|
|
21
21
|
expect(client.get_access_token('uuddlrlr', 'http://www.example.com/endpoint').access_token).to eq('IguLPAK5VPvDSw3z4SjrkhHTyRXgnnqAPzt1mLUk')
|
@@ -68,6 +68,20 @@ describe SageOne::Request do
|
|
68
68
|
a_get('sales_invoices').with(headers: { "Host" => 'CustomerHost' }).should have_been_made.once
|
69
69
|
end
|
70
70
|
|
71
|
+
context 'being redirected' do
|
72
|
+
before do
|
73
|
+
stub_get('http://www.example.com/')
|
74
|
+
stub_request(:get, sage_url('sales_invoices'))
|
75
|
+
.to_return(body: '<!doctype html><html><head><title>hello</title></head><body><p>Word up.</p></body></html>',
|
76
|
+
status: 301,
|
77
|
+
headers: { 'Location' => 'http://www.example.com/' } )
|
78
|
+
end
|
79
|
+
it 'follows redirects (before it tries to parse the html body with a json parser)' do
|
80
|
+
client.get('sales_invoices')
|
81
|
+
a_get('http://www.example.com/').should have_been_made
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
71
85
|
describe "response body" do
|
72
86
|
context 'raw requested' do
|
73
87
|
it "returns a faraday response" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sage_one
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2013-03-27 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: addressable
|
@@ -67,7 +67,7 @@ dependencies:
|
|
67
67
|
requirements:
|
68
68
|
- - ~>
|
69
69
|
- !ruby/object:Gem::Version
|
70
|
-
version: '
|
70
|
+
version: '2.0'
|
71
71
|
type: :runtime
|
72
72
|
prerelease: false
|
73
73
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -75,7 +75,7 @@ dependencies:
|
|
75
75
|
requirements:
|
76
76
|
- - ~>
|
77
77
|
- !ruby/object:Gem::Version
|
78
|
-
version: '
|
78
|
+
version: '2.0'
|
79
79
|
- !ruby/object:Gem::Dependency
|
80
80
|
name: multi_json
|
81
81
|
requirement: !ruby/object:Gem::Requirement
|
@@ -208,6 +208,7 @@ files:
|
|
208
208
|
- .travis.yml
|
209
209
|
- .yardopts
|
210
210
|
- Gemfile
|
211
|
+
- History.txt
|
211
212
|
- LICENSE
|
212
213
|
- README.md
|
213
214
|
- Rakefile
|
@@ -265,6 +266,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
265
266
|
- - ! '>='
|
266
267
|
- !ruby/object:Gem::Version
|
267
268
|
version: '0'
|
269
|
+
segments:
|
270
|
+
- 0
|
271
|
+
hash: -2226741955563997097
|
268
272
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
269
273
|
none: false
|
270
274
|
requirements:
|