chargebee 1.2.3 → 1.2.4

Sign up to get free protection for your applications and to get access to all the features.
data/chargebee.gemspec CHANGED
@@ -4,8 +4,8 @@ Gem::Specification.new do |s|
4
4
  s.rubygems_version = '1.3.5'
5
5
 
6
6
  s.name = 'chargebee'
7
- s.version = '1.2.3'
8
- s.date = '2013-07-10'
7
+ s.version = '1.2.4'
8
+ s.date = '2013-08-06'
9
9
 
10
10
  s.summary = "Ruby client for Chargebee API."
11
11
  s.description = "Subscription Billing - Simple. Secure. Affordable. More details at www.chargebee.com."
@@ -56,6 +56,7 @@ Gem::Specification.new do |s|
56
56
  lib/chargebee/result.rb
57
57
  lib/chargebee/util.rb
58
58
  lib/ssl/ca-certs.crt
59
+ spec/chargebee/list_result_spec.rb
59
60
  spec/chargebee_spec.rb
60
61
  spec/sample_response.rb
61
62
  spec/spec_helper.rb
data/lib/chargebee.rb CHANGED
@@ -24,7 +24,7 @@ require File.dirname(__FILE__) + '/chargebee/models/coupon'
24
24
 
25
25
  module ChargeBee
26
26
 
27
- VERSION = '1.2.3'
27
+ VERSION = '1.2.4'
28
28
 
29
29
  @@default_env = nil
30
30
  @@verify_ca_certs = true
@@ -8,9 +8,12 @@ module ChargeBee
8
8
  def_delegator :@list, :each, :each
9
9
  def_delegator :@list, :length, :length
10
10
 
11
- def initialize(response)
11
+ attr_reader :next_offset
12
+
13
+ def initialize(response, next_offset=nil)
12
14
  @response = response
13
15
  @list = Array.new
16
+ @next_offset = JSON.parse(next_offset) if next_offset
14
17
  initItems()
15
18
  end
16
19
 
@@ -7,13 +7,13 @@ module ChargeBee
7
7
  # OPERATIONS
8
8
  #-----------
9
9
 
10
- def self.update(params, env=nil)
11
- Request.send('post', "/addresses", params, env)
12
- end
13
-
14
10
  def self.retrieve(params, env=nil)
15
11
  Request.send('get', "/addresses", params, env)
16
12
  end
17
13
 
14
+ def self.update(params, env=nil)
15
+ Request.send('post', "/addresses", params, env)
16
+ end
17
+
18
18
  end # ~Address
19
19
  end # ~ChargeBee
@@ -19,12 +19,12 @@ module ChargeBee
19
19
  # OPERATIONS
20
20
  #-----------
21
21
 
22
- def self.add_charge(id, params, env=nil)
23
- Request.send('post', "/invoices/#{id.to_s}/add_charge", params, env)
22
+ def self.charge(params, env=nil)
23
+ Request.send('post', "/invoices/charge", params, env)
24
24
  end
25
25
 
26
- def self.add_addon_charge(id, params, env=nil)
27
- Request.send('post', "/invoices/#{id.to_s}/add_addon_charge", params, env)
26
+ def self.charge_addon(params, env=nil)
27
+ Request.send('post', "/invoices/charge_addon", params, env)
28
28
  end
29
29
 
30
30
  def self.list(params={}, env=nil)
@@ -39,16 +39,16 @@ module ChargeBee
39
39
  Request.send('get', "/invoices/#{id.to_s}", {}, env)
40
40
  end
41
41
 
42
- def self.collect(id, env=nil)
43
- Request.send('post', "/invoices/#{id.to_s}/collect", {}, env)
42
+ def self.add_charge(id, params, env=nil)
43
+ Request.send('post', "/invoices/#{id.to_s}/add_charge", params, env)
44
44
  end
45
45
 
46
- def self.charge(params, env=nil)
47
- Request.send('post', "/invoices/charge", params, env)
46
+ def self.add_addon_charge(id, params, env=nil)
47
+ Request.send('post', "/invoices/#{id.to_s}/add_addon_charge", params, env)
48
48
  end
49
49
 
50
- def self.charge_addon(params, env=nil)
51
- Request.send('post', "/invoices/charge_addon", params, env)
50
+ def self.collect(id, env=nil)
51
+ Request.send('post', "/invoices/#{id.to_s}/collect", {}, env)
52
52
  end
53
53
 
54
54
  end # ~Invoice
@@ -12,13 +12,13 @@ module ChargeBee
12
12
  Request.send('get', "/transactions", params, env)
