sepa_king 0.3.0 → 0.4.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c782f24fd4edb7c27ed3c93d2b9113c613decdde
4
- data.tar.gz: 90903c14ff93ae5cd18edb7c0d9b5dc287804482
3
+ metadata.gz: eb96b170a8acd00636509ac62a5bccc71a021c51
4
+ data.tar.gz: 7891df444dd4d48f880c00de9726ab9d15aeee02
5
5
  SHA512:
6
- metadata.gz: 030d75374b6a7da5de63f09e0a92d054d02e3f73f1693ec5b4abd1809f85746339906f6dfd721e49de26494e333459306fe1ab4b8e2a3255a12e51ba79b6ef5f
7
- data.tar.gz: 01cea9bd4e23bf5b6aeddc3c021310e1922161f9e434d53c44a7b4b3b8967c49896cf2530ad5b2411e19360860d61395788b7469a8400b7b70061dfafe6b595b
6
+ metadata.gz: cb894f09d419a8b8343d54d901ae90c051340aecaed797895d89f61d0e90cfeb18917b33289a1dd90dfb6b51934835b00e6142f69278e2d51731f2c12f4f29e7
7
+ data.tar.gz: ce5d81ca206169d78e046f2dc7bac69029989e348e29eb83e709c3af3f6140e1fe11a7d05916711afde575aa82787cafde0202f605580817f8c3466a09177885
data/.travis.yml CHANGED
@@ -1,4 +1,10 @@
1
1
  rvm:
2
2
  - 1.9.3
3
3
  - 2.0.0
