sepa_king_extended 0.10.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.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +30 -0
- data/CONTRIBUTING.md +38 -0
- data/Gemfile +2 -0
- data/LICENSE.txt +22 -0
- data/README.md +267 -0
- data/Rakefile +6 -0
- data/gemfiles/Gemfile-activemodel-3.0.x +5 -0
- data/gemfiles/Gemfile-activemodel-3.1.x +5 -0
- data/gemfiles/Gemfile-activemodel-3.2.x +5 -0
- data/gemfiles/Gemfile-activemodel-4.0.x +5 -0
- data/gemfiles/Gemfile-activemodel-4.1.x +5 -0
- data/gemfiles/Gemfile-activemodel-4.2.x +5 -0
- data/gemfiles/Gemfile-activemodel-5.0.x +5 -0
- data/gemfiles/Gemfile-activemodel-5.1.x +5 -0
- data/lib/schema/pain.001.001.03.xsd +921 -0
- data/lib/schema/pain.001.002.03.xsd +450 -0
- data/lib/schema/pain.001.003.03.xsd +474 -0
- data/lib/schema/pain.008.001.02.xsd +879 -0
- data/lib/schema/pain.008.002.02.xsd +597 -0
- data/lib/schema/pain.008.003.02.xsd +614 -0
- data/lib/sepa_king/account/creditor_account.rb +8 -0
- data/lib/sepa_king/account/debtor_account.rb +5 -0
- data/lib/sepa_king/account.rb +19 -0
- data/lib/sepa_king/converter.rb +51 -0
- data/lib/sepa_king/message/credit_transfer.rb +99 -0
- data/lib/sepa_king/message/direct_debit.rb +151 -0
- data/lib/sepa_king/message.rb +135 -0
- data/lib/sepa_king/transaction/credit_transfer_transaction.rb +30 -0
- data/lib/sepa_king/transaction/direct_debit_transaction.rb +45 -0
- data/lib/sepa_king/transaction.rb +44 -0
- data/lib/sepa_king/validator.rb +68 -0
- data/lib/sepa_king/version.rb +3 -0
- data/lib/sepa_king.rb +16 -0
- data/sepa_king_extended.gemspec +32 -0
- data/spec/account_spec.rb +42 -0
- data/spec/converter_spec.rb +74 -0
- data/spec/credit_transfer_spec.rb +364 -0
- data/spec/credit_transfer_transaction_spec.rb +58 -0
- data/spec/creditor_account_spec.rb +23 -0
- data/spec/debtor_account_spec.rb +12 -0
- data/spec/direct_debit_spec.rb +469 -0
- data/spec/direct_debit_transaction_spec.rb +69 -0
- data/spec/examples/pain.001.001.03.xml +89 -0
- data/spec/examples/pain.001.002.03.xml +89 -0
- data/spec/examples/pain.001.003.03.xml +89 -0
- data/spec/examples/pain.008.002.02.xml +134 -0
- data/spec/examples/pain.008.003.02.xml +134 -0
- data/spec/message_spec.rb +88 -0
- data/spec/spec_helper.rb +33 -0
- data/spec/support/active_model.rb +30 -0
- data/spec/support/custom_matcher.rb +60 -0
- data/spec/support/factories.rb +24 -0
- data/spec/support/validations.rb +27 -0
- data/spec/transaction_spec.rb +88 -0
- data/spec/validation_spec.rb +25 -0
- data/spec/validator_spec.rb +99 -0
- metadata +254 -0
@@ -0,0 +1,27 @@
|
|
1
|
+
# Borrowed from rspec-rails
|
2
|
+
# https://github.com/rspec/rspec-rails/blob/master/lib/rspec/rails/extensions/active_record/base.rb
|
3
|
+
|
4
|
+
module ::ActiveModel::Validations
|
5
|
+
# Extension to enhance `to have` on AR Model instances. Calls
|
6
|
+
# model.valid? in order to prepare the object's errors object. Accepts
|
7
|
+
# a :context option to specify the validation context.
|
8
|
+
#
|
9
|
+
# You can also use this to specify the content of the error messages.
|
10
|
+
#
|
11
|
+
# @example
|
12
|
+
#
|
13
|
+
# expect(model).to have(:no).errors_on(:attribute)
|
14
|
+
# expect(model).to have(1).error_on(:attribute)
|
15
|
+
# expect(model).to have(n).errors_on(:attribute)
|
16
|
+
# expect(model).to have(n).errors_on(:attribute, context: :create)
|
17
|
+
#
|
18
|
+
# expect(model.errors_on(:attribute)).to include("can't be blank")
|
19
|
+
def errors_on(attribute, options = {})
|
20
|
+
valid_args = [options[:context]].compact
|
21
|
+
self.valid?(*valid_args)
|
22
|
+
|
23
|
+
[self.errors[attribute]].flatten.compact
|
24
|
+
end
|
25
|
+
|
26
|
+
alias :error_on :errors_on
|
27
|
+
end
|
@@ -0,0 +1,88 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe SEPA::Transaction do
|
5
|
+
describe :new do
|
6
|
+
it 'should have default for reference' do
|
7
|
+
expect(SEPA::Transaction.new.reference).to eq('NOTPROVIDED')
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'should have default for requested_date' do
|
11
|
+
expect(SEPA::Transaction.new.requested_date).to eq(Date.new(1999, 1, 1))
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'should have default for batch_booking' do
|
15
|
+
expect(SEPA::Transaction.new.batch_booking).to eq(true)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
context 'Name' do
|
20
|
+
it 'should accept valid value' do
|
21
|
+
expect(SEPA::Transaction).to accept('Manfred Mustermann III.', 'Zahlemann & Söhne GbR', 'X' * 70, for: :name)
|
22
|
+
end
|
23
|
+
|
24
|
+
it 'should not accept invalid value' do
|
25
|
+
expect(SEPA::Transaction).not_to accept(nil, '', 'X' * 71, for: :name)
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
context 'IBAN' do
|
30
|
+
it 'should accept valid value' do
|
31
|
+
expect(SEPA::Transaction).to accept('DE21500500009876543210', 'PL61109010140000071219812874', for: :iban)
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'should not accept invalid value' do
|
35
|
+
expect(SEPA::Transaction).not_to accept(nil, '', 'invalid', for: :iban)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
context 'BIC' do
|
40
|
+
it 'should accept valid value' do
|
41
|
+
expect(SEPA::Transaction).to accept('DEUTDEFF', 'DEUTDEFF500', 'SPUEDE2UXXX', for: :bic)
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'should not accept invalid value' do
|
45
|
+
expect(SEPA::Transaction).not_to accept('', 'invalid', for: :bic)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
context 'Amount' do
|
50
|
+
it 'should accept valid value' do
|
51
|
+
expect(SEPA::Transaction).to accept(0.01, 1, 100, 100.00, 99.99, 1234567890.12, BigDecimal('10'), '42', '42.51', '42.512', 1.23456, for: :amount)
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'should not accept invalid value' do
|
55
|
+
expect(SEPA::Transaction).not_to accept(nil, 0, -3, 'xz', for: :amount)
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
context 'Reference' do
|
60
|
+
it 'should accept valid value' do
|
61
|
+
expect(SEPA::Transaction).to accept(nil, 'ABC-1234/78.0', 'X' * 35, for: :reference)
|
62
|
+
end
|
63
|
+
|
64
|
+
it 'should not accept invalid value' do
|
65
|
+
expect(SEPA::Transaction).not_to accept('', 'X' * 36, for: :reference)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
context 'Remittance information' do
|
70
|
+
it 'should allow valid value' do
|
71
|
+
expect(SEPA::Transaction).to accept(nil, 'Bonus', 'X' * 140, for: :remittance_information)
|
72
|
+
end
|
73
|
+
|
74
|
+
it 'should not allow invalid value' do
|
75
|
+
expect(SEPA::Transaction).not_to accept('', 'X' * 141, for: :remittance_information)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
context 'Currency' do
|
80
|
+
it 'should allow valid values' do
|
81
|
+
expect(SEPA::Transaction).to accept('EUR', 'CHF', 'SEK', for: :currency)
|
82
|
+
end
|
83
|
+
|
84
|
+
it 'should not allow invalid values' do
|
85
|
+
expect(SEPA::Transaction).not_to accept('', 'EURO', 'ABCDEF', for: :currency)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe 'Credit Transfer Initiation' do
|
4
|
+
it "should validate example file" do
|
5
|
+
expect(File.read('spec/examples/pain.001.002.03.xml')).to validate_against('pain.001.002.03.xsd')
|
6
|
+
expect(File.read('spec/examples/pain.001.003.03.xml')).to validate_against('pain.001.003.03.xsd')
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'should not validate dummy string' do
|
10
|
+
expect('foo').not_to validate_against('pain.001.002.03.xsd')
|
11
|
+
expect('foo').not_to validate_against('pain.001.003.03.xsd')
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
describe 'Direct Debit Initiation' do
|
16
|
+
it 'should validate example file' do
|
17
|
+
expect(File.read('spec/examples/pain.008.002.02.xml')).to validate_against('pain.008.002.02.xsd')
|
18
|
+
expect(File.read('spec/examples/pain.008.003.02.xml')).to validate_against('pain.008.003.02.xsd')
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'should not validate dummy string' do
|
22
|
+
expect('foo').not_to validate_against('pain.008.002.02.xsd')
|
23
|
+
expect('foo').not_to validate_against('pain.008.003.02.xsd')
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,99 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe SEPA::IBANValidator do
|
5
|
+
class Validatable
|
6
|
+
include ActiveModel::Model
|
7
|
+
attr_accessor :iban, :iban_the_terrible
|
8
|
+
validates_with SEPA::IBANValidator, message: "%{value} seems wrong"
|
9
|
+
validates_with SEPA::IBANValidator, field_name: :iban_the_terrible
|
10
|
+
end
|
11
|
+
|
12
|
+
it 'should accept valid IBAN' do
|
13
|
+
expect(Validatable).to accept('DE21500500009876543210', 'DE87200500001234567890', for: [:iban, :iban_the_terrible])
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'should not accept an invalid IBAN' do
|
17
|
+
expect(Validatable).not_to accept('', 'xxx', # Oviously no IBAN
|
18
|
+
'DE22500500009876543210', # wrong checksum
|
19
|
+
'DE2150050000987654321', # too short
|
20
|
+
'de87200500001234567890', # downcase characters
|
21
|
+
'DE87 2005 0000 1234 5678 90', # spaces included
|
22
|
+
for: [:iban, :iban_the_terrible])
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should customize error message" do
|
26
|
+
v = Validatable.new(:iban => 'xxx')
|
27
|
+
v.valid?
|
28
|
+
expect(v.errors[:iban]).to eq(['xxx seems wrong'])
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
describe SEPA::BICValidator do
|
33
|
+
class Validatable
|
34
|
+
include ActiveModel::Model
|
35
|
+
attr_accessor :bic, :custom_bic
|
36
|
+
validates_with SEPA::BICValidator, message: "%{value} seems wrong"
|
37
|
+
validates_with SEPA::BICValidator, field_name: :custom_bic
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'should accept valid BICs' do
|
41
|
+
expect(Validatable).to accept('DEUTDEDBDUE', 'DUSSDEDDXXX', for: [:bic, :custom_bic])
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'should not accept an invalid BIC' do
|
45
|
+
expect(Validatable).not_to accept('', 'GENODE61HR', 'DEUTDEDBDUEDEUTDEDBDUE', for: [:bic, :custom_bic])
|
46
|
+
end
|
47
|
+
|
48
|
+
it "should customize error message" do
|
49
|
+
v = Validatable.new(:bic => 'xxx')
|
50
|
+
v.valid?
|
51
|
+
expect(v.errors[:bic]).to eq(['xxx seems wrong'])
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
describe SEPA::CreditorIdentifierValidator do
|
56
|
+
class Validatable
|
57
|
+
include ActiveModel::Model
|
58
|
+
attr_accessor :creditor_identifier, :crid
|
59
|
+
validates_with SEPA::CreditorIdentifierValidator, message: "%{value} seems wrong"
|
60
|
+
validates_with SEPA::CreditorIdentifierValidator, field_name: :crid
|
61
|
+
end
|
62
|
+
|
63
|
+
it 'should accept valid creditor_identifier' do
|
64
|
+
expect(Validatable).to accept('DE98ZZZ09999999999', 'AT12ZZZ00000000001', 'FR12ZZZ123456', 'NL97ZZZ123456780001', for: [:creditor_identifier, :crid])
|
65
|
+
end
|
66
|
+
|
67
|
+
it 'should not accept an invalid creditor_identifier' do
|
68
|
+
expect(Validatable).not_to accept('', 'xxx', 'DE98ZZZ099999999990', for: [:creditor_identifier, :crid])
|
69
|
+
end
|
70
|
+
|
71
|
+
it "should customize error message" do
|
72
|
+
v = Validatable.new(:creditor_identifier => 'xxx')
|
73
|
+
v.valid?
|
74
|
+
expect(v.errors[:creditor_identifier]).to eq(['xxx seems wrong'])
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
describe SEPA::MandateIdentifierValidator do
|
79
|
+
class Validatable
|
80
|
+
include ActiveModel::Model
|
81
|
+
attr_accessor :mandate_id, :mid
|
82
|
+
validates_with SEPA::MandateIdentifierValidator, message: "%{value} seems wrong"
|
83
|
+
validates_with SEPA::MandateIdentifierValidator, field_name: :mid
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'should accept valid mandate_identifier' do
|
87
|
+
expect(Validatable).to accept('XYZ-123', "+?/-:().,'", 'X' * 35, for: [:mandate_id, :mid])
|
88
|
+
end
|
89
|
+
|
90
|
+
it 'should not accept an invalid mandate_identifier' do
|
91
|
+
expect(Validatable).not_to accept(nil, '', 'X' * 36, 'ABC 123', '#/*', 'Ümläüt', for: [:mandate_id, :mid])
|
92
|
+
end
|
93
|
+
|
94
|
+
it "should customize error message" do
|
95
|
+
v = Validatable.new(:mandate_id => 'ABC 123')
|
96
|
+
v.valid?
|
97
|
+
expect(v.errors[:mandate_id]).to eq(['ABC 123 seems wrong'])
|
98
|
+
end
|
99
|
+
end
|
metadata
ADDED
@@ -0,0 +1,254 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: sepa_king_extended
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.10.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Georg Leciejewski
|
8
|
+
- Georg Ledermann
|
9
|
+
- Chris Okamoto
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2018-04-10 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: activemodel
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - ">="
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 3.0.0
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: 3.0.0
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: builder
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '0'
|
36
|
+
type: :runtime
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '0'
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: iban-tools
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '0'
|
50
|
+
type: :runtime
|
51
|
+
prerelease: false
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
57
|
+
- !ruby/object:Gem::Dependency
|
58
|
+
name: bundler
|
59
|
+
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
64
|
+
type: :development
|
65
|
+
prerelease: false
|
66
|
+
version_requirements: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0'
|
71
|
+
- !ruby/object:Gem::Dependency
|
72
|
+
name: rspec
|
73
|
+
requirement: !ruby/object:Gem::Requirement
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
type: :development
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: !ruby/object:Gem::Requirement
|
81
|
+
requirements:
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: '0'
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: coveralls
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '0'
|
92
|
+
type: :development
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
name: simplecov
|
101
|
+
requirement: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - ">="
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: '0'
|
106
|
+
type: :development
|
107
|
+
prerelease: false
|
108
|
+
version_requirements: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0'
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: rake
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - ">="
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: '0'
|
120
|
+
type: :development
|
121
|
+
prerelease: false
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
123
|
+
requirements:
|
124
|
+
- - ">="
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: '0'
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: nokogiri
|
129
|
+
requirement: !ruby/object:Gem::Requirement
|
130
|
+
requirements:
|
131
|
+
- - "~>"
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
version: '1'
|
134
|
+
type: :development
|
135
|
+
prerelease: false
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
requirements:
|
138
|
+
- - "~>"
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: '1'
|
141
|
+
description: Accepts payment type 3 - for payments in CHF and not SEPA in pain.0001.0001.03
|
142
|
+
(ISO 20022)
|
143
|
+
email:
|
144
|
+
- gl@salesking.eu
|
145
|
+
- mail@georg-ledermann.de
|
146
|
+
- christiane.okamoto@gmail.com
|
147
|
+
executables: []
|
148
|
+
extensions: []
|
149
|
+
extra_rdoc_files: []
|
150
|
+
files:
|
151
|
+
- ".gitignore"
|
152
|
+
- ".rspec"
|
153
|
+
- ".travis.yml"
|
154
|
+
- CONTRIBUTING.md
|
155
|
+
- Gemfile
|
156
|
+
- LICENSE.txt
|
157
|
+
- README.md
|
158
|
+
- Rakefile
|
159
|
+
- gemfiles/Gemfile-activemodel-3.0.x
|
160
|
+
- gemfiles/Gemfile-activemodel-3.1.x
|
161
|
+
- gemfiles/Gemfile-activemodel-3.2.x
|
162
|
+
- gemfiles/Gemfile-activemodel-4.0.x
|
163
|
+
- gemfiles/Gemfile-activemodel-4.1.x
|
164
|
+
- gemfiles/Gemfile-activemodel-4.2.x
|
165
|
+
- gemfiles/Gemfile-activemodel-5.0.x
|
166
|
+
- gemfiles/Gemfile-activemodel-5.1.x
|
167
|
+
- lib/schema/pain.001.001.03.xsd
|
168
|
+
- lib/schema/pain.001.002.03.xsd
|
169
|
+
- lib/schema/pain.001.003.03.xsd
|
170
|
+
- lib/schema/pain.008.001.02.xsd
|
171
|
+
- lib/schema/pain.008.002.02.xsd
|
172
|
+
- lib/schema/pain.008.003.02.xsd
|
173
|
+
- lib/sepa_king.rb
|
174
|
+
- lib/sepa_king/account.rb
|
175
|
+
- lib/sepa_king/account/creditor_account.rb
|
176
|
+
- lib/sepa_king/account/debtor_account.rb
|
177
|
+
- lib/sepa_king/converter.rb
|
178
|
+
- lib/sepa_king/message.rb
|
179
|
+
- lib/sepa_king/message/credit_transfer.rb
|
180
|
+
- lib/sepa_king/message/direct_debit.rb
|
181
|
+
- lib/sepa_king/transaction.rb
|
182
|
+
- lib/sepa_king/transaction/credit_transfer_transaction.rb
|
183
|
+
- lib/sepa_king/transaction/direct_debit_transaction.rb
|
184
|
+
- lib/sepa_king/validator.rb
|
185
|
+
- lib/sepa_king/version.rb
|
186
|
+
- sepa_king_extended.gemspec
|
187
|
+
- spec/account_spec.rb
|
188
|
+
- spec/converter_spec.rb
|
189
|
+
- spec/credit_transfer_spec.rb
|
190
|
+
- spec/credit_transfer_transaction_spec.rb
|
191
|
+
- spec/creditor_account_spec.rb
|
192
|
+
- spec/debtor_account_spec.rb
|
193
|
+
- spec/direct_debit_spec.rb
|
194
|
+
- spec/direct_debit_transaction_spec.rb
|
195
|
+
- spec/examples/pain.001.001.03.xml
|
196
|
+
- spec/examples/pain.001.002.03.xml
|
197
|
+
- spec/examples/pain.001.003.03.xml
|
198
|
+
- spec/examples/pain.008.002.02.xml
|
199
|
+
- spec/examples/pain.008.003.02.xml
|
200
|
+
- spec/message_spec.rb
|
201
|
+
- spec/spec_helper.rb
|
202
|
+
- spec/support/active_model.rb
|
203
|
+
- spec/support/custom_matcher.rb
|
204
|
+
- spec/support/factories.rb
|
205
|
+
- spec/support/validations.rb
|
206
|
+
- spec/transaction_spec.rb
|
207
|
+
- spec/validation_spec.rb
|
208
|
+
- spec/validator_spec.rb
|
209
|
+
homepage: https://github.com/chrisokamoto/sepa_king_extended
|
210
|
+
licenses: []
|
211
|
+
metadata: {}
|
212
|
+
post_install_message:
|
213
|
+
rdoc_options: []
|
214
|
+
require_paths:
|
215
|
+
- lib
|
216
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
217
|
+
requirements:
|
218
|
+
- - ">="
|
219
|
+
- !ruby/object:Gem::Version
|
220
|
+
version: 2.0.0
|
221
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
222
|
+
requirements:
|
223
|
+
- - ">="
|
224
|
+
- !ruby/object:Gem::Version
|
225
|
+
version: '0'
|
226
|
+
requirements: []
|
227
|
+
rubyforge_project:
|
228
|
+
rubygems_version: 2.6.12
|
229
|
+
signing_key:
|
230
|
+
specification_version: 4
|
231
|
+
summary: Ruby gem for creating SEPA XML files
|
232
|
+
test_files:
|
233
|
+
- spec/account_spec.rb
|
234
|
+
- spec/converter_spec.rb
|
235
|
+
- spec/credit_transfer_spec.rb
|
236
|
+
- spec/credit_transfer_transaction_spec.rb
|
237
|
+
- spec/creditor_account_spec.rb
|
238
|
+
- spec/debtor_account_spec.rb
|
239
|
+
- spec/direct_debit_spec.rb
|
240
|
+
- spec/direct_debit_transaction_spec.rb
|
241
|
+
- spec/examples/pain.001.001.03.xml
|
242
|
+
- spec/examples/pain.001.002.03.xml
|
243
|
+
- spec/examples/pain.001.003.03.xml
|
244
|
+
- spec/examples/pain.008.002.02.xml
|
245
|
+
- spec/examples/pain.008.003.02.xml
|
246
|
+
- spec/message_spec.rb
|
247
|
+
- spec/spec_helper.rb
|
248
|
+
- spec/support/active_model.rb
|
249
|
+
- spec/support/custom_matcher.rb
|
250
|
+
- spec/support/factories.rb
|
251
|
+
- spec/support/validations.rb
|
252
|
+
- spec/transaction_spec.rb
|
253
|
+
- spec/validation_spec.rb
|
254
|
+
- spec/validator_spec.rb
|