leetchi-wallet-services 0.0.1 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +9 -7
- data/Gemfile.lock +46 -11
- data/README.md +33 -2
- data/lib/leetchi/ressource.rb +4 -4
- data/lib/leetchi-wallet-services.rb +23 -0
- data/spec/fixtures/leetchi_cassettes/beneficiary.yml +13574 -0
- data/spec/fixtures/leetchi_cassettes/card.yml +5461 -0
- data/spec/fixtures/leetchi_cassettes/contribution.yml +27562 -0
- data/spec/fixtures/leetchi_cassettes/expense.yml +369 -0
- data/spec/fixtures/leetchi_cassettes/operation.yml +369 -0
- data/spec/fixtures/leetchi_cassettes/recurrent_contribution.yml +1496 -0
- data/spec/fixtures/leetchi_cassettes/strong_authentication.yml +369 -0
- data/spec/fixtures/leetchi_cassettes/transfer.yml +25708 -0
- data/spec/fixtures/leetchi_cassettes/user.yml +12580 -0
- data/spec/fixtures/leetchi_cassettes/wallet.yml +7380 -0
- data/spec/fixtures/leetchi_cassettes/withdrawal.yml +8721 -0
- data/spec/lib/leetchi/beneficiary_spec.rb +3 -2
- data/spec/lib/leetchi/card_spec.rb +12 -4
- data/spec/lib/leetchi/contribution_spec.rb +10 -3
- data/spec/lib/leetchi/recurrent_contribution_spec.rb +41 -41
- data/spec/lib/leetchi/transfer_spec.rb +26 -4
- data/spec/lib/leetchi/user_spec.rb +3 -2
- data/spec/lib/leetchi/withdrawal_spec.rb +18 -3
- data/spec/spec_helper.rb +17 -0
- data/spec/support-files/example.pem +49 -0
- metadata +160 -41
@@ -111,13 +111,14 @@ describe Leetchi::Beneficiary do
|
|
111
111
|
describe "StrongAuthentication" do
|
112
112
|
it "creates the beneficiary strong authentication request" do
|
113
113
|
new_strong_authentication.wont_be_nil
|
114
|
+
new_strong_authentication['BeneficiaryID'].must_equal new_beneficiary['ID']
|
114
115
|
end
|
115
116
|
it "gets the beneficiary strong authentication request" do
|
116
|
-
strong_authentication = Leetchi::Beneficiary.get_strong_authentication(new_strong_authentication['
|
117
|
+
strong_authentication = Leetchi::Beneficiary.get_strong_authentication(new_strong_authentication['BeneficiaryID'])
|
117
118
|
strong_authentication['ID'].must_equal new_strong_authentication['ID']
|
118
119
|
end
|
119
120
|
it "updated the beneficiary strong authentication request" do
|
120
|
-
strong_authentication = Leetchi::Beneficiary.update_strong_authentication(
|
121
|
+
strong_authentication = Leetchi::Beneficiary.update_strong_authentication(new_strong_authentication['BeneficiaryID'], {
|
121
122
|
'Tag' => 'test_beneficiary_strong_authentication2',
|
122
123
|
'IsDocumentsTransmitted' => true
|
123
124
|
})
|
@@ -2,6 +2,8 @@ require_relative '../../spec_helper'
|
|
2
2
|
|
3
3
|
describe Leetchi::Card do
|
4
4
|
|
5
|
+
include Capybara::DSL
|
6
|
+
|
5
7
|
let(:new_user) {
|
6
8
|
Leetchi::User.create({
|
7
9
|
'Tag' => 'test',
|
@@ -12,13 +14,19 @@ describe Leetchi::Card do
|
|
12
14
|
})
|
13
15
|
}
|
14
16
|
|
15
|
-
let(:new_card)
|
16
|
-
Leetchi::Card.create({
|
17
|
+
let(:new_card) do
|
18
|
+
card = Leetchi::Card.create({
|
17
19
|
'Tag' => 'test-card',
|
18
20
|
'OwnerID' => new_user['ID'],
|
19
21
|
'ReturnURL' => 'http://leetchi.com'
|
20
22
|
})
|
21
|
-
|
23
|
+
visit(card['RedirectURL'])
|
24
|
+
fill_in('number', :with => '4970100000000154')
|
25
|
+
fill_in('cvv', :with => '123')
|
26
|
+
click_button('paybutton')
|
27
|
+
page.driver.render('/Users/glorieux/Desktop/file.png')
|
28
|
+
card
|
29
|
+
end
|
22
30
|
|
23
31
|
before do
|
24
32
|
VCR.insert_cassette 'card', :record => :new_episodes
|
@@ -43,7 +51,7 @@ describe Leetchi::Card do
|
|
43
51
|
describe "DELETE" do
|
44
52
|
it "delete the card" do
|
45
53
|
deleted_card = Leetchi::Card.delete(new_card["ID"])
|
46
|
-
deleted_card.must_equal
|
54
|
+
deleted_card.must_equal "\"OK\""
|
47
55
|
end
|
48
56
|
end
|
49
57
|
|
@@ -2,6 +2,8 @@ require_relative '../../spec_helper'
|
|
2
2
|
|
3
3
|
describe Leetchi::Contribution do
|
4
4
|
|
5
|
+
include Capybara::DSL
|
6
|
+
|
5
7
|
before do
|
6
8
|
VCR.insert_cassette 'contribution', :record => :new_episodes
|
7
9
|
end
|
@@ -19,8 +21,8 @@ describe Leetchi::Contribution do
|
|
19
21
|
})
|
20
22
|
}
|
21
23
|
|
22
|
-
let(:new_contribution)
|
23
|
-
Leetchi::Contribution.create({
|
24
|
+
let(:new_contribution) do
|
25
|
+
contribution = Leetchi::Contribution.create({
|
24
26
|
'Tag' => 'test_contribution',
|
25
27
|
'UserID' => new_user['ID'],
|
26
28
|
'WalletID' => 0,
|
@@ -28,7 +30,12 @@ describe Leetchi::Contribution do
|
|
28
30
|
'ReturnURL' => 'https://leetchi.com',
|
29
31
|
'BankAccountBIC' => 'AGRIFRPP879'
|
30
32
|
})
|
31
|
-
|
33
|
+
visit(contribution['PaymentURL'])
|
34
|
+
fill_in('number', :with => '4970100000000154')
|
35
|
+
fill_in('cvv', :with => '123')
|
36
|
+
click_button('paybutton')
|
37
|
+
contribution
|
38
|
+
end
|
32
39
|
|
33
40
|
let(:new_contribution_refund) {
|
34
41
|
Leetchi::Contribution.refund({
|
@@ -1,48 +1,48 @@
|
|
1
|
-
require_relative '../../spec_helper'
|
1
|
+
# require_relative '../../spec_helper'
|
2
2
|
|
3
|
-
describe Leetchi::RecurrentContribution do
|
3
|
+
# describe Leetchi::RecurrentContribution do
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
5
|
+
# let(:new_user) {
|
6
|
+
# Leetchi::User.create({
|
7
|
+
# 'Tag' => 'test',
|
8
|
+
# 'Email' => 'my@email.com',
|
9
|
+
# 'FirstName' => 'John',
|
10
|
+
# 'LastName' => 'Doe',
|
11
|
+
# 'CanRegisterMeanOfPayment' => true
|
12
|
+
# })
|
13
|
+
# }
|
14
14
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
15
|
+
# let(:new_recurrent_contribution) {
|
16
|
+
# Leetchi::RecurrentContribution.create({
|
17
|
+
# 'Tag' => 'test-recurrent-contribution',
|
18
|
+
# 'UserID' => new_user['ID'],
|
19
|
+
# 'WalletID' => 0,
|
20
|
+
# 'Amount' => 4200,
|
21
|
+
# 'StartDate' => '1388534400',
|
22
|
+
# 'FrequencyCode' => 'TwiceMonthly',
|
23
|
+
# 'NumberOfExecutions' => 10,
|
24
|
+
# 'ReturnURL' => 'http://leetchi.com'
|
25
|
+
# })
|
26
|
+
# }
|
27
27
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
28
|
+
# before do
|
29
|
+
# VCR.insert_cassette 'recurrent_contribution', :record => :new_episodes
|
30
|
+
# end
|
31
|
+
# after do
|
32
|
+
# VCR.eject_cassette
|
33
|
+
# end
|
34
34
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
35
|
+
# describe "CREATE" do
|
36
|
+
# it "create a new recurrent contribution and return a PaymentURL" do
|
37
|
+
# new_recurrent_contribution['PaymentURL'].wont_be_empty
|
38
|
+
# end
|
39
|
+
# end
|
40
40
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
41
|
+
# describe "GET" do
|
42
|
+
# it "get a recurrent contribution" do
|
43
|
+
# recurrent_contribution = Leetchi::RecurrentContribution.get(new_recurrent_contribution["ID"])
|
44
|
+
# recurrent_contribution["ID"].must_equal new_recurrent_contribution["ID"]
|
45
|
+
# end
|
46
|
+
# end
|
47
47
|
|
48
|
-
end
|
48
|
+
# end
|
@@ -1,6 +1,9 @@
|
|
1
1
|
require_relative '../../spec_helper'
|
2
2
|
|
3
3
|
describe Leetchi::Transfer do
|
4
|
+
|
5
|
+
include Capybara::DSL
|
6
|
+
|
4
7
|
before do
|
5
8
|
VCR.insert_cassette 'transfer', :record => :new_episodes
|
6
9
|
end
|
@@ -9,23 +12,42 @@ describe Leetchi::Transfer do
|
|
9
12
|
end
|
10
13
|
|
11
14
|
let(:new_payer) {
|
12
|
-
Leetchi::User.create({
|
15
|
+
user = Leetchi::User.create({
|
13
16
|
'Tag' => 'test',
|
14
17
|
'Email' => 'my@email.com',
|
15
18
|
'FirstName' => 'John',
|
16
19
|
'LastName' => 'Doe',
|
17
20
|
'CanRegisterMeanOfPayment' => true
|
18
21
|
})
|
22
|
+
contribution = Leetchi::Contribution.create({
|
23
|
+
'Tag' => 'test_contribution',
|
24
|
+
'UserID' => user['ID'],
|
25
|
+
'WalletID' => 0,
|
26
|
+
'Amount' => 10000,
|
27
|
+
'ReturnURL' => 'https://leetchi.com',
|
28
|
+
'BankAccountBIC' => 'AGRIFRPP879'
|
29
|
+
})
|
30
|
+
visit(contribution['PaymentURL'])
|
31
|
+
fill_in('number', :with => '4970100000000154')
|
32
|
+
fill_in('cvv', :with => '123')
|
33
|
+
click_button('paybutton')
|
34
|
+
user
|
19
35
|
}
|
20
36
|
|
21
37
|
let(:new_beneficiary) {
|
22
|
-
Leetchi::User.create({
|
38
|
+
user = Leetchi::User.create({
|
23
39
|
'Tag' => 'test',
|
24
40
|
'Email' => 'my@email.com',
|
25
41
|
'FirstName' => 'John',
|
26
42
|
'LastName' => 'Doe',
|
27
43
|
'CanRegisterMeanOfPayment' => true
|
28
44
|
})
|
45
|
+
Leetchi::Wallet.create({
|
46
|
+
'Name' => 'test',
|
47
|
+
'Owners' => [ user['ID'] ],
|
48
|
+
'RaisingGoalAmount' => 12000
|
49
|
+
})
|
50
|
+
user
|
29
51
|
}
|
30
52
|
|
31
53
|
let(:new_transfert) {
|
@@ -35,14 +57,14 @@ describe Leetchi::Transfer do
|
|
35
57
|
'BeneficiaryID' => new_beneficiary['ID'],
|
36
58
|
'Amount' => 1000,
|
37
59
|
'PayerWalletID' => 0,
|
38
|
-
'BeneficiaryWalletID' => 0
|
60
|
+
'BeneficiaryWalletID' => Leetchi::User.get_wallets(new_beneficiary['ID'])[0]['ID']
|
39
61
|
})
|
40
62
|
}
|
41
63
|
|
42
64
|
let(:new_transfer_refund) {
|
43
65
|
Leetchi::Transfer.refund({
|
44
66
|
'TransferID' => new_transfert['ID'],
|
45
|
-
'UserID' =>
|
67
|
+
'UserID' => new_transfert['BeneficiaryID']
|
46
68
|
})
|
47
69
|
}
|
48
70
|
|
@@ -107,15 +107,16 @@ describe Leetchi::User do
|
|
107
107
|
new_strong_authentication['ID'].wont_be_nil
|
108
108
|
end
|
109
109
|
it "gets the user strong authentication request" do
|
110
|
-
strong_authentication = Leetchi::User.get_strong_authentication(
|
110
|
+
strong_authentication = Leetchi::User.get_strong_authentication(new_strong_authentication['UserID'])
|
111
111
|
strong_authentication['ID'].must_equal new_strong_authentication['ID']
|
112
112
|
end
|
113
113
|
it "updates the user strong authentication request" do
|
114
|
-
strong_authentication = Leetchi::User.update_strong_authentication(
|
114
|
+
strong_authentication = Leetchi::User.update_strong_authentication(new_strong_authentication['UserID'], {
|
115
115
|
'Tag' => 'test_strong_authentication2',
|
116
116
|
'IsDocumentsTransmitted' => true
|
117
117
|
})
|
118
118
|
strong_authentication['ID'].must_equal new_strong_authentication['ID']
|
119
|
+
strong_authentication['UserID'].must_equal new_strong_authentication['UserID']
|
119
120
|
strong_authentication['Tag'].must_equal 'test_strong_authentication2'
|
120
121
|
strong_authentication['IsDocumentsTransmitted'].must_equal true
|
121
122
|
end
|
@@ -2,6 +2,8 @@ require_relative '../../spec_helper'
|
|
2
2
|
|
3
3
|
describe Leetchi::Withdrawal do
|
4
4
|
|
5
|
+
include Capybara::DSL
|
6
|
+
|
5
7
|
before do
|
6
8
|
VCR.insert_cassette 'withdrawal', :record => :new_episodes
|
7
9
|
end
|
@@ -10,13 +12,26 @@ describe Leetchi::Withdrawal do
|
|
10
12
|
end
|
11
13
|
|
12
14
|
let(:new_user) {
|
13
|
-
Leetchi::User.create({
|
15
|
+
user = Leetchi::User.create({
|
14
16
|
'Tag' => 'test',
|
15
17
|
'Email' => 'my@email.com',
|
16
18
|
'FirstName' => 'John',
|
17
19
|
'LastName' => 'Doe',
|
18
20
|
'CanRegisterMeanOfPayment' => true
|
19
21
|
})
|
22
|
+
contribution = Leetchi::Contribution.create({
|
23
|
+
'Tag' => 'test_contribution',
|
24
|
+
'UserID' => user['ID'],
|
25
|
+
'WalletID' => 0,
|
26
|
+
'Amount' => 10000,
|
27
|
+
'ReturnURL' => 'https://leetchi.com',
|
28
|
+
'BankAccountBIC' => 'AGRIFRPP879'
|
29
|
+
})
|
30
|
+
visit(contribution['PaymentURL'])
|
31
|
+
fill_in('number', :with => '4970100000000154')
|
32
|
+
fill_in('cvv', :with => '123')
|
33
|
+
click_button('paybutton')
|
34
|
+
user
|
20
35
|
}
|
21
36
|
|
22
37
|
let(:new_beneficiary) {
|
@@ -51,7 +66,7 @@ describe Leetchi::Withdrawal do
|
|
51
66
|
'Tag' => 'test_withdrawal',
|
52
67
|
'UserID' => new_user['ID'],
|
53
68
|
'WalletID' => 0,
|
54
|
-
'Amount' =>
|
69
|
+
'Amount' => -123,
|
55
70
|
'BeneficiaryID' => new_beneficiary['ID']
|
56
71
|
})
|
57
72
|
fail_withdrawal['ErrorCode'].must_equal 2001
|
@@ -74,7 +89,7 @@ describe Leetchi::Withdrawal do
|
|
74
89
|
'WalletID' => 0,
|
75
90
|
'Amount' => 2500,
|
76
91
|
'BeneficiaryID' => new_beneficiary['ID'],
|
77
|
-
'ClientFeeAmount' => 3000
|
92
|
+
'ClientFeeAmount' => -3000
|
78
93
|
})
|
79
94
|
fail_withdrawal['ErrorCode'].must_equal 2003
|
80
95
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -4,6 +4,14 @@ require 'minitest/autorun'
|
|
4
4
|
require 'webmock/minitest'
|
5
5
|
require 'vcr'
|
6
6
|
require 'turn'
|
7
|
+
require 'capybara'
|
8
|
+
require 'capybara/poltergeist'
|
9
|
+
|
10
|
+
Capybara.register_driver :poltergeist do |app|
|
11
|
+
Capybara::Poltergeist::Driver.new(app, {:timeout => 60})
|
12
|
+
end
|
13
|
+
Capybara.javascript_driver = :poltergeist
|
14
|
+
Capybara.default_driver = :poltergeist
|
7
15
|
|
8
16
|
Turn.config do |c|
|
9
17
|
# :outline - turn's original case/test outline mode [default]
|
@@ -16,4 +24,13 @@ end
|
|
16
24
|
VCR.configure do |c|
|
17
25
|
c.cassette_library_dir = 'spec/fixtures/leetchi_cassettes'
|
18
26
|
c.hook_into :webmock
|
27
|
+
c.allow_http_connections_when_no_cassette = true
|
19
28
|
end
|
29
|
+
|
30
|
+
Leetchi.configure do |c|
|
31
|
+
c.preproduction = true
|
32
|
+
c.partner_id = 'example'
|
33
|
+
c.key_path = './spec/support-files/example.pem'
|
34
|
+
c.key_password = ''
|
35
|
+
end
|
36
|
+
|
@@ -0,0 +1,49 @@
|
|
1
|
+
Bag Attributes
|
2
|
+
localKeyID: 01 00 00 00
|
3
|
+
friendlyName: CLR{A0664CB1-ACAF-4742-B1F2-AC2B846E1FF2}
|
4
|
+
Microsoft CSP Name: Microsoft Enhanced Cryptographic Provider v1.0
|
5
|
+
Key Attributes
|
6
|
+
X509v3 Key Usage: 10
|
7
|
+
-----BEGIN RSA PRIVATE KEY-----
|
8
|
+
MIIEowIBAAKCAQEAsytrYepzLO3rxkQFHgca2SduZPe7l8X3ZEEDOzX1wsAtblRA
|
9
|
+
IHSXhOJuKHXEh2qbEcSKBOsC9rCi0LIXXp9X1nBrxRtUnEsRZBNC8F+ruyIdVled
|
10
|
+
ZDuFmwA02PRVagR/kJAFNdbmviYVPUrs9JIM6CLKKSSqDQLmyNnTZadX55maBF8G
|
11
|
+
c6kY228cpglQigVQAchU84/EYe2A0D3BnuNQLSZDRAr1Ly3E9V7GXKqSBjWyEzDx
|
12
|
+
+tuHTrbd52s5XIdct8LKotubeOanBWbgSH7H+uvm9rkjeW0UqIek+N7t1cqS8qji
|
13
|
+
25DHj85sx7t1OsFMX0d+oQEgFQatqtxVF2MNiQIDAQABAoIBABlCzekIPSTghpV1
|
14
|
+
kaMiLU7gmFfz9ab4amDgKax3dyb2IXGkv0XUKmi54/4gXI0bIrHmm+8Fk21kihAS
|
15
|
+
i+jzXlcFkqw/pjZC/zi03oM1eejwbmJ2B+LR4YxxAwJzsHc6GyIurA1jNzUn+Wai
|
16
|
+
4bW5wcgY35fda3xaJF+9FmkGpwYoDWfK14T+6O8TzK2GSxmo7eeuJeb3DEOJ3b1K
|
17
|
+
kXH/fniA8amOBQaql+jyaVQCEHU3elGDcjoZRI6ASEPE9Ac9uHmvEmQpIRGn6wMa
|
18
|
+
HSz45QYdm4vZEsyUdOpZcLQ7SC++dgkOAGuRlohZ7mHGtgs5yqp2hCFyoeSFFFMH
|
19
|
+
fpgo+AECgYEA4zbghIfUcllw/Ry6dam2OCbFGz0IKF3It71VgQqoQd0L4xSPj6ZJ
|
20
|
+
Ebahgf0MSYs3SCUx2mG0irrRlk67eV9bcDbdRwTkkBL8rmEfu3Iwe/hPLnqdq8pM
|
21
|
+
yCAtt5T8s/Bop/M1LLiRADrUqwWAK8JAxk/60cKsCObBpo8ePdPGj2kCgYEAyd5V
|
22
|
+
FDYgESy/9WMaTsw/z83SwI2cIgouDyMULEhm7bssfZhUNGveT9ma2VzdVAahx2+4
|
23
|
+
gWQVEhVshG/CX63GMlaTK8GNZYfMXPaWfDDKXOH1HGgIAA+P93Q6JcCkfIb/ym3w
|
24
|
+
5mltNotECwU/uZHGLbonsxNW/iiJDKV//Duk6SECgYAM3o7Y8tiVoXtE2tu0zmgD
|
25
|
+
xi5j3JEZuDYmMhMlu/TLxjlmI0P+XuzElBORyUNo5vm6nGC2fdI8CVjVqp/zv/Lt
|
26
|
+
6C2gWCaaAnlNZzLk6xLT8ryJZWiI0myG6UutmkK17mf/G0dnwQx1dt+U0DryP45r
|
27
|
+
rRwHxX75Ahj11iVgWx5kAQKBgFTUTURVClytRW1E3AVI53fXsjygRYA4buqFfzCs
|
28
|
+
rDQyd5u/q4Lr4VwEwYGd+JQaxVkdpZcaC5Cx2Aw/OpsiVytIHkhA6b5EtqhKJyrB
|
29
|
+
BgjKG0p4nQQJhiIigVzj+zspL8xNLvJkUzSciVdoOUMt8u28UHp8Ig5j0lOyKHpC
|
30
|
+
RiaBAoGBAKLaIPzksFRds3JJoOB+z6DnW+UDZ4JTZ+flNnbF8SAhyfhcWu7P4Bcy
|
31
|
+
MxB0im7LNx+Pc0MHBC3XxrMkZ/oJUjnAKrG26Dzgh4VP2RM6pvz2g/lGbLO+O0vH
|
32
|
+
eMWckkIf5QidHg3HTmfAIR8buEL08bxgD0i2dL5qBuAO/dogW95b
|
33
|
+
-----END RSA PRIVATE KEY-----
|
34
|
+
Bag Attributes
|
35
|
+
localKeyID: 01 00 00 00
|
36
|
+
subject=/CN=Opensslkey Unsigned Certificate
|
37
|
+
issuer=/CN=Opensslkey Unsigned Certificate
|
38
|
+
-----BEGIN CERTIFICATE-----
|
39
|
+
MIIB2zCCAcSgAwIBAgIQZNMnNOqe7pdLgtpEs4GvuTANBgkqhkiG9w0BAQUFADAq
|
40
|
+
MSgwJgYDVQQDEx9PcGVuc3Nsa2V5IFVuc2lnbmVkIENlcnRpZmljYXRlMB4XDTEx
|
41
|
+
MDcyMDEyNTkxMloXDTEyMDcxOTE4NTkxMlowKjEoMCYGA1UEAxMfT3BlbnNzbGtl
|
42
|
+
eSBVbnNpZ25lZCBDZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
43
|
+
AQoCggEBALMra2Hqcyzt68ZEBR4HGtknbmT3u5fF92RBAzs19cLALW5UQCB0l4Ti
|
44
|
+
bih1xIdqmxHEigTrAvawotCyF16fV9Zwa8UbVJxLEWQTQvBfq7siHVZXnWQ7hZsA
|
45
|
+
NNj0VWoEf5CQBTXW5r4mFT1K7PSSDOgiyikkqg0C5sjZ02WnV+eZmgRfBnOpGNtv
|
46
|
+
HKYJUIoFUAHIVPOPxGHtgNA9wZ7jUC0mQ0QK9S8txPVexlyqkgY1shMw8frbh062
|
47
|
+
3edrOVyHXLfCyqLbm3jmpwVm4Eh+x/rr5va5I3ltFKiHpPje7dXKkvKo4tuQx4/O
|
48
|
+
bMe7dTrBTF9HfqEBIBUGrarcVRdjDYkCAwEAATANBgkqhkiG9w0BAQUFAAMCAMg=
|
49
|
+
-----END CERTIFICATE-----
|
metadata
CHANGED
@@ -1,53 +1,160 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: leetchi-wallet-services
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 23
|
5
5
|
prerelease:
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
- 0
|
10
|
+
version: 1.0.0
|
6
11
|
platform: ruby
|
7
|
-
authors:
|
12
|
+
authors:
|
8
13
|
- Vincent Cogne
|
9
14
|
- Geoffroy Lorieux
|
10
15
|
autorequire:
|
11
16
|
bindir: bin
|
12
17
|
cert_chain: []
|
13
|
-
|
14
|
-
|
15
|
-
|
18
|
+
|
19
|
+
date: 2013-02-25 00:00:00 Z
|
20
|
+
dependencies:
|
21
|
+
- !ruby/object:Gem::Dependency
|
16
22
|
name: json
|
17
|
-
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
18
25
|
none: false
|
19
|
-
requirements:
|
26
|
+
requirements:
|
20
27
|
- - ~>
|
21
|
-
- !ruby/object:Gem::Version
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
hash: 5
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 7
|
33
|
+
- 7
|
22
34
|
version: 1.7.7
|
23
35
|
type: :runtime
|
36
|
+
version_requirements: *id001
|
37
|
+
- !ruby/object:Gem::Dependency
|
38
|
+
name: minitest
|
24
39
|
prerelease: false
|
25
|
-
|
26
|
-
- !ruby/object:Gem::Dependency
|
27
|
-
name:
|
28
|
-
- minitest
|
29
|
-
- webmock
|
30
|
-
- vcr
|
31
|
-
- turn
|
32
|
-
- rake
|
33
|
-
requirement: &70290655116160 !ruby/object:Gem::Requirement
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
34
41
|
none: false
|
35
|
-
requirements:
|
36
|
-
- -
|
37
|
-
- !ruby/object:Gem::Version
|
38
|
-
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
hash: 37
|
46
|
+
segments:
|
47
|
+
- 4
|
48
|
+
- 6
|
49
|
+
- 1
|
50
|
+
version: 4.6.1
|
39
51
|
type: :development
|
52
|
+
version_requirements: *id002
|
53
|
+
- !ruby/object:Gem::Dependency
|
54
|
+
name: webmock
|
40
55
|
prerelease: false
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
56
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
hash: 53
|
62
|
+
segments:
|
63
|
+
- 1
|
64
|
+
- 9
|
65
|
+
- 3
|
66
|
+
version: 1.9.3
|
67
|
+
type: :development
|
68
|
+
version_requirements: *id003
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: capybara
|
71
|
+
prerelease: false
|
72
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
hash: 11
|
78
|
+
segments:
|
79
|
+
- 2
|
80
|
+
- 0
|
81
|
+
- 2
|
82
|
+
version: 2.0.2
|
83
|
+
type: :development
|
84
|
+
version_requirements: *id004
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: poltergeist
|
87
|
+
prerelease: false
|
88
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ~>
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
hash: 19
|
94
|
+
segments:
|
95
|
+
- 1
|
96
|
+
- 1
|
97
|
+
- 0
|
98
|
+
version: 1.1.0
|
99
|
+
type: :development
|
100
|
+
version_requirements: *id005
|
101
|
+
- !ruby/object:Gem::Dependency
|
102
|
+
name: vcr
|
103
|
+
prerelease: false
|
104
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ~>
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
hash: 31
|
110
|
+
segments:
|
111
|
+
- 2
|
112
|
+
- 4
|
113
|
+
- 0
|
114
|
+
version: 2.4.0
|
115
|
+
type: :development
|
116
|
+
version_requirements: *id006
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
name: turn
|
119
|
+
prerelease: false
|
120
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ~>
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
hash: 55
|
126
|
+
segments:
|
127
|
+
- 0
|
128
|
+
- 9
|
129
|
+
- 6
|
130
|
+
version: 0.9.6
|
131
|
+
type: :development
|
132
|
+
version_requirements: *id007
|
133
|
+
- !ruby/object:Gem::Dependency
|
134
|
+
name: rake
|
135
|
+
prerelease: false
|
136
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ~>
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
hash: 73
|
142
|
+
segments:
|
143
|
+
- 10
|
144
|
+
- 0
|
145
|
+
- 3
|
146
|
+
version: 10.0.3
|
147
|
+
type: :development
|
148
|
+
version_requirements: *id008
|
149
|
+
description: " The Leetchi API Gem makes interacting with Leetchi's Wallet Services much easier.\n For any questions regarding the use of Leetchi's Wallet Services feel free to contact us at http://www.leetchi.com/en/contact\n You can find more documentation about Leetchi's Wallet Services at http://doc.api.leetchi.com/\n"
|
46
150
|
email: geoffroy@leetchi.com
|
47
151
|
executables: []
|
152
|
+
|
48
153
|
extensions: []
|
154
|
+
|
49
155
|
extra_rdoc_files: []
|
50
|
-
|
156
|
+
|
157
|
+
files:
|
51
158
|
- lib/leetchi/beneficiary.rb
|
52
159
|
- lib/leetchi/card.rb
|
53
160
|
- lib/leetchi/contribution.rb
|
@@ -91,29 +198,41 @@ files:
|
|
91
198
|
- spec/lib/leetchi/wallet_spec.rb
|
92
199
|
- spec/lib/leetchi/withdrawal_spec.rb
|
93
200
|
- spec/spec_helper.rb
|
201
|
+
- spec/support-files/example.pem
|
94
202
|
homepage: http://rubygems.org/gems/leetchi-wallet-services
|
95
203
|
licenses: []
|
204
|
+
|
96
205
|
post_install_message:
|
97
206
|
rdoc_options: []
|
98
|
-
|
207
|
+
|
208
|
+
require_paths:
|
99
209
|
- lib
|
100
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
210
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
101
211
|
none: false
|
102
|
-
requirements:
|
103
|
-
- -
|
104
|
-
- !ruby/object:Gem::Version
|
212
|
+
requirements:
|
213
|
+
- - ">="
|
214
|
+
- !ruby/object:Gem::Version
|
215
|
+
hash: 55
|
216
|
+
segments:
|
217
|
+
- 1
|
218
|
+
- 9
|
219
|
+
- 2
|
105
220
|
version: 1.9.2
|
106
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
221
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
107
222
|
none: false
|
108
|
-
requirements:
|
109
|
-
- -
|
110
|
-
- !ruby/object:Gem::Version
|
111
|
-
|
223
|
+
requirements:
|
224
|
+
- - ">="
|
225
|
+
- !ruby/object:Gem::Version
|
226
|
+
hash: 3
|
227
|
+
segments:
|
228
|
+
- 0
|
229
|
+
version: "0"
|
112
230
|
requirements: []
|
231
|
+
|
113
232
|
rubyforge_project:
|
114
|
-
rubygems_version: 1.8.
|
233
|
+
rubygems_version: 1.8.24
|
115
234
|
signing_key:
|
116
235
|
specification_version: 3
|
117
236
|
summary: Gem for interacting with the Leetchi Wallet Services
|
118
237
|
test_files: []
|
119
|
-
|
238
|
+
|