4
- - 2.1.0
4
+ - 2.1.1
5
+ gemfile:
6
+ - gemfiles/Gemfile-activemodel-3.0.x
7
+ - gemfiles/Gemfile-activemodel-3.1.x
8
+ - gemfiles/Gemfile-activemodel-3.2.x
9
+ - gemfiles/Gemfile-activemodel-4.0.x
10
+ - gemfiles/Gemfile-activemodel-4.1.x
data/README.md CHANGED
@@ -73,6 +73,10 @@ sdd.add_transaction(
73
73
  # Number with two decimal digit
74
74
  amount: 39.99,
75
75
 
76
+ # OPTIONAL: Instruction Identification, will not be submitted to the debtor
77
+ # String, max. 35 char
78
+ instruction: '12345',
79
+
76
80
  # OPTIONAL: End-To-End-Identification, will be submitted to the debtor
77
81
  # String, max. 35 char
78
82
  reference: 'XYZ/2013-08-ABO/6789',
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec path: '..'
4
+
5
+ gem 'activemodel', '~>3.0.0'
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec path: '..'
4
+
5
+ gem 'activemodel', '~>3.1.0'
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec path: '..'
4
+
5
+ gem 'activemodel', '~>3.2.0'
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec path: '..'
4
+
5
+ gem 'activemodel', '~>4.0.0'
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec path: '..'
4
+
5
+ gem 'activemodel', '~>4.1.0'
@@ -18,17 +18,7 @@ module SEPA
18
18
  def convert_text(value)
19
19
  return unless value
20
20
 
21
- text = value.to_s.
22
- # Convert german umlauts
23
- gsub('Ä', 'AE').
24
- gsub('Ü', 'UE').
25
- gsub('Ö', 'OE').
26
- gsub('ä', 'ae').
27
- gsub('ü', 'ue').
28
- gsub('ö', 'oe').
29
- gsub('ß', 'ss')
30
-
31
- I18n.transliterate(text).
21
+ I18n.transliterate(value.to_s).
32
22
  # Change linebreaks to whitespaces
33
23
  gsub(/\n+/,' ').
34
24
  # Remove all invalid characters
@@ -63,6 +63,9 @@ module SEPA
63
63
  def build_transaction(builder, transaction)
64
64
  builder.CdtTrfTxInf do
65
65
  builder.PmtId do
66
+ if transaction.instruction.present?
67
+ builder.InstrId(transaction.instruction)
68
+ end
66
69
  builder.EndToEndId(transaction.reference)
67
70
  end
68
71
  builder.Amt do
@@ -4,11 +4,12 @@ module SEPA
4
4
  include ActiveModel::Validations
5
5
  extend Converter
6
6
 
7
- attr_accessor :name, :iban, :bic, :amount, :reference, :remittance_information, :requested_date, :batch_booking
8
- convert :name, :reference, :remittance_information, to: :text
7
+ attr_accessor :name, :iban, :bic, :amount, :instruction, :reference, :remittance_information, :requested_date, :batch_booking
8
+ convert :name, :instruction, :reference, :remittance_information, to: :text
9
9
  convert :amount, to: :decimal
10
10
 
11
11
  validates_length_of :name, within: 1..70
12
+ validates_length_of :instruction, within: 1..35, allow_nil: true
12
13
  validates_length_of :reference, within: 1..35, allow_nil: true
13
14
  validates_length_of :remittance_information, within: 1..140, allow_nil: true
14
15
  validates_numericality_of :amount, greater_than: 0
@@ -1,3 +1,3 @@
1
1
  module SEPA
2
- VERSION = '0.3.0'
2
+ VERSION = '0.4.0'
3
3
  end
data/sepa_king.gemspec CHANGED
@@ -20,13 +20,13 @@ Gem::Specification.new do |s|
20
20
 
21
21
  s.required_ruby_version = '>= 1.9.3'
22
22
 
23
- s.add_runtime_dependency 'activemodel'
23
+ s.add_runtime_dependency 'activemodel', '>= 3.0.0'
24
24
  s.add_runtime_dependency 'i18n'
25
25
  s.add_runtime_dependency 'builder'
26
26
  s.add_runtime_dependency 'iban-tools'
27
27
 
28
- s.add_development_dependency 'bundler', '~> 1.3'
29
- s.add_development_dependency 'rspec', '>=2.14'
28
+ s.add_development_dependency 'bundler'
29
+ s.add_development_dependency 'rspec', '~> 3.0'
30
30
  s.add_development_dependency 'coveralls'
31
31
  s.add_development_dependency 'simplecov'
32
32
  s.add_development_dependency 'rake'
data/spec/account_spec.rb CHANGED
@@ -12,31 +12,31 @@ describe SEPA::Account do
12
12
 
13
13
  describe :name do
14
14
  it 'should accept valid value' do
15
- SEPA::Account.should accept('Gläubiger GmbH', 'Zahlemann & Söhne GbR', 'X' * 70, for: :name)
15
+ expect(SEPA::Account).to accept('Gläubiger GmbH', 'Zahlemann & Söhne GbR', 'X' * 70, for: :name)
16
16
  end
17
17
 
18
18
  it 'should not accept invalid value' do
19
- SEPA::Account.should_not accept(nil, '', 'X' * 71, for: :name)
19
+ expect(SEPA::Account).not_to accept(nil, '', 'X' * 71, for: :name)
20
20
  end
21
21
  end
22
22
 
23
23
  describe :iban do
24
24
  it 'should accept valid value' do
25
- SEPA::Account.should accept('DE21500500009876543210', 'PL61109010140000071219812874', for: :iban)
25
+ expect(SEPA::Account).to accept('DE21500500009876543210', 'PL61109010140000071219812874', for: :iban)
26
26
  end
27
27
 
28
28
  it 'should not accept invalid value' do
29
- SEPA::Account.should_not accept(nil, '', 'invalid', for: :iban)
29
+ expect(SEPA::Account).not_to accept(nil, '', 'invalid', for: :iban)
30
30
  end
31
31
  end
32
32
 
33
33
  describe :bic do
34
34
  it 'should accept valid value' do
35
- SEPA::Account.should accept('DEUTDEFF', 'DEUTDEFF500', 'SPUEDE2UXXX', for: :bic)
35
+ expect(SEPA::Account).to accept('DEUTDEFF', 'DEUTDEFF500', 'SPUEDE2UXXX', for: :bic)
36
36
  end
37
37
 
38
38
  it 'should not accept invalid value' do
39
- SEPA::Account.should_not accept('', 'invalid', for: :bic)
39
+ expect(SEPA::Account).not_to accept('', 'invalid', for: :bic)
40
40
  end
41
41
  end
42
42
  end
@@ -6,48 +6,48 @@ describe SEPA::Converter do
6
6
 
7
7
  describe :convert_text do
8
8
  it 'should remove invalid chars' do
9
- convert_text('&@"=<>!').should == ''
9
+ expect(convert_text('&@"=<>!')).to eq('')
10
10
  end
11
11
 
12
12
  it 'should not touch valid chars' do
13
- convert_text("abc-ABC-0123- ':?,-(+.)/").should == "abc-ABC-0123- ':?,-(+.)/"
13
+ expect(convert_text("abc-ABC-0123- ':?,-(+.)/")).to eq("abc-ABC-0123- ':?,-(+.)/")
14
14
  end
15
15
 
16
16
  it 'should convert umlaute' do
17
- convert_text('üöäÜÖÄß').should == 'ueoeaeUEOEAEss'
17
+ expect(convert_text('üöäÜÖÄß')).to eq('uoaUOAss')
18
18
  end
19
19
 
20
20
  it 'should convert line breaks' do
21
- convert_text("one\ntwo") .should == 'one two'
22
- convert_text("one\ntwo\n") .should == 'one two'
23
- convert_text("\none\ntwo\n").should == 'one two'
24
- convert_text("one\n\ntwo") .should == 'one two'
21
+ expect(convert_text("one\ntwo")) .to eq('one two')
22
+ expect(convert_text("one\ntwo\n")) .to eq('one two')
23
+ expect(convert_text("\none\ntwo\n")).to eq('one two')
24
+ expect(convert_text("one\n\ntwo")) .to eq('one two')
25
25
  end
26
26
 
27
27
  it 'should convert number' do
28
- convert_text(1234).should == '1234'
28
+ expect(convert_text(1234)).to eq('1234')
29
29
  end
30
30
 
31
31
  it 'should not touch nil' do
32
- convert_text(nil).should == nil
32
+ expect(convert_text(nil)).to eq(nil)
33
33
  end
34
34
  end
35
35
 
36
36
  describe :convert_decimal do
37
37
  it "should convert Integer to BigDecimal" do
38
- convert_decimal(42).should == BigDecimal('42.00')
38
+ expect(convert_decimal(42)).to eq(BigDecimal('42.00'))
39
39
  end
40
40
 
41
41
  it "should convert Float to BigDecimal" do
42
- convert_decimal(42.12).should == BigDecimal('42.12')
42
+ expect(convert_decimal(42.12)).to eq(BigDecimal('42.12'))
43
43
  end
44
44
 
45
45
  it 'should round' do
46
- convert_decimal(1.345).should == BigDecimal('1.35')
46
+ expect(convert_decimal(1.345)).to eq(BigDecimal('1.35'))
47
47
  end
48
48
 
49
49
  it 'should not touch nil' do
50
- convert_decimal(nil).should == nil
50
+ expect(convert_decimal(nil)).to eq(nil)
51
51
  end
52
52
  end
53
53
  end
@@ -22,7 +22,7 @@ describe SEPA::CreditTransfer do
22
22
  credit_transfer.add_transaction(credit_transfer_transaction)
23
23
  end
24
24
 
25
- expect(credit_transfer).to have(3).transactions
25
+ expect(credit_transfer.transactions.size).to eq(3)
26
26
  end
27
27
 
28
28
  it 'should fail for invalid transaction' do
@@ -120,73 +120,73 @@ describe SEPA::CreditTransfer do
120
120
  end
121
121
 
122
122
  it 'should have message_identification' do
123
- subject.should have_xml('//Document/CstmrCdtTrfInitn/GrpHdr/MsgId', /SEPA-KING\/[0-9]+/)
123
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/GrpHdr/MsgId', /SEPA-KING\/[0-9]+/)
124
124
  end
125
125
 
126
126
  it 'should contain <PmtInfId>' do
127
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
127
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
128
128
  end
129
129
 
130
130
  it 'should contain <ReqdExctnDt>' do
131
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/ReqdExctnDt', Date.today.next.iso8601)
131
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/ReqdExctnDt', Date.today.next.iso8601)
132
132
  end
133
133
 
134
134
  it 'should contain <PmtMtd>' do
135
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/PmtMtd', 'TRF')
135
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/PmtMtd', 'TRF')
136
136
  end
137
137
 
138
138
  it 'should contain <BtchBookg>' do
139
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/BtchBookg', 'true')
139
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/BtchBookg', 'true')
140
140
  end
141
141
 
142
142
  it 'should contain <NbOfTxs>' do
143
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/NbOfTxs', '2')
143
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/NbOfTxs', '2')
144
144
  end
145
145
 
146
146
  it 'should contain <CtrlSum>' do
147
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CtrlSum', '161.50')
147
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CtrlSum', '161.50')
148
148
  end
149
149
 
150
150
  it 'should contain <Dbtr>' do
151
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/Dbtr/Nm', 'Schuldner GmbH')
151
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/Dbtr/Nm', 'Schuldner GmbH')
152
152
  end
153
153
 
154
154
  it 'should contain <DbtrAcct>' do
155
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/DbtrAcct/Id/IBAN', 'DE87200500001234567890')
155
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/DbtrAcct/Id/IBAN', 'DE87200500001234567890')
156
156
  end
157
157
 
158
158
  it 'should contain <DbtrAgt>' do
159
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/DbtrAgt/FinInstnId/BIC', 'BANKDEFFXXX')
159
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/DbtrAgt/FinInstnId/BIC', 'BANKDEFFXXX')
160
160
  end
161
161
 
162
162
  it 'should contain <EndToEndId>' do
163
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/PmtId/EndToEndId', 'XYZ-1234/123')
164
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/PmtId/EndToEndId', 'XYZ-5678/456')
163
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/PmtId/EndToEndId', 'XYZ-1234/123')
164
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/PmtId/EndToEndId', 'XYZ-5678/456')
165
165
  end
166
166
 
167
167
  it 'should contain <Amt>' do
168
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/Amt/InstdAmt', '102.50')
169
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/Amt/InstdAmt', '59.00')
168
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/Amt/InstdAmt', '102.50')
169
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/Amt/InstdAmt', '59.00')
170
170
  end
171
171
 
172
172
  it 'should contain <CdtrAgt> for every BIC given' do
173
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/CdtrAgt/FinInstnId/BIC', 'PBNKDEFF370')
174
- subject.should_not have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/CdtrAgt')
173
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/CdtrAgt/FinInstnId/BIC', 'PBNKDEFF370')
174
+ expect(subject).not_to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/CdtrAgt')
175
175
  end
176
176
 
177
177
  it 'should contain <Cdtr>' do
178
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/Cdtr/Nm', 'Telekomiker AG')
179
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/Cdtr/Nm', 'Amazonas GmbH')
178
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/Cdtr/Nm', 'Telekomiker AG')
179
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/Cdtr/Nm', 'Amazonas GmbH')
180
180
  end
181
181
 
182
182
  it 'should contain <CdtrAcct>' do
183
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/CdtrAcct/Id/IBAN', 'DE37112589611964645802')
184
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/CdtrAcct/Id/IBAN', 'DE27793589132923472195')
183
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/CdtrAcct/Id/IBAN', 'DE37112589611964645802')
184
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/CdtrAcct/Id/IBAN', 'DE27793589132923472195')
185
185
  end
186
186
 
187
187
  it 'should contain <RmtInf>' do
188
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/RmtInf/Ustrd', 'Rechnung vom 22.08.2013')
189
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/RmtInf/Ustrd', 'Rechnung vom 21.08.2013')
188
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[1]/RmtInf/Ustrd', 'Rechnung vom 22.08.2013')
189
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf/CdtTrfTxInf[2]/RmtInf/Ustrd', 'Rechnung vom 21.08.2013')
190
190
  end
191
191
  end
192
192
 
@@ -202,15 +202,15 @@ describe SEPA::CreditTransfer do
202
202
  end
203
203
 
204
204
  it 'should contain two payment_informations with <ReqdExctnDt>' do
205
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/ReqdExctnDt', (Date.today + 1).iso8601)
206
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/ReqdExctnDt', (Date.today + 2).iso8601)
205
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/ReqdExctnDt', (Date.today + 1).iso8601)
206
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/ReqdExctnDt', (Date.today + 2).iso8601)
207
207
 
208
- subject.should_not have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]')
208
+ expect(subject).not_to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]')
209
209
  end
