figo 1.4.1 → 1.4.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|