gocardless 1.9.0 → 1.10.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/README.md +1 -4
- data/lib/gocardless.rb +0 -1
- data/lib/gocardless/bill.rb +26 -14
- data/lib/gocardless/client.rb +16 -12
- data/lib/gocardless/merchant.rb +1 -0
- data/lib/gocardless/page.rb +43 -0
- data/lib/gocardless/paginator.rb +86 -0
- data/lib/gocardless/pre_authorization.rb +2 -2
- data/lib/gocardless/resource.rb +18 -12
- data/lib/gocardless/subscription.rb +1 -5
- data/lib/gocardless/user.rb +6 -1
- data/lib/gocardless/version.rb +1 -1
- data/spec/bill_spec.rb +23 -73
- data/spec/client_spec.rb +10 -10
- data/spec/page_spec.rb +93 -0
- data/spec/paginator_spec.rb +134 -0
- data/spec/pre_authorization_spec.rb +11 -48
- data/spec/resource_spec.rb +81 -105
- data/spec/spec_helper.rb +14 -1
- data/spec/subscription_spec.rb +11 -48
- data/spec/user_spec.rb +5 -7
- metadata +8 -3
- data/lib/gocardless/payment.rb +0 -9
data/spec/spec_helper.rb
CHANGED
@@ -2,7 +2,7 @@ require 'active_support/hash_with_indifferent_access'
|
|
2
2
|
require 'gocardless'
|
3
3
|
|
4
4
|
def stub_get(client, data)
|
5
|
-
response =
|
5
|
+
response = double
|
6
6
|
response.stub(:parsed).and_return(data)
|
7
7
|
|
8
8
|
token = client.instance_variable_get(:@access_token)
|
@@ -13,3 +13,16 @@ def unset_ivar(obj, var)
|
|
13
13
|
obj.instance_variable_set "@#{var}", nil if obj.instance_variable_get "@#{var}"
|
14
14
|
end
|
15
15
|
|
16
|
+
shared_examples_for "it has a query method for" do |status|
|
17
|
+
describe "##{status}?" do
|
18
|
+
context "when #{status}" do
|
19
|
+
let(:object) { described_class.new(:status => status) }
|
20
|
+
specify { object.send("#{status}?").should be_true }
|
21
|
+
end
|
22
|
+
|
23
|
+
context "when not #{status}" do
|
24
|
+
let(:object) { described_class.new }
|
25
|
+
specify { object.send("#{status}?").should be_false }
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/spec/subscription_spec.rb
CHANGED
@@ -1,57 +1,20 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe GoCardless::Subscription do
|
4
|
-
before
|
5
|
-
|
6
|
-
|
7
|
-
GoCardless.account_details = {:app_id => @app_id, :app_secret => @app_secret,
|
8
|
-
:token => 'xxx', :merchant_id => '1'}
|
9
|
-
@client = GoCardless.client
|
4
|
+
before do
|
5
|
+
GoCardless.account_details = {:app_id => 'abc', :app_secret => 'xyz',
|
6
|
+
:token => 'xxx', :merchant_id => '123'}
|
10
7
|
end
|
8
|
+
let(:client) { GoCardless.client }
|
9
|
+
let(:subscription) { GoCardless::Subscription.new(:id => '009988') }
|
11
10
|
|
12
11
|
it "should be cancellable" do
|
13
|
-
|
14
|
-
|
15
|
-
s.cancel!
|
12
|
+
client.should_receive(:api_put).with('/subscriptions/009988/cancel')
|
13
|
+
subscription.cancel!
|
16
14
|
end
|
17
15
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
it "and_return false otherwise" do
|
24
|
-
GoCardless::Subscription.new.inactive?.should be_false
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
describe "active query method" do
|
29
|
-
it "and_return true when the subscription status is active" do
|
30
|
-
GoCardless::Subscription.new(:status => 'active').active?.should be_true
|
31
|
-
end
|
32
|
-
|
33
|
-
it "and_return false otherwise" do
|
34
|
-
GoCardless::Subscription.new.active?.should be_false
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
describe "cancelled query method" do
|
39
|
-
it "and_return true when the subscription status is cancelled" do
|
40
|
-
GoCardless::Subscription.new(:status => 'cancelled').cancelled?.should be_true
|
41
|
-
end
|
42
|
-
|
43
|
-
it "and_return false otherwise" do
|
44
|
-
GoCardless::Subscription.new.cancelled?.should be_false
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
describe "expired query method" do
|
49
|
-
it "and_return true when the subscription status is expired" do
|
50
|
-
GoCardless::Subscription.new(:status => 'expired').expired?.should be_true
|
51
|
-
end
|
52
|
-
|
53
|
-
it "and_return false otherwise" do
|
54
|
-
GoCardless::Subscription.new.expired?.should be_false
|
55
|
-
end
|
56
|
-
end
|
16
|
+
it_behaves_like "it has a query method for", "inactive"
|
17
|
+
it_behaves_like "it has a query method for", "active"
|
18
|
+
it_behaves_like "it has a query method for", "cancelled"
|
19
|
+
it_behaves_like "it has a query method for", "expired"
|
57
20
|
end
|
data/spec/user_spec.rb
CHANGED
@@ -1,33 +1,31 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe GoCardless::User do
|
4
|
-
let(:user) { GoCardless::User.new(:
|
4
|
+
let(:user) { GoCardless::User.new(:first_name => first, :last_name => last) }
|
5
5
|
|
6
6
|
describe "#name" do
|
7
|
-
subject { user.name }
|
8
|
-
|
9
7
|
context "with first and last name" do
|
10
8
|
let(:first) { "First" }
|
11
9
|
let(:last) { "Last" }
|
12
|
-
|
10
|
+
specify { user.name.should == "First Last" }
|
13
11
|
end
|
14
12
|
|
15
13
|
context "with first name only" do
|
16
14
|
let(:first) { "First" }
|
17
15
|
let(:last) { nil }
|
18
|
-
|
16
|
+
specify { user.name.should == "First" }
|
19
17
|
end
|
20
18
|
|
21
19
|
context "with last name only" do
|
22
20
|
let(:first) { nil }
|
23
21
|
let(:last) { "Last" }
|
24
|
-
|
22
|
+
specify { user.name.should == "Last" }
|
25
23
|
end
|
26
24
|
|
27
25
|
context "with no first or last name" do
|
28
26
|
let(:first) { nil }
|
29
27
|
let(:last) { nil }
|
30
|
-
|
28
|
+
specify { user.name.should == "" }
|
31
29
|
end
|
32
30
|
end
|
33
31
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gocardless
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.10.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Harry Marr
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-06-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: oauth2
|
@@ -117,7 +117,8 @@ files:
|
|
117
117
|
- lib/gocardless/client.rb
|
118
118
|
- lib/gocardless/errors.rb
|
119
119
|
- lib/gocardless/merchant.rb
|
120
|
-
- lib/gocardless/
|
120
|
+
- lib/gocardless/page.rb
|
121
|
+
- lib/gocardless/paginator.rb
|
121
122
|
- lib/gocardless/payout.rb
|
122
123
|
- lib/gocardless/pre_authorization.rb
|
123
124
|
- lib/gocardless/resource.rb
|
@@ -128,6 +129,8 @@ files:
|
|
128
129
|
- spec/bill_spec.rb
|
129
130
|
- spec/client_spec.rb
|
130
131
|
- spec/gocardless_spec.rb
|
132
|
+
- spec/page_spec.rb
|
133
|
+
- spec/paginator_spec.rb
|
131
134
|
- spec/pre_authorization_spec.rb
|
132
135
|
- spec/resource_spec.rb
|
133
136
|
- spec/spec_helper.rb
|
@@ -162,6 +165,8 @@ test_files:
|
|
162
165
|
- spec/bill_spec.rb
|
163
166
|
- spec/client_spec.rb
|
164
167
|
- spec/gocardless_spec.rb
|
168
|
+
- spec/page_spec.rb
|
169
|
+
- spec/paginator_spec.rb
|
165
170
|
- spec/pre_authorization_spec.rb
|
166
171
|
- spec/resource_spec.rb
|
167
172
|
- spec/spec_helper.rb
|