210
210
 
211
211
  it 'should contain two payment_informations with different <PmtInfId>' do
212
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
213
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/PmtInfId', /SEPA-KING\/[0-9]+\/2/)
212
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
213
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/PmtInfId', /SEPA-KING\/[0-9]+\/2/)
214
214
  end
215
215
  end
216
216
 
@@ -226,10 +226,10 @@ describe SEPA::CreditTransfer do
226
226
  end
227
227
 
228
228
  it 'should contain two payment_informations with <BtchBookg>' do
229
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/BtchBookg', 'false')
230
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/BtchBookg', 'true')
229
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/BtchBookg', 'false')
230
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/BtchBookg', 'true')
231
231
 
232
- subject.should_not have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]')
232
+ expect(subject).not_to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]')
233
233
  end
234
234
  end
235
235
 
@@ -246,24 +246,24 @@ describe SEPA::CreditTransfer do
246
246
  end
247
247
 
248
248
  it 'should contain multiple payment_informations' do
249
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/ReqdExctnDt', (Date.today + 1).iso8601)
250
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/BtchBookg', 'false')
249
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/ReqdExctnDt', (Date.today + 1).iso8601)
250
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/BtchBookg', 'false')
251
251
 
252
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/ReqdExctnDt', (Date.today + 1).iso8601)
253
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/BtchBookg', 'true')
252
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/ReqdExctnDt', (Date.today + 1).iso8601)
253
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/BtchBookg', 'true')
254
254
 
255
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]/ReqdExctnDt', (Date.today + 2).iso8601)
256
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]/BtchBookg', 'false')
255
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]/ReqdExctnDt', (Date.today + 2).iso8601)
256
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]/BtchBookg', 'false')
257
257
 
258
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[4]/ReqdExctnDt', (Date.today + 2).iso8601)
259
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[4]/BtchBookg', 'true')
258
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[4]/ReqdExctnDt', (Date.today + 2).iso8601)
259
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[4]/BtchBookg', 'true')
260
260
  end
261
261
 
262
262
  it 'should have multiple control sums' do
263
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/CtrlSum', '1.00')
264
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/CtrlSum', '2.00')
265
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]/CtrlSum', '4.00')
266
- subject.should have_xml('//Document/CstmrCdtTrfInitn/PmtInf[4]/CtrlSum', '8.00')
263
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[1]/CtrlSum', '1.00')
264
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[2]/CtrlSum', '2.00')
265
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[3]/CtrlSum', '4.00')
266
+ expect(subject).to have_xml('//Document/CstmrCdtTrfInitn/PmtInf[4]/CtrlSum', '8.00')
267
267
  end
268
268
  end
269
269
  end
@@ -18,29 +18,29 @@ describe SEPA::CreditTransferTransaction do
18
18
  describe :schema_compatible? do
19
19
  context 'for pain.001.003.03' do
20
20
  it 'should success' do
21
- SEPA::CreditTransferTransaction.new({}).should be_schema_compatible('pain.001.003.03')
21
+ expect(SEPA::CreditTransferTransaction.new({})).to be_schema_compatible('pain.001.003.03')
22
22
  end
23
23
  end
24
24
 
25
25
  context 'pain.001.002.03' do
26
26
  it 'should success for valid attributes' do
27
- SEPA::CreditTransferTransaction.new(:bic => 'SPUEDE2UXXX', :service_level => 'SEPA').should be_schema_compatible('pain.001.002.03')
27
+ expect(SEPA::CreditTransferTransaction.new(:bic => 'SPUEDE2UXXX', :service_level => 'SEPA')).to be_schema_compatible('pain.001.002.03')
28
28
  end
29
29
 
30
30
  it 'should fail for invalid attributes' do
31
- SEPA::CreditTransferTransaction.new(:bic => nil).should_not be_schema_compatible('pain.001.002.03')
32
- SEPA::CreditTransferTransaction.new(:bic => 'SPUEDE2UXXX', :service_level => 'URGP').should_not be_schema_compatible('pain.001.002.03')
31
+ expect(SEPA::CreditTransferTransaction.new(:bic => nil)).not_to be_schema_compatible('pain.001.002.03')
32
+ expect(SEPA::CreditTransferTransaction.new(:bic => 'SPUEDE2UXXX', :service_level => 'URGP')).not_to be_schema_compatible('pain.001.002.03')
33
33
  end
34
34
  end
35
35
  end
36
36
 
37
37
  context 'Requested date' do
38
38
  it 'should allow valid value' do
