poundpay 0.2.7 → 0.2.8

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/README.rdoc CHANGED
@@ -18,12 +18,14 @@ Poundpay is a payments platform for marketplaces
18
18
  development:
19
19
  developer_sid: DV0383d447360511e0bbac00264a09ff3c
20
20
  auth_token: c31155b9f944d7aed204bdb2a253fef13b4fdcc6ae1540200449cc4526b2381a
21
+ callback_url: http://staging.awesomemarketplace.com/payments/callback
21
22
  www_url: https://www-sandbox.poundpay.com
22
23
  api_url: https://api-sandbox.poundpay.com
23
24
 
24
25
  production:
25
26
  developer_sid: DV8dd93f0f3c6411e0863f00264a09ff3c
26
27
  auth_token: d8c4ea1bafd3fcac8c1062a72c22bcdb09321deb1041df257165cd6449def0de
28
+ callback_url: http://www.awesomemarketplace.com/payments/callback
27
29
 
28
30
  4. Create the file config/initializers/poundpay.rb and add the following
29
31
 
@@ -75,11 +77,4 @@ Poundpay is a payments platform for marketplaces
75
77
  payment = Poundpay::Payment.find(payment_sid)
76
78
  payment.escrow # AUTHORIZED -> ESCROWED. Credit card is charged
77
79
  payment.release # ESCROWED -> RELEASED. Recipient receives money
78
- payment.cancel # ESCROWED -> CANCELED. Payer receives refund
79
-
80
-
81
- == Setting callback url
82
-
83
- me = Poundpay::Developer.me
84
- me.callback_url = "http://awesomemarketplace.com/poundpay/callback"
85
- me.save!
80
+ payment.cancel # ESCROWED -> CANCELED. Payer receives refund
@@ -1,3 +1,3 @@
1
1
  module Poundpay
2
- VERSION = "0.2.7"
2
+ VERSION = "0.2.8"
3
3
  end
data/lib/poundpay.rb CHANGED
@@ -11,6 +11,7 @@ module Poundpay
11
11
 
12
12
  class << self
13
13
  attr_writer :api_version
14
+ attr_accessor :callback_url
14
15
 
15
16
  def configure(developer_sid, auth_token)
16
17
  warn "warning: Poundpay is already configured" if configured?
@@ -30,6 +31,13 @@ module Poundpay
30
31
  Resource.user = developer_sid
31
32
  Resource.password = auth_token
32
33
  @configured = true
34
+
35
+ # Set callback_url if defined in configuration
36
+ if callback_url
37
+ @me = Developer.me
38
+ @me.callback_url = callback_url
39
+ @me.save!
40
+ end
33
41
  end
34
42
 
35
43
  def configure_from_hash(config)
@@ -37,6 +45,7 @@ module Poundpay
37
45
  c.www_url = config["www_url"] || WWW_URL
38
46
  c.api_url = config["api_url"] || API_URL
39
47
  c.api_version = config["api_version"] || API_VERSION
48
+ c.callback_url = config["callback_url"] || nil
40
49
  end
41
50
  end
42
51
 
@@ -44,6 +53,7 @@ module Poundpay
44
53
  @www_url = nil
45
54
  @api_url = nil
46
55
  @api_version = nil
56
+ @callback_url = nil
47
57
  Resource.site = nil
48
58
  Resource.user = nil
49
59
  Resource.password = nil
@@ -56,6 +56,17 @@ describe Poundpay do
56
56
  Poundpay.api_url.should == "https://api-sandbox.poundpay.com"
57
57
  Poundpay.api_version.should == "gold"
58
58
  end
59
+
60
+ it "should configure callback_url" do
61
+ callback_url = "http://awesomemarketplace.com/payments/callback"
62
+ @developer = Poundpay::Developer.new
63
+ @developer.should_receive(:save!)
64
+ Poundpay::Developer.should_receive(:me).and_return(@developer)
65
+ Poundpay.configure("DV0383d447360511e0bbac00264a09ff3c", "c31155b9f944d7aed204bdb2a253fef13b4fdcc6ae1540200449cc4526b2381a") do |c|
66
+ c.callback_url = callback_url
67
+ end
68
+ @developer.callback_url.should == callback_url
69
+ end
59
70
  end
60
71
 
61
72
  describe ".configure_from_hash" do
@@ -104,6 +115,16 @@ describe Poundpay do
104
115
  it "should not accept an invalid configuration" do
105
116
  expect { Poundpay.configure_from_hash @config["invalid"] }.to raise_error(ArgumentError)
106
117
  end
118
+
119
+ it "should configure callback_url" do
120
+ config = @config["production"]
121
+ config["callback_url"] = "http://awesomemarketplace.com/payments/callback"
122
+ @developer = Poundpay::Developer.new
123
+ @developer.should_receive(:save!)
124
+ Poundpay::Developer.should_receive(:me).and_return(@developer)
125
+ Poundpay.configure_from_hash config
126
+ @developer.callback_url.should == config["callback_url"]
127
+ end
107
128
  end
108
129
 
109
130
  describe ".clear_config!" do
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 7
9
- version: 0.2.7
8
+ - 8
9
+ version: 0.2.8
10
10
  platform: ruby
11
11
  authors:
12
12
  - Matin Tamizi