13
13
  end
14
14
 
15
- def self.retrieve(id, env=nil)
16
- Request.send('get', "/transactions/#{id.to_s}", {}, env)
17
- end
18
-
19
15
  def self.transactions_for_subscription(id, params={}, env=nil)
20
16
  Request.send('get', "/subscriptions/#{id.to_s}/transactions", params, env)
21
17
  end
22
18
 
19
+ def self.retrieve(id, env=nil)
20
+ Request.send('get', "/transactions/#{id.to_s}", {}, env)
21
+ end
22
+
23
23
  end # ~Transaction
24
24
  end # ~ChargeBee
@@ -5,7 +5,11 @@ module ChargeBee
5
5
  env ||= ChargeBee.default_env
6
6
  ser_params = Util.serialize(params)
7
7
  resp = Rest.request(method, url, env, ser_params||={})
8
- resp.has_key?(:list) ? ListResult.new(resp[:list]) : Result.new(resp)
8
+ if resp.has_key?(:list)
9
+ ListResult.new(resp[:list], resp[:next_offset])
10
+ else
11
+ Result.new(resp)
12
+ end
9
13
  end
10
14
 
11
15
  end
@@ -0,0 +1,53 @@
1
+ require "spec_helper"
2
+
3
+ describe ChargeBee::ListResult do
4
+ let(:response) do
5
+ {:list=>
6
+ [{:customer=>
7
+ {:id=>"d0cus3orh6gnjgha1i",
8
+ :first_name=>"Test Name1",
9
+ :last_name=>"Test last name 1",
10
+ :email=>"name1@gmail.com",
11
+ :auto_collection=>"on",
12
+ :created_at=>1346258514,
13
+ :object=>"customer",
14
+ :card_status=>"valid"},
15
+ :card=>
16
+ {:customer_id=>"d0cus3orh6gnjgha1i",
17
+ :status=>"valid",
18
+ :gateway=>"chargebee",
19
+ :first_name=>"Test Name1",
20
+ :last_name=>"Test last name 1",
21
+ :iin=>"32122",
22
+ :last4=>"1333",
23
+ :card_type=>"visa",
24
+ :expiry_month=>8,
25
+ :expiry_year=>2013,
26
+ :billing_addr1=>"Flat 11",
27
+ :billing_addr2=>"51 Strit",
28
+ :billing_city=>"Bristol",
29
+ :billing_state=>"Somerset",
30
+ :billing_zip=>"BS1 4HQ",
31
+ :object=>"card",
32
+ :masked_number=>"21323****4323"}},
33
+ {:customer=>
34
+ {:id=>"cwtid6smh67tq3z51l",
35
+ :first_name=>"Test Name 2",
36
+ :last_name=>"Test last name 2",
37
+ :email=>"name2@gmail.com",
38
+ :auto_collection=>"on",
39
+ :created_at=>1345724673,
40
+ :object=>"customer",
41
+ :card_status=>"no_card"}}],
42
+ :next_offset=>"[\"1345724673000\",\"1510\"]"}
43
+ end
44
+
45
+ before do
46
+ ChargeBee::Rest.stubs(:request).returns(response)
47
+ end
48
+
49
+ it "returns list object, with next offset attribute" do
50
+ list = ChargeBee::Request.send(:customer, "http://url.com", {:limit => 2})
51
+ list.next_offset.should =~ ["1345724673000", "1510"]
52
+ end
53
+ end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: chargebee
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.2.3
5
+ version: 1.2.4
6
6
  platform: ruby
7
7
  authors:
8
8
  - Rajaraman S
@@ -11,7 +11,7 @@ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
13
 
14
- date: 2013-07-10 00:00:00 Z
14
+ date: 2013-08-06 00:00:00 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: json_pure
@@ -97,6 +97,7 @@ files:
97
97
  - lib/chargebee/result.rb
98
98
  - lib/chargebee/util.rb
99
99
  - lib/ssl/ca-certs.crt
100
+ - spec/chargebee/list_result_spec.rb
100
101
  - spec/chargebee_spec.rb
101
102
  - spec/sample_response.rb
102
103
  - spec/spec_helper.rb
@@ -128,6 +129,7 @@ signing_key:
128
129
  specification_version: 2
129
130
  summary: Ruby client for Chargebee API.
130
131
  test_files:
132
+ - spec/chargebee/list_result_spec.rb
131
133
  - spec/chargebee_spec.rb
132
134
  - spec/sample_response.rb
133
135
  - spec/spec_helper.rb