39
- SEPA::CreditTransferTransaction.should accept(nil, Date.today, Date.today.next, Date.today + 2, for: :requested_date)
39
+ expect(SEPA::CreditTransferTransaction).to accept(nil, Date.today, Date.today.next, Date.today + 2, for: :requested_date)
40
40
  end
41
41
 
42
42
  it 'should not allow invalid value' do
43
- SEPA::CreditTransferTransaction.should_not accept(Date.new(1995,12,21), Date.today - 1, for: :requested_date)
43
+ expect(SEPA::CreditTransferTransaction).not_to accept(Date.new(1995,12,21), Date.today - 1, for: :requested_date)
44
44
  end
45
45
  end
46
46
  end
@@ -13,11 +13,11 @@ describe SEPA::CreditorAccount do
13
13
 
14
14
  describe :creditor_identifier do
15
15
  it 'should accept valid value' do
16
- SEPA::CreditorAccount.should accept('DE98ZZZ09999999999', 'AT12ZZZ00000000001', 'IT97ZZZA1B2C3D4E5F6G7H8', 'NL97ZZZ123456780001', 'FR12ZZZ123456', for: :creditor_identifier)
16
+ expect(SEPA::CreditorAccount).to accept('DE98ZZZ09999999999', 'AT12ZZZ00000000001', 'IT97ZZZA1B2C3D4E5F6G7H8', 'NL97ZZZ123456780001', 'FR12ZZZ123456', for: :creditor_identifier)
17
17
  end
18
18
 
19
19
  it 'should not accept invalid value' do
20
- SEPA::CreditorAccount.should_not accept('', 'invalid', 'DE98ZZZ099999999990', 'DEAAAAAAAAAAAAAAAA', for: :creditor_identifier)
20
+ expect(SEPA::CreditorAccount).not_to accept('', 'invalid', 'DE98ZZZ099999999990', 'DEAAAAAAAAAAAAAAAA', for: :creditor_identifier)
21
21
  end
22
22
  end
23
23
  end
@@ -23,7 +23,7 @@ describe SEPA::DirectDebit do
23
23
  direct_debit.add_transaction(direct_debt_transaction)
24
24
  end
25
25
 
26
- expect(direct_debit).to have(3).transactions
26
+ expect(direct_debit.transactions.size).to eq(3)
27
27
  end
28
28
 
29
29
  it 'should fail for invalid transaction' do
@@ -57,7 +57,7 @@ describe SEPA::DirectDebit do
57
57
  direct_debit.add_transaction(direct_debt_transaction(reference: "EXAMPLE REFERENCE 2", requested_date: Date.today.next.next))
58
58
  direct_debit.add_transaction(direct_debt_transaction(reference: "EXAMPLE REFERENCE 3"))
59
59
 
60
- expect(direct_debit.batches).to have(2).items
60
+ expect(direct_debit.batches.size).to eq(2)
61
61
  expect(direct_debit.batches[0]).to match(/SEPA-KING\/[0-9]+/)
62
62
  expect(direct_debit.batches[1]).to match(/SEPA-KING\/[0-9]+/)
63
63
  end
@@ -164,87 +164,87 @@ describe SEPA::DirectDebit do
164
164
  end
165
165
 
166
166
  it 'should have message_identification' do
167
- subject.should have_xml('//Document/CstmrDrctDbtInitn/GrpHdr/MsgId', /SEPA-KING\/[0-9]+/)
167
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/GrpHdr/MsgId', /SEPA-KING\/[0-9]+/)
168
168
  end
169
169
 
170
170
  it 'should contain <PmtInfId>' do
171
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
171
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
172
172
  end
173
173
 
174
174
  it 'should contain <ReqdColltnDt>' do
175
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/ReqdColltnDt', Date.today.next.iso8601)
175
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/ReqdColltnDt', Date.today.next.iso8601)
176
176
  end
177
177
 
178
178
  it 'should contain <PmtMtd>' do
179
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/PmtMtd', 'DD')
179
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/PmtMtd', 'DD')
180
180
  end
181
181
 
182
182
  it 'should contain <BtchBookg>' do
183
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/BtchBookg', 'true')
183
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/BtchBookg', 'true')
184
184
  end
185
185
 
186
186
  it 'should contain <NbOfTxs>' do
187
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/NbOfTxs', '2')
187
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/NbOfTxs', '2')
188
188
  end
189
189
 
190
190
  it 'should contain <CtrlSum>' do
191
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CtrlSum', '789.99')
191
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CtrlSum', '789.99')
192
192
  end
193
193
 
194
194
  it 'should contain <Cdtr>' do
195
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/Cdtr/Nm', 'Glaeubiger GmbH')
195
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/Cdtr/Nm', 'Glaubiger GmbH')
196
196
  end
197
197
 
198
198
  it 'should contain <CdtrAcct>' do
199
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CdtrAcct/Id/IBAN', 'DE87200500001234567890')
199
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CdtrAcct/Id/IBAN', 'DE87200500001234567890')
200
200
  end
201
201
 
202
202
  it 'should contain <CdtrAgt>' do
203
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CdtrAgt/FinInstnId/BIC', 'BANKDEFFXXX')
203
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CdtrAgt/FinInstnId/BIC', 'BANKDEFFXXX')
204
204
  end
205
205
 
206
206
  it 'should contain <CdtrAgt>' do
207
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CdtrSchmeId/Id/PrvtId/Othr/Id', 'DE98ZZZ09999999999')
207
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/CdtrSchmeId/Id/PrvtId/Othr/Id', 'DE98ZZZ09999999999')
208
208
  end
209
209
 
210
210
  it 'should contain <EndToEndId>' do
211
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/PmtId/EndToEndId', 'XYZ/2013-08-ABO/12345')
212
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/PmtId/EndToEndId', 'XYZ/2013-08-ABO/6789')
211
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/PmtId/EndToEndId', 'XYZ/2013-08-ABO/12345')
212
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/PmtId/EndToEndId', 'XYZ/2013-08-ABO/6789')
213
213
  end
214
214
 
215
215
  it 'should contain <InstdAmt>' do
216
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/InstdAmt', '39.99')
217
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/InstdAmt', '750.00')
216
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/InstdAmt', '39.99')
217
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/InstdAmt', '750.00')
218
218
  end
219
219
 
220
220
  it 'should contain <MndtId>' do
221
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DrctDbtTx/MndtRltdInf/MndtId', 'K-02-2011-12345')
222
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DrctDbtTx/MndtRltdInf/MndtId', 'K-08-2010-42123')
221
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DrctDbtTx/MndtRltdInf/MndtId', 'K-02-2011-12345')
222
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DrctDbtTx/MndtRltdInf/MndtId', 'K-08-2010-42123')
223
223
  end
224
224
 
225
225
  it 'should contain <DtOfSgntr>' do
226
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DrctDbtTx/MndtRltdInf/DtOfSgntr', '2011-01-25')
227
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DrctDbtTx/MndtRltdInf/DtOfSgntr', '2010-07-25')
226
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DrctDbtTx/MndtRltdInf/DtOfSgntr', '2011-01-25')
227
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DrctDbtTx/MndtRltdInf/DtOfSgntr', '2010-07-25')
228
228
  end
