poundpay 0.2.0 → 0.2.1
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 +7 -3
- data/lib/poundpay/rails.rb +7 -3
- data/lib/poundpay/version.rb +1 -1
- data/lib/poundpay.rb +3 -7
- data/spec/poundpay/rails_spec.rb +23 -20
- metadata +2 -2
data/README.rdoc
CHANGED
@@ -7,13 +7,13 @@ Poundpay is a payments platform for marketplaces
|
|
7
7
|
|
8
8
|
1. Add the following to your Gemfile
|
9
9
|
|
10
|
-
gem 'poundpay', '~> 0.2.
|
10
|
+
gem 'poundpay', '~> 0.2.1'
|
11
11
|
|
12
12
|
2. At the command prompt, install the gem with bundler
|
13
13
|
|
14
14
|
bundle install
|
15
15
|
|
16
|
-
3.
|
16
|
+
3. Create the file config/poundpay.yml and add your configurations
|
17
17
|
|
18
18
|
development:
|
19
19
|
developer_sid: DV0383d447360511e0bbac00264a09ff3c
|
@@ -25,7 +25,11 @@ Poundpay is a payments platform for marketplaces
|
|
25
25
|
developer_sid: DV8dd93f0f3c6411e0863f00264a09ff3c
|
26
26
|
auth_token: d8c4ea1bafd3fcac8c1062a72c22bcdb09321deb1041df257165cd6449def0de
|
27
27
|
|
28
|
-
4.
|
28
|
+
4. Create the file initializers/poundpay.rb and add the following
|
29
|
+
|
30
|
+
Poundpay.configure_from_yaml "config/poundpay.yml"
|
31
|
+
|
32
|
+
5. Protect your callback controller
|
29
33
|
|
30
34
|
before_filter :verify_poundpay_callback
|
31
35
|
|
data/lib/poundpay/rails.rb
CHANGED
@@ -1,6 +1,10 @@
|
|
1
|
-
if defined? Rails
|
1
|
+
if defined? Rails
|
2
2
|
module Poundpay
|
3
|
-
|
4
|
-
|
3
|
+
def self.configure_from_yaml(path)
|
4
|
+
pathname = Pathname.new Rails.root.join(path)
|
5
|
+
raise ArgumentError.new "File does not exist: #{pathname.to_s}" unless pathname.exist?
|
6
|
+
config = YAML::load_file(pathname)[Rails.env]
|
7
|
+
Poundpay.configure_from_hash(config)
|
8
|
+
end
|
5
9
|
end
|
6
10
|
end
|
data/lib/poundpay/version.rb
CHANGED
data/lib/poundpay.rb
CHANGED
@@ -13,13 +13,9 @@ module Poundpay
|
|
13
13
|
attr_writer :api_version
|
14
14
|
|
15
15
|
def configure(developer_sid, auth_token)
|
16
|
-
if
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
if not auth_token
|
21
|
-
raise ArgumentError.new "auth_token is required"
|
22
|
-
end
|
16
|
+
warn "warning: Poundpay is already configured" if configured?
|
17
|
+
raise ArgumentError.new "developer_sid is required" unless developer_sid
|
18
|
+
raise ArgumentError.new "auth_token is required" unless auth_token
|
23
19
|
|
24
20
|
unless developer_sid.start_with? "DV"
|
25
21
|
raise ArgumentError.new "developer_sid should start with 'DV'. Make sure " \
|
data/spec/poundpay/rails_spec.rb
CHANGED
@@ -1,44 +1,47 @@
|
|
1
1
|
require 'poundpay'
|
2
2
|
|
3
3
|
describe Poundpay do
|
4
|
+
module Rails
|
5
|
+
end
|
6
|
+
|
4
7
|
after (:each) do
|
5
8
|
Poundpay.clear_config!
|
6
9
|
end
|
7
10
|
|
8
11
|
it "should automatically load config if exists" do
|
12
|
+
load File.expand_path("../../../lib/poundpay/rails.rb", __FILE__)
|
13
|
+
|
9
14
|
module Rails
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
"development"
|
17
|
-
end
|
15
|
+
def self.root
|
16
|
+
Pathname(File.expand_path("../../fixtures", __FILE__))
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.env
|
20
|
+
"development"
|
18
21
|
end
|
19
22
|
end
|
20
|
-
|
23
|
+
|
21
24
|
Poundpay.configured?.should be_false
|
22
|
-
|
25
|
+
Poundpay.configure_from_yaml "config/poundpay.yml"
|
23
26
|
Poundpay.configured?.should be_true
|
24
27
|
Poundpay::Resource.password.should == "development_auth_token"
|
25
28
|
end
|
26
29
|
|
27
30
|
it "should not do anything if config does not exist" do
|
31
|
+
load File.expand_path("../../../lib/poundpay/rails.rb", __FILE__)
|
32
|
+
|
28
33
|
module Rails
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
"development"
|
36
|
-
end
|
34
|
+
def self.root
|
35
|
+
Pathname(File.expand_path("../../fixtures", __FILE__))
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.env
|
39
|
+
"development"
|
37
40
|
end
|
38
41
|
end
|
39
|
-
|
42
|
+
|
40
43
|
Poundpay.configured?.should be_false
|
41
|
-
|
44
|
+
expect { Poundpay.configure_from_yaml "wrong_path" }.to raise_error(ArgumentError, /wrong_path/)
|
42
45
|
Poundpay.configured?.should be_false
|
43
46
|
Poundpay::Resource.password.should == nil
|
44
47
|
end
|