paymill 0.0.2 → 0.0.3
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/.gitignore +2 -1
- data/README.md +9 -1
- data/lib/paymill.rb +2 -1
- data/lib/paymill/client.rb +2 -2
- data/lib/paymill/credit_card.rb +5 -2
- data/lib/paymill/offer.rb +2 -2
- data/lib/paymill/operations/all.rb +20 -0
- data/lib/paymill/subscription.rb +2 -2
- data/lib/paymill/transaction.rb +2 -2
- data/lib/paymill/version.rb +1 -1
- data/spec/paymill/client_spec.rb +9 -2
- data/spec/paymill/credit_card_spec.rb +22 -1
- data/spec/paymill/offer_spec.rb +9 -2
- data/spec/paymill/subscription_spec.rb +9 -2
- data/spec/paymill/transaction_spec.rb +9 -2
- metadata +9 -8
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -22,7 +22,15 @@ Now you can e.g. create a new client:
|
|
22
22
|
|
23
23
|
Paymill::Client.create(email: "stefan.sprenger@dkd.de", description: "He is a Ruby guy.")
|
24
24
|
|
25
|
-
|
25
|
+
Or find a existing client
|
26
|
+
|
27
|
+
Paymill::Client.find("client_88a388d9dd48f86c3136")
|
28
|
+
|
29
|
+
For retrieving a collection of all clients
|
30
|
+
|
31
|
+
Paymill::Client.all()
|
32
|
+
|
33
|
+
We currently only support `create`, `find` and `all` operations.
|
26
34
|
|
27
35
|
Requirements
|
28
36
|
=====
|
data/lib/paymill.rb
CHANGED
@@ -15,6 +15,7 @@ module Paymill
|
|
15
15
|
autoload :Transaction, "paymill/transaction"
|
16
16
|
|
17
17
|
module Operations
|
18
|
+
autoload :All, "paymill/operations/all"
|
18
19
|
autoload :Create, "paymill/operations/create"
|
19
20
|
autoload :Delete, "paymill/operations/delete"
|
20
21
|
autoload :Find, "paymill/operations/find"
|
@@ -65,4 +66,4 @@ module Paymill
|
|
65
66
|
data
|
66
67
|
end
|
67
68
|
end
|
68
|
-
end
|
69
|
+
end
|
data/lib/paymill/client.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
module Paymill
|
2
2
|
class Client
|
3
|
+
include Paymill::Operations::All
|
3
4
|
include Paymill::Operations::Create
|
4
5
|
include Paymill::Operations::Delete
|
5
6
|
include Paymill::Operations::Find
|
@@ -11,7 +12,6 @@ module Paymill
|
|
11
12
|
attributes.each_pair do |key, value|
|
12
13
|
instance_variable_set("@#{key}", value)
|
13
14
|
end
|
14
|
-
@attributes = attributes
|
15
15
|
end
|
16
16
|
end
|
17
|
-
end
|
17
|
+
end
|
data/lib/paymill/credit_card.rb
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
module Paymill
|
2
2
|
class CreditCard
|
3
|
+
include Paymill::Operations::All
|
4
|
+
include Paymill::Operations::Create
|
5
|
+
include Paymill::Operations::Find
|
6
|
+
|
3
7
|
attr_accessor :id, :card_type, :country, :expire_month, :expire_year,
|
4
8
|
:card_holder, :last4, :created_at, :updated_at
|
5
9
|
|
@@ -7,7 +11,6 @@ module Paymill
|
|
7
11
|
attributes.each_pair do |key, value|
|
8
12
|
instance_variable_set("@#{key}", value)
|
9
13
|
end
|
10
|
-
@attributes = attributes
|
11
14
|
end
|
12
15
|
end
|
13
|
-
end
|
16
|
+
end
|
data/lib/paymill/offer.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
module Paymill
|
2
2
|
class Offer
|
3
|
+
include Paymill::Operations::All
|
3
4
|
include Paymill::Operations::Create
|
4
5
|
include Paymill::Operations::Delete
|
5
6
|
include Paymill::Operations::Find
|
@@ -10,7 +11,6 @@ module Paymill
|
|
10
11
|
attributes.each_pair do |key, value|
|
11
12
|
instance_variable_set("@#{key}", value)
|
12
13
|
end
|
13
|
-
@attributes = attributes
|
14
14
|
end
|
15
15
|
end
|
16
|
-
end
|
16
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Paymill
|
2
|
+
module Operations
|
3
|
+
module All
|
4
|
+
module ClassMethods
|
5
|
+
def all()
|
6
|
+
response = Paymill.request(:get, "#{self.name.split("::").last.downcase}s/", {})
|
7
|
+
results = []
|
8
|
+
response["data"].each do |obj|
|
9
|
+
results << self.new(obj)
|
10
|
+
end
|
11
|
+
results
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.included(base)
|
16
|
+
base.extend(ClassMethods)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/paymill/subscription.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
module Paymill
|
2
2
|
class Subscription
|
3
|
+
include Paymill::Operations::All
|
3
4
|
include Paymill::Operations::Create
|
4
5
|
include Paymill::Operations::Delete
|
5
6
|
include Paymill::Operations::Find
|
@@ -11,7 +12,6 @@ module Paymill
|
|
11
12
|
attributes.each_pair do |key, value|
|
12
13
|
instance_variable_set("@#{key}", value)
|
13
14
|
end
|
14
|
-
@attributes = attributes
|
15
15
|
end
|
16
16
|
end
|
17
|
-
end
|
17
|
+
end
|
data/lib/paymill/transaction.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
module Paymill
|
2
2
|
class Transaction
|
3
|
+
include Paymill::Operations::All
|
3
4
|
include Paymill::Operations::Create
|
4
5
|
include Paymill::Operations::Find
|
5
6
|
|
@@ -10,7 +11,6 @@ module Paymill
|
|
10
11
|
attributes.each_pair do |key, value|
|
11
12
|
instance_variable_set("@#{key}", value)
|
12
13
|
end
|
13
|
-
@attributes = attributes
|
14
14
|
end
|
15
15
|
end
|
16
|
-
end
|
16
|
+
end
|
data/lib/paymill/version.rb
CHANGED
data/spec/paymill/client_spec.rb
CHANGED
@@ -17,12 +17,19 @@ describe Paymill::Client do
|
|
17
17
|
end
|
18
18
|
|
19
19
|
describe ".find" do
|
20
|
-
it "makes a new GET request using the correct API endpoint" do
|
20
|
+
it "makes a new GET request using the correct API endpoint to receive a specific client" do
|
21
21
|
Paymill.should_receive(:request).with(:get, "clients/123", {}).and_return("data" => {})
|
22
22
|
Paymill::Client.find("123")
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
26
|
+
describe ".all" do
|
27
|
+
it "makes a new GET request using the correct API endpoint to receive all clients" do
|
28
|
+
Paymill.should_receive(:request).with(:get, "clients/", {}).and_return("data" => {})
|
29
|
+
Paymill::Client.all
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
26
33
|
describe ".delete" do
|
27
34
|
it "makes a new DELETE request using the correct API endpoint" do
|
28
35
|
Paymill.should_receive(:request).with(:delete, "clients/123", {}).and_return(true)
|
@@ -36,4 +43,4 @@ describe Paymill::Client do
|
|
36
43
|
Paymill::Client.create(valid_attributes)
|
37
44
|
end
|
38
45
|
end
|
39
|
-
end
|
46
|
+
end
|
@@ -26,4 +26,25 @@ describe Paymill::CreditCard do
|
|
26
26
|
credit_card.last4.should eql("1111")
|
27
27
|
end
|
28
28
|
end
|
29
|
-
|
29
|
+
|
30
|
+
describe ".find" do
|
31
|
+
it "makes a new GET request using the correct API endpoint to receive a specific creditcard" do
|
32
|
+
Paymill.should_receive(:request).with(:get, "creditcards/123", {}).and_return("data" => {})
|
33
|
+
Paymill::CreditCard.find("123")
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
describe ".all" do
|
38
|
+
it "makes a new GET request using the correct API endpoint to receive all creditcards" do
|
39
|
+
Paymill.should_receive(:request).with(:get, "creditcards/", {}).and_return("data" => {})
|
40
|
+
Paymill::CreditCard.all
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
describe ".create" do
|
45
|
+
it "makes a new POST request using the correct API endpoint" do
|
46
|
+
Paymill.should_receive(:request).with(:post, "creditcards", valid_attributes).and_return("data" => {})
|
47
|
+
Paymill::CreditCard.create(valid_attributes)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
data/spec/paymill/offer_spec.rb
CHANGED
@@ -24,12 +24,19 @@ describe Paymill::Offer do
|
|
24
24
|
end
|
25
25
|
|
26
26
|
describe ".find" do
|
27
|
-
it "makes a new GET request using the correct API endpoint" do
|
27
|
+
it "makes a new GET request using the correct API endpoint to receive a specific offer" do
|
28
28
|
Paymill.should_receive(:request).with(:get, "offers/123", {}).and_return("data" => {})
|
29
29
|
Paymill::Offer.find("123")
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
33
|
+
describe ".all" do
|
34
|
+
it "makes a new GET request using the correct API endpoint to receive all offers" do
|
35
|
+
Paymill.should_receive(:request).with(:get, "offers/", {}).and_return("data" => {})
|
36
|
+
Paymill::Offer.all
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
33
40
|
describe ".delete" do
|
34
41
|
it "makes a new DELETE request using the correct API endpoint" do
|
35
42
|
Paymill.should_receive(:request).with(:delete, "offers/123", {}).and_return(true)
|
@@ -43,4 +50,4 @@ describe Paymill::Offer do
|
|
43
50
|
Paymill::Offer.create(valid_attributes)
|
44
51
|
end
|
45
52
|
end
|
46
|
-
end
|
53
|
+
end
|
@@ -32,12 +32,19 @@ describe Paymill::Subscription do
|
|
32
32
|
end
|
33
33
|
|
34
34
|
describe ".find" do
|
35
|
-
it "makes a new GET request using the correct API endpoint" do
|
35
|
+
it "makes a new GET request using the correct API endpoint to receive a specific subscription" do
|
36
36
|
Paymill.should_receive(:request).with(:get, "subscriptions/123", {}).and_return("data" => {})
|
37
37
|
Paymill::Subscription.find("123")
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
41
|
+
describe ".all" do
|
42
|
+
it "makes a new GET request using the correct API endpoint to receive all subscriptions" do
|
43
|
+
Paymill.should_receive(:request).with(:get, "subscriptions/", {}).and_return("data" => {})
|
44
|
+
Paymill::Subscription.all
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
41
48
|
describe ".delete" do
|
42
49
|
it "makes a new DELETE request using the correct API endpoint" do
|
43
50
|
Paymill.should_receive(:request).with(:delete, "subscriptions/123", {}).and_return(true)
|
@@ -51,4 +58,4 @@ describe Paymill::Subscription do
|
|
51
58
|
Paymill::Subscription.create(valid_attributes)
|
52
59
|
end
|
53
60
|
end
|
54
|
-
end
|
61
|
+
end
|
@@ -32,16 +32,23 @@ describe Paymill::Transaction do
|
|
32
32
|
end
|
33
33
|
|
34
34
|
describe ".find" do
|
35
|
-
it "makes a new GET request using the correct API endpoint" do
|
35
|
+
it "makes a new GET request using the correct API endpoint to receive a specific transaction" do
|
36
36
|
Paymill.should_receive(:request).with(:get, "transactions/123", {}).and_return("data" => {})
|
37
37
|
Paymill::Transaction.find("123")
|
38
38
|
end
|
39
39
|
end
|
40
40
|
|
41
|
+
describe ".all" do
|
42
|
+
it "makes a new GET request using the correct API endpoint to receive all transactions" do
|
43
|
+
Paymill.should_receive(:request).with(:get, "transactions/", {}).and_return("data" => {})
|
44
|
+
Paymill::Transaction.all
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
41
48
|
describe ".create" do
|
42
49
|
it "makes a new POST request using the correct API endpoint" do
|
43
50
|
Paymill.should_receive(:request).with(:post, "transactions", valid_attributes).and_return("data" => {})
|
44
51
|
Paymill::Transaction.create(valid_attributes)
|
45
52
|
end
|
46
53
|
end
|
47
|
-
end
|
54
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paymill
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-10-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
16
|
-
requirement: &
|
16
|
+
requirement: &2160826620 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2160826620
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rspec
|
27
|
-
requirement: &
|
27
|
+
requirement: &2160795040 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2160795040
|
36
36
|
description: API wrapper for Paymill.
|
37
37
|
email:
|
38
38
|
- stefan.sprenger@dkd.de
|
@@ -51,6 +51,7 @@ files:
|
|
51
51
|
- lib/paymill/client.rb
|
52
52
|
- lib/paymill/credit_card.rb
|
53
53
|
- lib/paymill/offer.rb
|
54
|
+
- lib/paymill/operations/all.rb
|
54
55
|
- lib/paymill/operations/create.rb
|
55
56
|
- lib/paymill/operations/delete.rb
|
56
57
|
- lib/paymill/operations/find.rb
|
@@ -79,7 +80,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
79
80
|
version: '0'
|
80
81
|
segments:
|
81
82
|
- 0
|
82
|
-
hash: -
|
83
|
+
hash: -3243121354173252569
|
83
84
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
84
85
|
none: false
|
85
86
|
requirements:
|
@@ -88,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
88
89
|
version: '0'
|
89
90
|
segments:
|
90
91
|
- 0
|
91
|
-
hash: -
|
92
|
+
hash: -3243121354173252569
|
92
93
|
requirements: []
|
93
94
|
rubyforge_project:
|
94
95
|
rubygems_version: 1.8.10
|