229
229
 
230
230
  it 'should contain <DbtrAgt>' do
231
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DbtrAgt/FinInstnId/BIC', 'SPUEDE2UXXX')
232
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DbtrAgt/FinInstnId/Othr/Id', 'NOTPROVIDED')
231
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DbtrAgt/FinInstnId/BIC', 'SPUEDE2UXXX')
232
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DbtrAgt/FinInstnId/Othr/Id', 'NOTPROVIDED')
233
233
  end
234
234
 
235
235
  it 'should contain <Dbtr>' do
236
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/Dbtr/Nm', 'Zahlemann Soehne GbR')
237
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/Dbtr/Nm', 'Meier Schulze oHG')
236
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/Dbtr/Nm', 'Zahlemann Sohne GbR')
237
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/Dbtr/Nm', 'Meier Schulze oHG')
238
238
  end
239
239
 
240
240
  it 'should contain <DbtrAcct>' do
241
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DbtrAcct/Id/IBAN', 'DE21500500009876543210')
242
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DbtrAcct/Id/IBAN', 'DE68210501700012345678')
241
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/DbtrAcct/Id/IBAN', 'DE21500500009876543210')
242
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/DbtrAcct/Id/IBAN', 'DE68210501700012345678')
243
243
  end
244
244
 
245
245
  it 'should contain <RmtInf>' do
246
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/RmtInf/Ustrd', 'Unsere Rechnung vom 10.08.2013')
247
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/RmtInf/Ustrd', 'Vielen Dank fuer Ihren Einkauf')
246
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[1]/RmtInf/Ustrd', 'Unsere Rechnung vom 10.08.2013')
247
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf/DrctDbtTxInf[2]/RmtInf/Ustrd', 'Vielen Dank fur Ihren Einkauf')
248
248
  end
249
249
  end
250
250
 
@@ -260,15 +260,15 @@ describe SEPA::DirectDebit do
260
260
  end
261
261
 
262
262
  it 'should contain two payment_informations with <ReqdColltnDt>' do
263
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/ReqdColltnDt', (Date.today + 1).iso8601)
264
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/ReqdColltnDt', (Date.today + 2).iso8601)
263
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/ReqdColltnDt', (Date.today + 1).iso8601)
264
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/ReqdColltnDt', (Date.today + 2).iso8601)
265
265
 
266
- subject.should_not have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]')
266
+ expect(subject).not_to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]')
267
267
  end
268
268
 
269
269
  it 'should contain two payment_informations with different <PmtInfId>' do
270
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
271
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/PmtInfId', /SEPA-KING\/[0-9]+\/2/)
270
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/PmtInfId', /SEPA-KING\/[0-9]+\/1/)
271
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/PmtInfId', /SEPA-KING\/[0-9]+\/2/)
272
272
  end
273
273
  end
274
274
 
@@ -283,7 +283,7 @@ describe SEPA::DirectDebit do
283
283
  end
284
284
 
285
285
  it 'should have errors' do
286
- subject.should have(1).error_on(:base)
286
+ expect(subject.errors_on(:base).size).to eq(1)
287
287
  end
288
288
 
289
289
  it 'should raise error on XML generation' do
@@ -305,10 +305,10 @@ describe SEPA::DirectDebit do
305
305
  end
306
306
 
307
307
  it 'should contain two payment_informations with <LclInstrm>' do
308
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/PmtTpInf/SeqTp', 'OOFF')
309
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/PmtTpInf/SeqTp', 'FRST')
308
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/PmtTpInf/SeqTp', 'OOFF')
309
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/PmtTpInf/SeqTp', 'FRST')
310
310
 
311
- subject.should_not have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]')
311
+ expect(subject).not_to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]')
312
312
  end
313
313
  end
314
314
 
@@ -324,10 +324,10 @@ describe SEPA::DirectDebit do
324
324
  end
325
325
 
326
326
  it 'should contain two payment_informations with <BtchBookg>' do
327
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/BtchBookg', 'false')
328
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/BtchBookg', 'true')
327
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/BtchBookg', 'false')
328
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/BtchBookg', 'true')
329
329
 
330
- subject.should_not have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]')
330
+ expect(subject).not_to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]')
331
331
  end
332
332
  end
333
333
 
@@ -344,24 +344,24 @@ describe SEPA::DirectDebit do
344
344
  end
345
345
 
346
346
  it 'should contain multiple payment_informations' do
347
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/ReqdColltnDt', (Date.today + 1).iso8601)
348
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/PmtTpInf/SeqTp', 'OOFF')
347
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/ReqdColltnDt', (Date.today + 1).iso8601)
348
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/PmtTpInf/SeqTp', 'OOFF')
349
349
 
350
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/ReqdColltnDt', (Date.today + 1).iso8601)
351
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/PmtTpInf/SeqTp', 'FNAL')
350
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/ReqdColltnDt', (Date.today + 1).iso8601)
351
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/PmtTpInf/SeqTp', 'FNAL')
352
352
 
353
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]/ReqdColltnDt', (Date.today + 2).iso8601)
354
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]/PmtTpInf/SeqTp', 'OOFF')
353
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]/ReqdColltnDt', (Date.today + 2).iso8601)
354
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]/PmtTpInf/SeqTp', 'OOFF')
355
355
 
356
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[4]/ReqdColltnDt', (Date.today + 2).iso8601)
357
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[4]/PmtTpInf/SeqTp', 'FNAL')
356
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[4]/ReqdColltnDt', (Date.today + 2).iso8601)
357
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[4]/PmtTpInf/SeqTp', 'FNAL')
358
358
  end
359
359
 
360
360
  it 'should have multiple control sums' do
361
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/CtrlSum', '1.00')
362
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/CtrlSum', '2.00')
363
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]/CtrlSum', '4.00')
364
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[4]/CtrlSum', '8.00')
361
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/CtrlSum', '1.00')
362
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/CtrlSum', '2.00')
363
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[3]/CtrlSum', '4.00')
364
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[4]/CtrlSum', '8.00')
365
365
  end
366
366
  end
367
367
 
@@ -381,8 +381,8 @@ describe SEPA::DirectDebit do
381
381
  end
382
382
 
383
383
  it 'should contain two payment_informations with <Cdtr>' do
384
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/Cdtr/Nm', 'Glaeubiger GmbH')
385
- subject.should have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/Cdtr/Nm', 'Creditor Inc.')
384
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[1]/Cdtr/Nm', 'Glaubiger GmbH')
385
+ expect(subject).to have_xml('//Document/CstmrDrctDbtInitn/PmtInf[2]/Cdtr/Nm', 'Creditor Inc.')
386
386
  end
387
387
  end
388
388
  end
@@ -20,39 +20,39 @@ describe SEPA::DirectDebitTransaction do
20
20
  describe :schema_compatible? do
21
21
  context 'for pain.008.003.02' do
22
22
  it 'should success' do
23
- SEPA::DirectDebitTransaction.new({}).should be_schema_compatible('pain.008.003.02')
23
+ expect(SEPA::DirectDebitTransaction.new({})).to be_schema_compatible('pain.008.003.02')
24
24
  end
