figo 1.4.1 → 1.4.2
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.
- checksums.yaml +5 -5
- data/.travis.yml +1 -3
- data/config.yml +0 -3
- data/figo.gemspec +3 -3
- data/lib/figo.rb +6 -10
- data/lib/helpers/https.rb +1 -15
- data/test/test_account_sync_and_setup.rb +4 -12
- data/test/test_accounts.rb +2 -6
- data/test/test_authentififcation.rb +3 -15
- data/test/test_figo.rb +1 -1
- data/test/test_payments.rb +0 -2
- data/test/test_securities.rb +0 -6
- data/test/test_user_management.rb +2 -8
- metadata +5 -12
- data/lib/process/api_call.rb +0 -17
- data/lib/process/model.rb +0 -34
- data/test/test_business_processes.rb +0 -43
- data/test/test_standing_orders.rb +0 -49
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 209529c7a79df7e73a3611deae5af168d3c4e461163fc2fe84416668c294415c
|
4
|
+
data.tar.gz: 699d2be89fbed3d3c704cc400159d72774c3023500dbde7a2f44c3929ee31034
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5732f40ddd68feb6cdbe5458d9b66e38ce05937f06c13312507fceaa49b66b0332fdddf7e9120a12df3eb37e0282653e2554f9fc6a69eb1c1f10e0f5a32344d9
|
7
|
+
data.tar.gz: 935d348cbf1ad9133747cabaa42dfb4f6e9b4c47d04fa59557056897f160bde2822724fc4d3f7efab3a222228a8705ae41f0a3135b1330ff8f08bd286d82d3ec
|
data/.travis.yml
CHANGED
data/config.yml
CHANGED
@@ -1,4 +1 @@
|
|
1
1
|
API_ENDPOINT: api.figo.me
|
2
|
-
FINGER_PRINTS:
|
3
|
-
- "79:B2:A2:93:00:85:3B:06:92:B1:B5:F2:24:79:48:58:3A:A5:22:0F:C5:CD:E9:49:9A:C8:45:1E:DB:E0:DA:50" # valid until Jun 24 23:59:59 2018
|
4
|
-
- "CD:F3:D3:26:27:89:91:B9:CD:AE:4B:10:6C:96:81:B7:EB:B3:38:10:C4:72:37:6A:4D:9C:84:B7:B3:DC:D6:8D" # valid until Jun 24 23:59:59 2019
|
data/figo.gemspec
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = "figo"
|
3
|
-
s.version = "1.4.
|
4
|
-
s.authors = ["
|
5
|
-
s.email = ["
|
3
|
+
s.version = "1.4.2"
|
4
|
+
s.authors = ["figo GmbH"]
|
5
|
+
s.email = ["devs@figo.io"]
|
6
6
|
s.homepage = "https://github.com/figo-connect/ruby-figo"
|
7
7
|
s.license = "MIT"
|
8
8
|
s.summary = %q{API wrapper for figo Connect.}
|
data/lib/figo.rb
CHANGED
@@ -32,7 +32,6 @@ require_relative "./authentification/api_call.rb"
|
|
32
32
|
module Figo
|
33
33
|
$config = YAML.load_file(File.join(__dir__, '../config.yml'))
|
34
34
|
$api_endpoint = $config["API_ENDPOINT"]
|
35
|
-
$valid_fingerprints = $config["FINGER_PRINTS"]
|
36
35
|
|
37
36
|
# Represents a non user-bound connection to the figo Connect API.
|
38
37
|
#
|
@@ -44,11 +43,11 @@ module Figo
|
|
44
43
|
# @param client_id [String] the client ID
|
45
44
|
# @param client_secret [String] the client secret
|
46
45
|
# @param redirect_uri [String] optional redirect URI
|
47
|
-
def initialize(client_id, client_secret, redirect_uri = nil,
|
46
|
+
def initialize(client_id, client_secret, redirect_uri = nil, api_endpoint = $api_endpoint)
|
48
47
|
@client_id = client_id
|
49
48
|
@client_secret = client_secret
|
50
49
|
@redirect_uri = redirect_uri
|
51
|
-
@https = HTTPS.new("figo-#{client_id}", nil
|
50
|
+
@https = HTTPS.new("figo-#{client_id}", nil)
|
52
51
|
@api_endpoint = api_endpoint
|
53
52
|
end
|
54
53
|
|
@@ -65,7 +64,7 @@ module Figo
|
|
65
64
|
request.basic_auth(@client_id, @client_secret)
|
66
65
|
request["Accept"] = "application/json"
|
67
66
|
request["Content-Type"] = "application/x-www-form-urlencoded"
|
68
|
-
request["User-Agent"] = "figo-ruby/1.
|
67
|
+
request["User-Agent"] = "figo-ruby/1.4.2"
|
69
68
|
request.body = URI.encode_www_form(data) unless data.nil?
|
70
69
|
|
71
70
|
# Send HTTP request.
|
@@ -105,9 +104,6 @@ module Figo
|
|
105
104
|
require_relative "./standing_order/model.rb"
|
106
105
|
require_relative "./standing_order/api_call.rb"
|
107
106
|
|
108
|
-
require_relative "./process/model.rb"
|
109
|
-
require_relative "./process/api_call.rb"
|
110
|
-
|
111
107
|
require_relative "./security/model.rb"
|
112
108
|
require_relative "./security/api_call.rb"
|
113
109
|
|
@@ -119,9 +115,9 @@ module Figo
|
|
119
115
|
# Create session object with access token.
|
120
116
|
#
|
121
117
|
# @param access_token [String] the access token
|
122
|
-
def initialize(access_token,
|
118
|
+
def initialize(access_token, api_endpoint = $api_endpoint)
|
123
119
|
@access_token = access_token
|
124
|
-
@https = HTTPS.new("figo-#{access_token}", nil
|
120
|
+
@https = HTTPS.new("figo-#{access_token}", nil)
|
125
121
|
@api_endpoint = api_endpoint
|
126
122
|
end
|
127
123
|
|
@@ -149,7 +145,7 @@ module Figo
|
|
149
145
|
request["Authorization"] = "Bearer #{@access_token}"
|
150
146
|
request["Accept"] = "application/json"
|
151
147
|
request["Content-Type"] = "application/json"
|
152
|
-
request["User-Agent"] = "figo-ruby/1.
|
148
|
+
request["User-Agent"] = "figo-ruby/1.4.2"
|
153
149
|
|
154
150
|
request.body = JSON.generate(data) unless data.nil?
|
155
151
|
|
data/lib/helpers/https.rb
CHANGED
@@ -3,22 +3,8 @@ module Figo
|
|
3
3
|
# HTTPS class with certificate authentication and enhanced error handling.
|
4
4
|
class HTTPS < Net::HTTP::Persistent
|
5
5
|
# Overwrite `initialize` method from `Net::HTTP::Persistent`.
|
6
|
-
|
7
|
-
# Verify fingerprints of server SSL/TLS certificates.
|
8
|
-
def initialize(name = nil, proxy = nil, fingerprints)
|
6
|
+
def initialize(name = nil, proxy = nil)
|
9
7
|
super(name: name, proxy: proxy)
|
10
|
-
|
11
|
-
# Attribute ca_file must be set, otherwise verify_callback would never be called.
|
12
|
-
@ca_file = "lib/cacert.pem"
|
13
|
-
@verify_callback = proc do |preverify_ok, store_context|
|
14
|
-
if preverify_ok and store_context.error == 0
|
15
|
-
certificate = OpenSSL::X509::Certificate.new(store_context.chain[0])
|
16
|
-
fingerprint = Digest::SHA256.hexdigest(certificate.to_der).upcase.scan(/../).join(":")
|
17
|
-
fingerprints.include?(fingerprint)
|
18
|
-
else
|
19
|
-
false
|
20
|
-
end
|
21
|
-
end
|
22
8
|
end
|
23
9
|
|
24
10
|
# Overwrite `request` method from `Net::HTTP::Persistent`.
|
@@ -34,30 +34,22 @@ class FigoTest < MiniTest::Unit::TestCase
|
|
34
34
|
## Account Setup & Synchronization
|
35
35
|
# Retrieve List of Supported Banks, Credit Cards, other Payment Services
|
36
36
|
def test_retrieve_list_of_supported_baks_cards_services
|
37
|
-
|
38
|
-
assert "Missing, invalid or expired access token.", execption.message
|
39
|
-
# assert @sut.get_supported_payment_services("DE", "whatever")
|
37
|
+
assert_nil @sut.get_supported_payment_services("DE", "whatever")
|
40
38
|
end
|
41
39
|
|
42
40
|
# Retrieve List of Supported Credit Cards and other Payment Services
|
43
41
|
def test_retrieve_list_of_supported_cards_services
|
44
|
-
|
45
|
-
assert "Missing, invalid or expired access token.", execption.message
|
46
|
-
# assert @sut.get_supported_payment_services("DE", "services")
|
42
|
+
assert_nil @sut.get_supported_payment_services("DE", "services")
|
47
43
|
end
|
48
44
|
|
49
45
|
# Retrieve List of all Supported Banks
|
50
46
|
def test_retreive_list_of_all_supported_banks
|
51
|
-
|
52
|
-
assert "Missing, invalid or expired access token.", execption.message
|
53
|
-
# assert @sut.get_supported_payment_services("DE", "banks")
|
47
|
+
assert_raises(Figo::Error) { @sut.get_supported_payment_services("DE", "banks") }
|
54
48
|
end
|
55
49
|
|
56
50
|
# Retrieve Login Settings for a Bank or Service
|
57
51
|
def test_retreive_login_settings_for_a_bank_or_service
|
58
|
-
|
59
|
-
assert "Missing, invalid or expired access token.", execption.message
|
60
|
-
# assert @sut.find_bank("B1.1")
|
52
|
+
assert_raises(Figo::Error) { @sut.find_bank("B1.1") }
|
61
53
|
end
|
62
54
|
|
63
55
|
# Setup New Bank Account
|
data/test/test_accounts.rb
CHANGED
@@ -95,12 +95,8 @@ class FigoTest < MiniTest::Unit::TestCase
|
|
95
95
|
|
96
96
|
# Remove Stored Pin from Bank Account
|
97
97
|
def test_remove_pin_from_bank_account
|
98
|
-
|
99
98
|
new_bank_info = Figo::Bank.new(@sut, {bank_id: "B1.1", sepa_creditor_id: "DE02ZZZ0123456789", save_pin: true})
|
100
|
-
|
101
|
-
|
102
|
-
assert "Missing, invalid or expired access token.", execption.message
|
103
|
-
|
104
|
-
# assert_nil @sut.remove_bank_pin(new_bank_info)
|
99
|
+
response = @sut.remove_bank_pin(new_bank_info)
|
100
|
+
assert response["save_pin"] == false
|
105
101
|
end
|
106
102
|
end
|
@@ -49,20 +49,8 @@ class FigoTest < MiniTest::Unit::TestCase
|
|
49
49
|
def test_authentification_features
|
50
50
|
connection = Figo::Connection.new(CONFIG["CLIENT_ID"], CONFIG["CLIENT_SECRET"], "")
|
51
51
|
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
assert "Unsupported grant type.", execption.message
|
56
|
-
# tokens = connection.credential_login(CONFIG["USERNAME"], CONFIG["PASSWORD"])
|
57
|
-
|
58
|
-
# assert tokens.access_token
|
59
|
-
# assert tokens.token_type
|
60
|
-
# assert tokens.refresh_token
|
61
|
-
|
62
|
-
# assert connection.obtain_access_token(CONFIG["AUTHORIZATION_CODE"])
|
63
|
-
|
64
|
-
# assert connection.revoke_token(tokens.refresh_token)
|
65
|
-
|
66
|
-
# assert connection.obtain_access_token(tokens.refresh_token)
|
52
|
+
response = connection.credential_login(CONFIG["USERNAME"], CONFIG["PASSWORD"], scope = "offline account=rw")
|
53
|
+
assert response["access_token"]
|
54
|
+
assert response["token_type"]
|
67
55
|
end
|
68
56
|
end
|
data/test/test_figo.rb
CHANGED
data/test/test_payments.rb
CHANGED
@@ -75,8 +75,6 @@ class FigoTest < MiniTest::Unit::TestCase
|
|
75
75
|
payment = @sut.add_payment(payment)
|
76
76
|
assert payment
|
77
77
|
|
78
|
-
execption = assert_raises(Figo::Error) { @sut.submit_payment(payment, "M1.1", "string", "http://127.0.0.1") }
|
79
|
-
assert "Missing, invalid or expired access token.", execption.message
|
80
78
|
# task = @sut.submit_payment(payment, "M1.1", "string", "http://127.0.0.1")
|
81
79
|
#
|
82
80
|
# assert_match task, /https:/
|
data/test/test_securities.rb
CHANGED
@@ -31,12 +31,6 @@ class FigoTest < MiniTest::Unit::TestCase
|
|
31
31
|
@sut = Figo::Session.new(CONFIG["ACCESS_TOKEN"])
|
32
32
|
end
|
33
33
|
|
34
|
-
## Securities
|
35
|
-
# Retrieve a Security
|
36
|
-
def test_retreive_a_security
|
37
|
-
assert @sut.get_security("A1.4", "S1.1")
|
38
|
-
end
|
39
|
-
|
40
34
|
# Retrieve Securities of all Accounts
|
41
35
|
def test_retreive_securities_of_all_accounts
|
42
36
|
assert @sut.get_securities({})
|
@@ -40,16 +40,12 @@ class FigoTest < MiniTest::Unit::TestCase
|
|
40
40
|
|
41
41
|
# Create New Figo User
|
42
42
|
def test_create_new_figo_user
|
43
|
-
|
44
|
-
assert "Missing, invalid or expired access token.", execption.message
|
45
|
-
# assert @con.create_user("John Doe", "jd@example.io", "123456", "en")
|
43
|
+
assert_raises(Figo::Error) { @con.create_user("John Doe", "jd@example.io", "123456", "en") }
|
46
44
|
end
|
47
45
|
|
48
46
|
# Re-Send Verification Email
|
49
47
|
def test_resend_verififcation_email
|
50
|
-
|
51
|
-
assert "Missing, invalid or expired access token.", execption.message
|
52
|
-
# assert_nil @sut.resend_verification
|
48
|
+
assert_nil @sut.resend_verification
|
53
49
|
end
|
54
50
|
|
55
51
|
# Modify Current User
|
@@ -74,8 +70,6 @@ class FigoTest < MiniTest::Unit::TestCase
|
|
74
70
|
verified_email: true
|
75
71
|
}
|
76
72
|
new_user = Figo::User.new(@sut, new_user_hash)
|
77
|
-
|
78
|
-
|
79
73
|
execption = assert_raises(Figo::Error) { @sut.modify_user(new_user) }
|
80
74
|
assert "Missing, invalid or expired access token.", execption.message
|
81
75
|
# api_user = @sut.modify_user(new_user)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: figo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- figo GmbH
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-04-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: flt
|
@@ -40,7 +40,7 @@ dependencies:
|
|
40
40
|
version: '0'
|
41
41
|
description: Library to easily use the API of http://figo.io
|
42
42
|
email:
|
43
|
-
-
|
43
|
+
- devs@figo.io
|
44
44
|
executables: []
|
45
45
|
extensions: []
|
46
46
|
extra_rdoc_files: []
|
@@ -69,8 +69,6 @@ files:
|
|
69
69
|
- lib/notification/model.rb
|
70
70
|
- lib/payment/api_call.rb
|
71
71
|
- lib/payment/model.rb
|
72
|
-
- lib/process/api_call.rb
|
73
|
-
- lib/process/model.rb
|
74
72
|
- lib/security/api_call.rb
|
75
73
|
- lib/security/model.rb
|
76
74
|
- lib/standing_order/api_call.rb
|
@@ -87,12 +85,10 @@ files:
|
|
87
85
|
- test/test_account_sync_and_setup.rb
|
88
86
|
- test/test_accounts.rb
|
89
87
|
- test/test_authentififcation.rb
|
90
|
-
- test/test_business_processes.rb
|
91
88
|
- test/test_figo.rb
|
92
89
|
- test/test_notifications.rb
|
93
90
|
- test/test_payments.rb
|
94
91
|
- test/test_securities.rb
|
95
|
-
- test/test_standing_orders.rb
|
96
92
|
- test/test_transactions.rb
|
97
93
|
- test/test_user_management.rb
|
98
94
|
- web_demo/app.rb
|
@@ -119,8 +115,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
119
115
|
- !ruby/object:Gem::Version
|
120
116
|
version: '0'
|
121
117
|
requirements: []
|
122
|
-
|
123
|
-
rubygems_version: 2.5.2
|
118
|
+
rubygems_version: 3.0.3
|
124
119
|
signing_key:
|
125
120
|
specification_version: 4
|
126
121
|
summary: API wrapper for figo Connect.
|
@@ -129,11 +124,9 @@ test_files:
|
|
129
124
|
- test/test_account_sync_and_setup.rb
|
130
125
|
- test/test_accounts.rb
|
131
126
|
- test/test_authentififcation.rb
|
132
|
-
- test/test_business_processes.rb
|
133
127
|
- test/test_figo.rb
|
134
128
|
- test/test_notifications.rb
|
135
129
|
- test/test_payments.rb
|
136
130
|
- test/test_securities.rb
|
137
|
-
- test/test_standing_orders.rb
|
138
131
|
- test/test_transactions.rb
|
139
132
|
- test/test_user_management.rb
|
data/lib/process/api_call.rb
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
require_relative "model.rb"
|
2
|
-
module Figo
|
3
|
-
# Begin process.
|
4
|
-
#
|
5
|
-
# @param process [Hash] - Process token object
|
6
|
-
def start_process(process)
|
7
|
-
query_api "/process/start?id=" + process.process_token, nil, "GET"
|
8
|
-
end
|
9
|
-
|
10
|
-
# Create a process.
|
11
|
-
#
|
12
|
-
# @param proc [Hash] - Process object
|
13
|
-
# @return [Hash] - The result parameter is a ProcessToken object of a newly created process.
|
14
|
-
def create_process(proc)
|
15
|
-
query_api_object ProcessToken, "/client/process", proc.dump(), "POST", nil
|
16
|
-
end
|
17
|
-
end
|
data/lib/process/model.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
require_relative "../base.rb"
|
2
|
-
module Figo
|
3
|
-
### Object representing a process token
|
4
|
-
class ProcessToken < Base
|
5
|
-
@dump_attributes = [:process_token];
|
6
|
-
def initialize(session, json)
|
7
|
-
super(session, json)
|
8
|
-
end
|
9
|
-
|
10
|
-
# Properties:
|
11
|
-
# @param process_token [Object] - Process ID
|
12
|
-
attr_accessor :process_token
|
13
|
-
end
|
14
|
-
|
15
|
-
### Object representing a Bsiness Process
|
16
|
-
class Process < Base
|
17
|
-
@dump_attributes = [:email, :password, :redirect_uri, :state, :steps]
|
18
|
-
def initialize(session, json)
|
19
|
-
super(session, json)
|
20
|
-
end
|
21
|
-
|
22
|
-
# Properties:
|
23
|
-
# @param email [String] - The email of the existing user to use as context or the new user to create beforehand
|
24
|
-
attr_accessor :email
|
25
|
-
# @param password [String] - The password of the user existing or new user
|
26
|
-
attr_accessor :password
|
27
|
-
# @param redirect_uri [String] - The authorization code will be sent to this callback URL
|
28
|
-
attr_accessor :redirect_uri
|
29
|
-
# @param state [String] - Any kind of string that will be forwarded in the callback response message
|
30
|
-
attr_accessor :state
|
31
|
-
# @param steps [String] - A list of steps definitions
|
32
|
-
attr_accessor :steps
|
33
|
-
end
|
34
|
-
end
|
@@ -1,43 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# Copyright (c) 2013 figo GmbH
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
|
-
# of this software and associated documentation files (the "Software"), to deal
|
6
|
-
# in the Software without restriction, including without limitation the rights
|
7
|
-
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
-
# copies of the Software, and to permit persons to whom the Software is
|
9
|
-
# furnished to do so, subject to the following conditions:
|
10
|
-
#
|
11
|
-
# The above copyright notice and this permission notice shall be included in
|
12
|
-
# all copies or substantial portions of the Software.
|
13
|
-
#
|
14
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
15
|
-
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
16
|
-
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
17
|
-
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
18
|
-
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
19
|
-
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
20
|
-
# THE SOFTWARE.
|
21
|
-
#
|
22
|
-
|
23
|
-
require "flt"
|
24
|
-
require "minitest/autorun"
|
25
|
-
require "minitest/reporters"
|
26
|
-
Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new
|
27
|
-
require_relative "../lib/figo"
|
28
|
-
|
29
|
-
class FigoTest < MiniTest::Unit::TestCase
|
30
|
-
def setup
|
31
|
-
@sut = Figo::Session.new(CONFIG["ACCESS_TOKEN"])
|
32
|
-
end
|
33
|
-
|
34
|
-
## Business Process System
|
35
|
-
def test_create_and_begin_process
|
36
|
-
process = Figo::Process.new(@sut, { email: "example@example.com", password: "password", redirect_uri: "http://127.0.0.1", state: "123", steps: [] })
|
37
|
-
|
38
|
-
execption = assert_raises(Figo::Error) { @sut.create_process(process) }
|
39
|
-
assert "Missing, invalid or expired access token.", execption.message
|
40
|
-
# assert @sut.create_process(process)
|
41
|
-
# assert_nil @sut.start_task(@sut.create_process(process))
|
42
|
-
end
|
43
|
-
end
|
@@ -1,49 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# Copyright (c) 2013 figo GmbH
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
|
-
# of this software and associated documentation files (the "Software"), to deal
|
6
|
-
# in the Software without restriction, including without limitation the rights
|
7
|
-
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
-
# copies of the Software, and to permit persons to whom the Software is
|
9
|
-
# furnished to do so, subject to the following conditions:
|
10
|
-
#
|
11
|
-
# The above copyright notice and this permission notice shall be included in
|
12
|
-
# all copies or substantial portions of the Software.
|
13
|
-
#
|
14
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
15
|
-
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
16
|
-
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
17
|
-
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
18
|
-
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
19
|
-
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
20
|
-
# THE SOFTWARE.
|
21
|
-
#
|
22
|
-
|
23
|
-
require "flt"
|
24
|
-
require "minitest/autorun"
|
25
|
-
require "minitest/reporters"
|
26
|
-
Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new
|
27
|
-
require_relative "../lib/figo"
|
28
|
-
|
29
|
-
class FigoTest < MiniTest::Unit::TestCase
|
30
|
-
def setup
|
31
|
-
@sut = Figo::Session.new(CONFIG["ACCESS_TOKEN"])
|
32
|
-
end
|
33
|
-
|
34
|
-
## Standing Orders
|
35
|
-
# Retrieve a Standing Order
|
36
|
-
def test_retreive_a_standing_order
|
37
|
-
assert @sut.get_standing_order("SO1.1")
|
38
|
-
end
|
39
|
-
|
40
|
-
# Retrieve Standing Orders of all Accounts
|
41
|
-
def test_retreive_a_standing_orders_of_all_accounts
|
42
|
-
assert @sut.get_standing_orders().length > 0
|
43
|
-
end
|
44
|
-
|
45
|
-
# Retrieve Standing Orders of one Account
|
46
|
-
def test_retreive_a_standing_orders_of_one_account
|
47
|
-
assert @sut.get_account_standing_orders("A1.1").length > 0
|
48
|
-
end
|
49
|
-
end
|