25
25
  end
26
26
 
27
27
  context 'for pain.008.002.02' do
28
28
  it 'should success for valid attributes' do
29
- SEPA::DirectDebitTransaction.new(:bic => 'SPUEDE2UXXX', :local_instrument => 'CORE').should be_schema_compatible('pain.008.002.02')
29
+ expect(SEPA::DirectDebitTransaction.new(:bic => 'SPUEDE2UXXX', :local_instrument => 'CORE')).to be_schema_compatible('pain.008.002.02')
30
30
  end
31
31
 
32
32
  it 'should fail for invalid attributes' do
33
- SEPA::DirectDebitTransaction.new(:bic => nil).should_not be_schema_compatible('pain.008.002.02')
34
- SEPA::DirectDebitTransaction.new(:bic => 'SPUEDE2UXXX', :local_instrument => 'COR1').should_not be_schema_compatible('pain.008.002.02')
33
+ expect(SEPA::DirectDebitTransaction.new(:bic => nil)).not_to be_schema_compatible('pain.008.002.02')
34
+ expect(SEPA::DirectDebitTransaction.new(:bic => 'SPUEDE2UXXX', :local_instrument => 'COR1')).not_to be_schema_compatible('pain.008.002.02')
35
35
  end
36
36
  end
37
37
  end
38
38
 
39
39
  context 'Mandate Date of Signature' do
40
40
  it 'should accept valid value' do
41
- SEPA::DirectDebitTransaction.should accept(Date.today, Date.today - 1, for: :mandate_date_of_signature)
41
+ expect(SEPA::DirectDebitTransaction).to accept(Date.today, Date.today - 1, for: :mandate_date_of_signature)
42
42
  end
43
43
 
44
44
  it 'should not accept invalid value' do
45
- SEPA::DirectDebitTransaction.should_not accept(nil, '2010-12-01', Date.today + 1, for: :mandate_date_of_signature)
45
+ expect(SEPA::DirectDebitTransaction).not_to accept(nil, '2010-12-01', Date.today + 1, for: :mandate_date_of_signature)
46
46
  end
47
47
  end
48
48
 
49
49
  context 'Requested date' do
50
50
  it 'should allow valid value' do
51
- SEPA::DirectDebitTransaction.should accept(nil, Date.today.next, Date.today + 2, for: :requested_date)
51
+ expect(SEPA::DirectDebitTransaction).to accept(nil, Date.today.next, Date.today + 2, for: :requested_date)
52
52
  end
53
53
 
54
54
  it 'should not allow invalid value' do
55
- SEPA::DirectDebitTransaction.should_not accept(Date.new(1995,12,21), Date.today - 1, Date.today, for: :requested_date)
55
+ expect(SEPA::DirectDebitTransaction).not_to accept(Date.new(1995,12,21), Date.today - 1, Date.today, for: :requested_date)
56
56
  end
57
57
  end
58
58
  end
data/spec/message_spec.rb CHANGED
@@ -20,11 +20,11 @@ describe SEPA::Message do
20
20
  end
21
21
 
22
22
  it 'should sum up all transactions' do
23
- subject.amount_total.should == 3.3
23
+ expect(subject.amount_total).to eq(3.3)
24
24
  end
25
25
 
26
26
  it 'should sum up selected transactions' do
27
- subject.amount_total([subject.transactions[0]]).should == 1.1
27
+ expect(subject.amount_total([subject.transactions[0]])).to eq(1.1)
28
28
  end
29
29
  end
30
30
 
@@ -32,13 +32,13 @@ describe SEPA::Message do
32
32
  subject { DummyMessage.new }
33
33
 
34
34
  it 'should fail with invalid account' do
35
- subject.should_not be_valid
36
- subject.should have(2).error_on(:account)
35
+ expect(subject).not_to be_valid
36
+ expect(subject.errors_on(:account).size).to eq(2)
37
37
  end
38
38
 
39
39
  it 'should fail without transactions' do
40
- subject.should_not be_valid
41
- subject.should have(1).error_on(:transactions)
40
+ expect(subject).not_to be_valid
41
+ expect(subject.errors_on(:transactions).size).to eq(1)
42
42
  end
43
43
  end
44
44
 
@@ -46,12 +46,12 @@ describe SEPA::Message do
46
46
  subject { DummyMessage.new }
47
47
 
48
48
  it 'should have a reader method' do
49
- subject.message_identification.should match(/SEPA-KING\/[0-9]+/)
49
+ expect(subject.message_identification).to match(/SEPA-KING\/[0-9]+/)
50
50
  end
51
51
 
52
52
  it 'should have a writer method' do
53
53
  subject.message_identification = "MY_MESSAGE_ID/#{Time.now.to_i}"
54
- subject.message_identification.should match(/MY_MESSAGE_ID/)
54
+ expect(subject.message_identification).to match(/MY_MESSAGE_ID/)
55
55
  end
56
56
  end
57
57
  end
data/spec/spec_helper.rb CHANGED
@@ -26,7 +26,6 @@ Dir[File.expand_path(File.join(File.dirname(__FILE__),'support','**','*.rb'))].e
26
26
 
27
27
  # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
28
28
  RSpec.configure do |config|
29
- config.treat_symbols_as_metadata_keys_with_true_values = true
30
29
  config.run_all_when_everything_filtered = true
31
30
  config.filter_run :focus
32
31
 
@@ -0,0 +1,30 @@
1
+ unless defined?(ActiveModel::Model)
2
+ # ActiveModel::Model is available since ActiveModel 4.0 only.
3
+ #
4
+ # If it's missing, add the code from
5
+ # https://github.com/rails/rails/blob/master/activemodel/lib/active_model/model.rb
6
+ module ActiveModel
7
+ module Model
8
+ def self.included(base)
9
+ base.class_eval do
10
+ extend ActiveModel::Naming
11
+ extend ActiveModel::Translation
12
+ include ActiveModel::Validations
13
+ include ActiveModel::Conversion
14
+ end
15
+ end
16
+
17
+ def initialize(params={})
18
+ params.each do |attr, value|
19
+ self.public_send("#{attr}=", value)
20
+ end if params
21
+
22
+ super()
23
+ end
24
+
25
+ def persisted?
26
+ false
27
+ end
28
+ end
29
+ end
30
+ end
@@ -6,10 +6,10 @@ RSpec::Matchers.define :validate_against do |xsd|
6
6
  @schema = Nokogiri::XML::Schema(File.read("lib/schema/#{xsd}"))
7
7
  @doc = Nokogiri::XML(actual)
8
8
 
9
- @schema.should be_valid(@doc)
9
+ expect(@schema).to be_valid(@doc)
10
10
  end
11
11
 
12
- failure_message_for_should do |actual|
12
+ failure_message do |actual|
13
13
  # Return the validation errors as string
14
14
  @schema.validate(@doc).join("\n")
15
15
  end
@@ -21,13 +21,13 @@ RSpec::Matchers.define :have_xml do |xpath, text|
21
21
  doc.remove_namespaces! # so we can use shorter xpath's without any namespace
22
22
 
23
23
  nodes = doc.xpath(xpath)
24
- nodes.should_not be_empty
24
+ expect(nodes).not_to be_empty
25
25
  if text
26
26
  nodes.each do |node|
27
27
  if text.is_a?(Regexp)
28
- node.content.should =~ text
28
+ expect(node.content).to match(text)
29
29
  else
30
- node.content.should == text
30
+ expect(node.content).to eq(text)
31
31
  end
32
32
  end
33
33
  end
@@ -39,21 +39,21 @@ RSpec::Matchers.define :accept do |*values, options|
39
39
  attributes = Array(options[:for])
40
40
 
41
41
  attributes.each do |attribute|
42
- match_for_should do |actual|
42
+ match do |actual|
43
43
  values.all? { |value|
44
44
  expect(
45
- actual.new(attribute => value)
46
- ).to have(:no).errors_on(attribute)
45
+ actual.new(attribute => value).errors_on(attribute).size
46
+ ).to eq 0
47
47
  }
48
48
  end
49
49
  end
50
50
 
51
51
  attributes.each do |attribute|
52
- match_for_should_not do |actual|
52
+ match_when_negated do |actual|
53
53
  values.all? { |value|
54
54
  expect(
55
- actual.new(attribute => value)
56
- ).to have_at_least(1).errors_on(attribute)
55
+ actual.new(attribute => value).errors_on(attribute).size
56
+ ).to be >= 1
57
57
  }
58
58
  end
59
59
  end
@@ -4,75 +4,75 @@ require 'spec_helper'
4
4
  describe SEPA::Transaction do
5
5
  describe :new do
6
6
  it 'should have default for reference' do
7
- SEPA::Transaction.new.reference.should == 'NOTPROVIDED'
7
+ expect(SEPA::Transaction.new.reference).to eq('NOTPROVIDED')
8
8
  end
9
9
 
10
10
  it 'should have default for requested_date' do
11
- SEPA::Transaction.new.requested_date.should == Date.today.next
11
+ expect(SEPA::Transaction.new.requested_date).to eq(Date.today.next)
12
12
  end
13
13
 
14
14
  it 'should have default for batch_booking' do
15
- SEPA::Transaction.new.batch_booking.should == true
15
+ expect(SEPA::Transaction.new.batch_booking).to eq(true)
16
16
  end
17
17
  end
18
18
 
19
19
  context 'Name' do
20
20
  it 'should accept valid value' do
21
- SEPA::Transaction.should accept('Manfred Mustermann III.', 'Zahlemann & Söhne GbR', 'X' * 70, for: :name)
21
+ expect(SEPA::Transaction).to accept('Manfred Mustermann III.', 'Zahlemann & Söhne GbR', 'X' * 70, for: :name)
22
22
  end
23
23
 
24
24
  it 'should not accept invalid value' do
25
- SEPA::Transaction.should_not accept(nil, '', 'X' * 71, for: :name)
25
+ expect(SEPA::Transaction).not_to accept(nil, '', 'X' * 71, for: :name)
26
26
  end
27
27
  end
28
28
 
29
29
  context 'IBAN' do
30
30
  it 'should accept valid value' do
31
- SEPA::Transaction.should accept('DE21500500009876543210', 'PL61109010140000071219812874', for: :iban)
31
+ expect(SEPA::Transaction).to accept('DE21500500009876543210', 'PL61109010140000071219812874', for: :iban)
32
32
  end
33
33
 
34
34
  it 'should not accept invalid value' do
35
- SEPA::Transaction.should_not accept(nil, '', 'invalid', for: :iban)
35
+ expect(SEPA::Transaction).not_to accept(nil, '', 'invalid', for: :iban)
36
36
  end
37
37
  end
38
38
 
39
39
  context 'BIC' do
40
40
  it 'should accept valid value' do
41
- SEPA::Transaction.should accept('DEUTDEFF', 'DEUTDEFF500', 'SPUEDE2UXXX', for: :bic)
41
+ expect(SEPA::Transaction).to accept('DEUTDEFF', 'DEUTDEFF500', 'SPUEDE2UXXX', for: :bic)
42
42
  end
43
43
 
44
44
  it 'should not accept invalid value' do
45
- SEPA::Transaction.should_not accept('', 'invalid', for: :bic)
45
+ expect(SEPA::Transaction).not_to accept('', 'invalid', for: :bic)
46
46
  end
47
47
  end
48
48
 
49
49
  context 'Amount' do
50
50
  it 'should accept valid value' do
51
- SEPA::Transaction.should accept(0.01, 1, 100, 100.00, 99.99, 1234567890.12, BigDecimal('10'), '42', '42.51', '42.512', 1.23456, for: :amount)
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
52
  end
53
53
 
54
54
  it 'should not accept invalid value' do
55
- SEPA::Transaction.should_not accept(nil, 0, -3, 'xz', for: :amount)
55
+ expect(SEPA::Transaction).not_to accept(nil, 0, -3, 'xz', for: :amount)
56
56
  end
57
57
  end
58
58
 
59
59
  context 'Reference' do
60
60
  it 'should accept valid value' do
61
- SEPA::Transaction.should accept(nil, 'ABC-1234/78.0', 'X' * 35, for: :reference)
61
+ expect(SEPA::Transaction).to accept(nil, 'ABC-1234/78.0', 'X' * 35, for: :reference)
62
62
  end
63
63
 
64
64
  it 'should not accept invalid value' do
65
- SEPA::Transaction.should_not accept('', 'X' * 36, for: :reference)
65
+ expect(SEPA::Transaction).not_to accept('', 'X' * 36, for: :reference)
66
66
  end
67
67
  end
68
68
 
69
69
  context 'Remittance information' do
70
70
  it 'should allow valid value' do
71
- SEPA::Transaction.should accept(nil, 'Bonus', 'X' * 140, for: :remittance_information)
71
+ expect(SEPA::Transaction).to accept(nil, 'Bonus', 'X' * 140, for: :remittance_information)
72
72
  end
73
73
 
74
74
  it 'should not allow invalid value' do
75
- SEPA::Transaction.should_not accept('', 'X' * 141, for: :remittance_information)
75
+ expect(SEPA::Transaction).not_to accept('', 'X' * 141, for: :remittance_information)
76
76
  end
77
77
  end
78
78
  end
@@ -2,24 +2,24 @@ require 'spec_helper'
2
2
 
3
3
  describe 'Credit Transfer Initiation' do
4
4
  it "should validate example file" do
5
- File.read('spec/examples/pain.001.002.03.xml').should validate_against('pain.001.002.03.xsd')
6
- File.read('spec/examples/pain.001.003.03.xml').should validate_against('pain.001.003.03.xsd')
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
7
  end
8
8
 
9
9
  it 'should not validate dummy string' do
10
- 'foo'.should_not validate_against('pain.001.002.03.xsd')
11
- 'foo'.should_not validate_against('pain.001.003.03.xsd')
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
12
  end
13
13
  end
14
14
 
15
15
  describe 'Direct Debit Initiation' do
16
16
  it 'should validate example file' do
17
- File.read('spec/examples/pain.008.002.02.xml').should validate_against('pain.008.002.02.xsd')
18
- File.read('spec/examples/pain.008.003.02.xml').should validate_against('pain.008.003.02.xsd')
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
19
  end
20
20
 
21
21
  it 'should not validate dummy string' do
22
- 'foo'.should_not validate_against('pain.008.002.02.xsd')
23
- 'foo'.should_not validate_against('pain.008.003.02.xsd')
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
24
  end
25
25
  end
@@ -10,11 +10,11 @@ describe SEPA::IBANValidator do
10
10
  end
11
11
 
12
12
  it 'should accept valid IBAN' do
13
- Validatable.should accept('DE21500500009876543210', 'DE87200500001234567890', for: [:iban, :iban_the_terrible])
13
+ expect(Validatable).to accept('DE21500500009876543210', 'DE87200500001234567890', for: [:iban, :iban_the_terrible])
14
14
  end
15
15
 
16
16
  it 'should not accept an invalid IBAN' do
17
- Validatable.should_not accept('', 'xxx', 'DE22500500009876543210', 'DE2150050000987654321', for: [:iban, :iban_the_terrible])
17
+ expect(Validatable).not_to accept('', 'xxx', 'DE22500500009876543210', 'DE2150050000987654321', for: [:iban, :iban_the_terrible])
18
18
  end
19
19
  end
20
20
 
@@ -27,11 +27,11 @@ describe SEPA::BICValidator do
27
27
  end
28
28
 
29
29
  it 'should accept valid BICs' do
30
- Validatable.should accept('DEUTDEDBDUE', 'DUSSDEDDXXX', for: [:bic, :custom_bic])
30
+ expect(Validatable).to accept('DEUTDEDBDUE', 'DUSSDEDDXXX', for: [:bic, :custom_bic])
31
31
  end
32
32
 
33
33
  it 'should not accept an invalid BIC' do
34
- Validatable.should_not accept('', 'GENODE61HR', 'DEUTDEDBDUEDEUTDEDBDUE', for: [:bic, :custom_bic])
34
+ expect(Validatable).not_to accept('', 'GENODE61HR', 'DEUTDEDBDUEDEUTDEDBDUE', for: [:bic, :custom_bic])
35
35
  end
36
36
  end
37
37
 
@@ -44,11 +44,11 @@ describe SEPA::CreditorIdentifierValidator do
44
44
  end
45
45
 
46
46
  it 'should accept valid creditor_identifier' do
47
- Validatable.should accept('DE98ZZZ09999999999', 'AT12ZZZ00000000001', 'FR12ZZZ123456', 'NL97ZZZ123456780001', for: [:creditor_identifier, :crid])
47
+ expect(Validatable).to accept('DE98ZZZ09999999999', 'AT12ZZZ00000000001', 'FR12ZZZ123456', 'NL97ZZZ123456780001', for: [:creditor_identifier, :crid])
48
48
  end
49
49
 
50
50
  it 'should not accept an invalid creditor_identifier' do
51
- Validatable.should_not accept('', 'xxx', 'DE98ZZZ099999999990', for: [:creditor_identifier, :crid])
51
+ expect(Validatable).not_to accept('', 'xxx', 'DE98ZZZ099999999990', for: [:creditor_identifier, :crid])
52
52
  end
53
53
  end
54
54
 
@@ -61,10 +61,10 @@ describe SEPA::MandateIdentifierValidator do
61
61
  end
62
62
 
63
63
  it 'should accept valid mandate_identifier' do
64
- Validatable.should accept('XYZ-123', "+?/-:().,'", 'X' * 35, for: [:mandate_id, :mid])
64
+ expect(Validatable).to accept('XYZ-123', "+?/-:().,'", 'X' * 35, for: [:mandate_id, :mid])
65
65
  end
66
66
 
67
67
  it 'should not accept an invalid mandate_identifier' do
68
- Validatable.should_not accept(nil, '', 'X' * 36, 'ABC 123', '#/*', 'Ümläüt', for: [:mandate_id, :mid])
68
+ expect(Validatable).not_to accept(nil, '', 'X' * 36, 'ABC 123', '#/*', 'Ümläüt', for: [:mandate_id, :mid])
69
69
  end
70
70
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sepa_king
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Georg Leciejewski
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-25 00:00:00.000000000 Z
12
+ date: 2014-06-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activemodel
@@ -17,14 +17,14 @@ dependencies:
17
17
  requirements:
18
18
  - - ">="
19
19
  - !ruby/object:Gem::Version
20
- version: '0'
20
+ version: 3.0.0
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - ">="
26
26
  - !ruby/object:Gem::Version
27
- version: '0'
27
+ version: 3.0.0
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: i18n
30
30
  requirement: !ruby/object:Gem::Requirement
@@ -71,30 +71,30 @@ dependencies:
71
71
  name: bundler
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
- - - "~>"
74
+ - - ">="
75
75
  - !ruby/object:Gem::Version
76
- version: '1.3'
76
+ version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
- - - "~>"
81
+ - - ">="
82
82
  - !ruby/object:Gem::Version
83
- version: '1.3'
83
+ version: '0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: rspec
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ">="
88
+ - - "~>"
89
89
  - !ruby/object:Gem::Version
90
- version: '2.14'
90
+ version: '3.0'
91
91
  type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - ">="
95
+ - - "~>"
96
96
  - !ruby/object:Gem::Version
97
- version: '2.14'
97
+ version: '3.0'
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: coveralls
100
100
  requirement: !ruby/object:Gem::Requirement
@@ -167,6 +167,11 @@ files:
167
167
  - LICENSE.txt
168
168
  - README.md
169
169
  - Rakefile
170
+ - gemfiles/Gemfile-activemodel-3.0.x
171
+ - gemfiles/Gemfile-activemodel-3.1.x
172
+ - gemfiles/Gemfile-activemodel-3.2.x
173
+ - gemfiles/Gemfile-activemodel-4.0.x
174
+ - gemfiles/Gemfile-activemodel-4.1.x
170
175
  - lib/schema/pain.001.001.03.xsd
171
176
  - lib/schema/pain.001.002.03.xsd
172
177
  - lib/schema/pain.001.003.03.xsd
@@ -202,6 +207,7 @@ files:
202
207
  - spec/examples/pain.008.003.02.xml
203
208
  - spec/message_spec.rb
204
209
  - spec/spec_helper.rb
210
+ - spec/support/active_model.rb
205
211
  - spec/support/custom_matcher.rb
206
212
  - spec/support/factories.rb
207
213
  - spec/support/validations.rb
@@ -248,6 +254,7 @@ test_files:
248
254
  - spec/examples/pain.008.003.02.xml
249
255
  - spec/message_spec.rb
250
256
  - spec/spec_helper.rb
257
+ - spec/support/active_model.rb
251
258
  - spec/support/custom_matcher.rb
252
259
  - spec/support/factories.rb
253
260
  - spec/support/validations.rb