ibandit 0.11.19 → 0.11.20

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 917798c3e0f8eefb8cafc1a8f186929df14f86b3
4
- data.tar.gz: c93a617949e9e5e416346f06f42ddda5aeb598af
3
+ metadata.gz: e3f94e719c75ae4ffb2c6ddae2412ae27b3cca57
4
+ data.tar.gz: 2aa1489dab17b0fa534f3c720dc2a80b65b3f5f0
5
5
  SHA512:
6
- metadata.gz: 78bb3acc74a5b854d26f58fc137d5153a03ae12b566d6a12786c218175eb2f57a54e0b3a0cdd681703408b2e79a022988040494c2ce6fc9343cc562d9eb8c327
7
- data.tar.gz: c5c18c90d395431e0d553f5ca7e6aa6d7af1eef20ee28755ada3135bed83183ed1085d1f88efd8797737a05979ceff7e44d4de7f56ce02cdd250c93c1591d22b
6
+ metadata.gz: 3c08763237ed36144a0ab42a8fcef5f13204e4c3ae86db1f43ea092da70a9a4262cac0a79d9ceb6c42911349d4c458e667034ddf5da7609cf3eda3ff3606f64f
7
+ data.tar.gz: 54f039ca73d46e43164b21185884e24445a7f31b11df376add970978de7367d2ace07a9d4394408c398f7776a95b8e6cf6d4a63e54a90d248fcbefbb145dfeeb
@@ -1,9 +1,6 @@
1
1
  inherit_from: .rubocop_todo.yml
2
2
  inherit_gem:
3
- ruboconfig: rubocop.yml
4
-
5
- AllCops:
6
- TargetRubyVersion: 2.1
3
+ gc_ruboconfig: rubocop.yml
7
4
 
8
5
  # Limit lines to 80 characters.
9
6
  LineLength:
@@ -1,27 +1,74 @@
1
- # This configuration was generated by `rubocop --auto-gen-config`
2
- # on 2014-12-08 13:56:37 +0000 using RuboCop version 0.27.1.
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2018-10-18 09:23:39 +0100 using RuboCop version 0.58.2.
3
4
  # The point is for the user to remove these configuration records
4
5
  # one by one as the offenses are removed from the code base.
5
6
  # Note that changes in the inspected code, or installation of new
6
7
  # versions of RuboCop, may require this file to be generated again.
7
8
 
8
- # Offense count: 4
9
+ # Offense count: 10
9
10
  Metrics/AbcSize:
10
- Max: 28
11
+ Max: 26
12
+
13
+ # Offense count: 3
14
+ Metrics/CyclomaticComplexity:
15
+ Max: 8
11
16
 
12
17
  # Offense count: 1
13
- # Configuration parameters: CountComments.
14
- Metrics/ClassLength:
15
- Max: 110
18
+ RSpec/DescribeClass:
19
+ Exclude:
20
+ - 'spec/ibandit/structure_spec.rb'
16
21
 
17
22
  # Offense count: 1
18
- Metrics/CyclomaticComplexity:
19
- Max: 10
23
+ # Configuration parameters: Max.
24
+ RSpec/ExampleLength:
25
+ Exclude:
26
+ - 'spec/ibandit/iban_spec.rb'
20
27
 
21
- # Offense count: 4
22
- Style/Documentation:
23
- Enabled: false
28
+ # Offense count: 8
29
+ # Configuration parameters: AggregateFailuresByDefault.
30
+ RSpec/MultipleExpectations:
31
+ Max: 2
32
+
33
+ # Offense count: 13
34
+ RSpec/NamedSubject:
35
+ Exclude:
36
+ - 'spec/ibandit/german_details_converter_spec.rb'
37
+ - 'spec/ibandit/iban_spec.rb'
38
+
39
+ # Offense count: 344
40
+ RSpec/NestedGroups:
41
+ Max: 6
42
+
43
+ # Offense count: 3
44
+ RSpec/ScatteredLet:
45
+ Exclude:
46
+ - 'spec/ibandit/iban_spec.rb'
47
+
48
+ # Offense count: 18
49
+ RSpec/ScatteredSetup:
50
+ Exclude:
51
+ - 'spec/ibandit/iban_assembler_spec.rb'
52
+ - 'spec/ibandit/iban_spec.rb'
53
+
54
+ # Offense count: 13
55
+ RSpec/SubjectStub:
56
+ Exclude:
57
+ - 'spec/ibandit/iban_spec.rb'
24
58
 
25
59
  # Offense count: 4
60
+ # Configuration parameters: IgnoreSymbolicNames.
61
+ RSpec/VerifiedDoubles:
62
+ Exclude:
63
+ - 'spec/ibandit/iban_spec.rb'
64
+
65
+ # Offense count: 5
66
+ # Cop supports --auto-correct.
67
+ # Configuration parameters: AutoCorrect, EnforcedStyle.
68
+ # SupportedStyles: predicate, comparison
26
69
  Style/NumericPredicate:
27
- Enabled: false
70
+ Exclude:
71
+ - 'spec/**/*'
72
+ - 'lib/ibandit/iban.rb'
73
+ - 'lib/ibandit/pseudo_iban_assembler.rb'
74
+ - 'lib/ibandit/pseudo_iban_splitter.rb'
@@ -8,6 +8,7 @@ rvm:
8
8
  - 2.2.7
9
9
  - 2.3.4
10
10
  - 2.4.1
11
+ - 2.5.1
11
12
 
12
13
  sudo: false
13
14
 
@@ -1,3 +1,7 @@
1
+ ## 0.11.20 - October 18, 2018
2
+
3
+ - Generate valid CA IBANs from local details
4
+
1
5
  ## 0.11.19 - October 15, 2018
2
6
 
3
7
  - Add support for CA pseudo-IBANs
data/Gemfile CHANGED
@@ -3,9 +3,3 @@
3
3
  source 'https://rubygems.org'
4
4
 
5
5
  gemspec
6
-
7
- group :development do
8
- gem "ruboconfig",
9
- git: "https://github.com/gocardless/ruboconfig.git",
10
- tag: "v1.2.0"
11
- end
data/README.md CHANGED
@@ -505,6 +505,7 @@ iban.branch_code # => "7507"
505
505
  iban.account_number # => "1211203"
506
506
  iban.iban # => "SE2680000000075071211203"
507
507
 
508
+ # Australia
508
509
  iban = Ibandit::IBAN.new(
509
510
  country_code: 'AU',
510
511
  branch_code: '123-456', # 6 digit BSB number
@@ -519,6 +520,23 @@ iban.branch_code # => "123456"
519
520
  iban.account_number # => "123456789"
520
521
  iban.iban # => nil
521
522
 
523
+ # Canada
524
+ iban = Ibandit::IBAN.new(
525
+ country_code: 'CA',
526
+ bank_code: '0036', # 4 Financial Institution number
527
+ branch_code: '00063', # 5 digit Branch Transit number
528
+ account_number: '0123456' # 7 to 12 digits
529
+ )
530
+ iban.pseudo_iban # => "CAZZ003600063000000123456"
531
+ iban.iban # => nil
532
+
533
+ iban = Ibandit::IBAN.new('CAZZ003600063000000123456')
534
+ iban.country_code # => "CA"
535
+ iban.bank_code # => "0036"
536
+ iban.branch_code # => "00063"
537
+ iban.account_number # => "000000123456"
538
+ iban.iban # => nil
539
+
522
540
  # New Zealand
523
541
  iban = Ibandit::IBAN.new(
524
542
  country_code: 'NZ',
@@ -1,14 +1,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require File.expand_path("../lib/ibandit/version", __FILE__)
3
+ require File.expand_path("lib/ibandit/version", __dir__)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
+ gem.add_development_dependency "gc_ruboconfig", "~> 2.3.11"
6
7
  gem.add_development_dependency "nokogiri", "~> 1.6"
7
8
  gem.add_development_dependency "pry", "~> 0.10"
8
9
  gem.add_development_dependency "pry-nav", "~> 0.2"
9
10
  gem.add_development_dependency "rspec", "~> 3.3"
10
11
  gem.add_development_dependency "rspec-its", "~> 1.2"
11
- gem.add_development_dependency "rubocop", "~> 0.52.0"
12
12
  gem.add_development_dependency "sax-machine", "~> 1.3"
13
13
 
14
14
  gem.add_runtime_dependency "i18n"
@@ -14,8 +14,8 @@ require "ibandit/pseudo_iban_splitter"
14
14
  require "ibandit/local_details_cleaner"
15
15
  require "ibandit/check_digit"
16
16
 
17
- I18n.load_path += Dir[File.expand_path("../../config/locales/*.{rb,yml}",
18
- __FILE__)]
17
+ I18n.load_path += Dir[File.expand_path("../config/locales/*.{rb,yml}",
18
+ __dir__)]
19
19
 
20
20
  module Ibandit
21
21
  class << self
@@ -28,7 +28,7 @@ module Ibandit
28
28
 
29
29
  def structures
30
30
  @structures ||= YAML.load_file(
31
- File.expand_path("../../data/structures.yml", __FILE__),
31
+ File.expand_path("../data/structures.yml", __dir__),
32
32
  )
33
33
  end
34
34
 
@@ -7,7 +7,7 @@ module Ibandit
7
7
  module GermanDetailsConverter
8
8
  def self.rules
9
9
  @rules ||= YAML.load_file(
10
- File.expand_path("../../../data/german_iban_rules.yml", __FILE__),
10
+ File.expand_path("../../data/german_iban_rules.yml", __dir__),
11
11
  )
12
12
  end
13
13
 
@@ -41,8 +41,8 @@ module Ibandit
41
41
  end
42
42
 
43
43
  module PseudoAccountNumberBehaviour
44
- def self.included(o)
45
- o.extend(ClassMethods)
44
+ def self.included(object)
45
+ object.extend(ClassMethods)
46
46
  end
47
47
 
48
48
  module ClassMethods
@@ -85,7 +85,9 @@ module Ibandit
85
85
  end
86
86
 
87
87
  def self.clean_ca_details(local_details)
88
- local_details
88
+ return {} if local_details[:account_number].length < 7 # minimum length
89
+
90
+ { account_number: local_details[:account_number].rjust(12, "0") }
89
91
  end
90
92
 
91
93
  def self.clean_bg_details(local_details)
@@ -11,7 +11,7 @@ module Ibandit
11
11
  end
12
12
 
13
13
  def self.bank_info_table
14
- @swedish_bank_lookup ||=
14
+ @bank_info_table ||=
15
15
  begin
16
16
  relative_path = "../../../../data/raw/swedish_bank_lookup.yml"
17
17
  raw_info = YAML.load_file(File.expand_path(relative_path, __FILE__))
@@ -1,3 +1,3 @@
1
1
  module Ibandit
2
- VERSION = "0.11.19".freeze
2
+ VERSION = "0.11.20".freeze
3
3
  end
@@ -4,15 +4,15 @@ describe Ibandit::GermanDetailsConverter do
4
4
  shared_examples "json based fixture" do |json_fixture_file|
5
5
  json_fixture(json_fixture_file).each do |convertor|
6
6
  context "Rule #{convertor['convertor']}" do
7
+ subject { test_subject }
8
+
7
9
  let(:klass) do
8
10
  described_class.const_get("Rule#{convertor['convertor']}")
9
11
  end
10
12
 
11
- subject { test_subject }
12
-
13
13
  before do
14
- expect_any_instance_of(klass).to receive(:converted_details).
15
- and_call_original
14
+ allow_any_instance_of(klass).
15
+ to receive(:converted_details).and_call_original
16
16
  end
17
17
 
18
18
  convertor.fetch("valid", []).each do |tuple|
@@ -30,8 +30,9 @@ describe Ibandit::GermanDetailsConverter do
30
30
  let(:converted_account_number) do
31
31
  tuple["converted_account_number"] || account_number
32
32
  end
33
+
33
34
  it do
34
- is_expected.to eq(
35
+ expect(subject).to eq(
35
36
  bank_code: converted_bank_code,
36
37
  account_number: converted_account_number,
37
38
  )
@@ -44,6 +45,7 @@ describe Ibandit::GermanDetailsConverter do
44
45
  "#{tuple['account_number']}" do
45
46
  let(:bank_code) { tuple["bank_code"] || "00000000" }
46
47
  let(:account_number) { tuple["account_number"] }
48
+
47
49
  it "raises UnsupportedAccountDetails" do
48
50
  expect { subject }.
49
51
  to raise_error(Ibandit::UnsupportedAccountDetails)
@@ -88,6 +90,7 @@ describe Ibandit::GermanDetailsConverter do
88
90
  valid_account_numbers.each do |number|
89
91
  context number.to_s do
90
92
  let(:account_number) { number }
93
+
91
94
  it { is_expected.to be_valid }
92
95
  end
93
96
  end
@@ -95,6 +98,7 @@ describe Ibandit::GermanDetailsConverter do
95
98
  invalid_account_numbers.each do |number|
96
99
  context number.to_s do
97
100
  let(:account_number) { number }
101
+
98
102
  it { is_expected.to_not be_valid }
99
103
  end
100
104
  end
@@ -19,15 +19,18 @@ describe Ibandit::IBANAssembler do
19
19
 
20
20
  describe ".assemble" do
21
21
  subject(:assemble) { described_class.assemble(args) }
22
+
22
23
  let(:args) { { country_code: "ES" } }
23
24
 
24
25
  context "without a country_code" do
25
26
  let(:args) { { bank_code: 1 } }
27
+
26
28
  it { is_expected.to be_nil }
27
29
  end
28
30
 
29
31
  context "with an unsupported country_code" do
30
32
  let(:args) { { country_code: "FU" } }
33
+
31
34
  it { is_expected.to be_nil }
32
35
  end
33
36
 
@@ -46,11 +49,13 @@ describe Ibandit::IBANAssembler do
46
49
 
47
50
  context "without an account_number" do
48
51
  before { args.delete(:account_number) }
52
+
49
53
  it { is_expected.to be_nil }
50
54
  end
51
55
 
52
56
  context "without an bank_code" do
53
57
  before { args.delete(:bank_code) }
58
+
54
59
  it { is_expected.to be_nil }
55
60
  end
56
61
  end
@@ -64,6 +69,7 @@ describe Ibandit::IBANAssembler do
64
69
 
65
70
  context "without an account_number" do
66
71
  before { args.delete(:account_number) }
72
+
67
73
  it { is_expected.to be_nil }
68
74
  end
69
75
  end
@@ -84,11 +90,13 @@ describe Ibandit::IBANAssembler do
84
90
 
85
91
  context "without an account_number" do
86
92
  before { args.delete(:account_number) }
93
+
87
94
  it { is_expected.to be_nil }
88
95
  end
89
96
 
90
97
  context "without a bank_code" do
91
98
  before { args.delete(:bank_code) }
99
+
92
100
  it { is_expected.to be_nil }
93
101
  end
94
102
  end
@@ -109,16 +117,19 @@ describe Ibandit::IBANAssembler do
109
117
 
110
118
  context "without an branch_code" do
111
119
  before { args.delete(:branch_code) }
120
+
112
121
  it { is_expected.to eq("CY040020000001200527600") }
113
122
  end
114
123
 
115
124
  context "without an account_number" do
116
125
  before { args.delete(:account_number) }
126
+
117
127
  it { is_expected.to be_nil }
118
128
  end
119
129
 
120
130
  context "without an bank_code" do
121
131
  before { args.delete(:bank_code) }
132
+
122
133
  it { is_expected.to be_nil }
123
134
  end
124
135
  end
@@ -138,11 +149,13 @@ describe Ibandit::IBANAssembler do
138
149
 
139
150
  context "without a bank_code" do
140
151
  before { args.delete(:bank_code) }
152
+
141
153
  it { is_expected.to be_nil }
142
154
  end
143
155
 
144
156
  context "without an account_number" do
145
157
  before { args.delete(:account_number) }
158
+
146
159
  it { is_expected.to be_nil }
147
160
  end
148
161
  end
@@ -160,11 +173,13 @@ describe Ibandit::IBANAssembler do
160
173
 
161
174
  context "without a bank_code" do
162
175
  before { args.delete(:bank_code) }
176
+
163
177
  it { is_expected.to be_nil }
164
178
  end
165
179
 
166
180
  context "without an account_number" do
167
181
  before { args.delete(:account_number) }
182
+
168
183
  it { is_expected.to be_nil }
169
184
  end
170
185
  end
@@ -182,11 +197,13 @@ describe Ibandit::IBANAssembler do
182
197
 
183
198
  context "without a bank_code" do
184
199
  before { args.delete(:bank_code) }
200
+
185
201
  it { is_expected.to be_nil }
186
202
  end
187
203
 
188
204
  context "without an account_number" do
189
205
  before { args.delete(:account_number) }
206
+
190
207
  it { is_expected.to be_nil }
191
208
  end
192
209
  end
@@ -206,6 +223,7 @@ describe Ibandit::IBANAssembler do
206
223
 
207
224
  context "without an account_number" do
208
225
  before { args.delete(:account_number) }
226
+
209
227
  it { is_expected.to be_nil }
210
228
  end
211
229
  end
@@ -226,7 +244,9 @@ describe Ibandit::IBANAssembler do
226
244
 
227
245
  context "without a bank_code or branch code" do
228
246
  before { args.delete(:bank_code) }
247
+
229
248
  before { args.delete(:branch_code) }
249
+
230
250
  before { args[:account_number] = "23100001180000012345" }
231
251
 
232
252
  it { is_expected.to be_nil }
@@ -234,6 +254,7 @@ describe Ibandit::IBANAssembler do
234
254
 
235
255
  context "without an account_number" do
236
256
  before { args.delete(:account_number) }
257
+
237
258
  it { is_expected.to be_nil }
238
259
  end
239
260
  end
@@ -249,11 +270,13 @@ describe Ibandit::IBANAssembler do
249
270
 
250
271
  context "without an account_number" do
251
272
  before { args.delete(:account_number) }
273
+
252
274
  it { is_expected.to be_nil }
253
275
  end
254
276
 
255
277
  context "without a bank_code" do
256
278
  before { args.delete(:bank_code) }
279
+
257
280
  it { is_expected.to be_nil }
258
281
  end
259
282
  end
@@ -274,21 +297,25 @@ describe Ibandit::IBANAssembler do
274
297
 
275
298
  context "without the rib key in the account number" do
276
299
  before { args[:account_number] = "0500013M026" }
300
+
277
301
  specify { expect(Ibandit::IBAN.new(assemble)).to_not be_valid }
278
302
  end
279
303
 
280
304
  context "without a bank_code" do
281
305
  before { args.delete(:bank_code) }
306
+
282
307
  it { is_expected.to be_nil }
283
308
  end
284
309
 
285
310
  context "without a branch_code" do
286
311
  before { args.delete(:branch_code) }
312
+
287
313
  it { is_expected.to be_nil }
288
314
  end
289
315
 
290
316
  context "without an account_number" do
291
317
  before { args.delete(:account_number) }
318
+
292
319
  it { is_expected.to be_nil }
293
320
  end
294
321
  end
@@ -309,26 +336,31 @@ describe Ibandit::IBANAssembler do
309
336
 
310
337
  context "with the bank_code supplied manually" do
311
338
  before { args.merge!(bank_code: "BARC") }
339
+
312
340
  it { is_expected.to eq("GB07BARC20000000579135") }
313
341
  end
314
342
 
315
343
  context "without a branch_code" do
316
344
  before { args.delete(:branch_code) }
345
+
317
346
  it { is_expected.to be_nil }
318
347
  end
319
348
 
320
349
  context "without an account_number" do
321
350
  before { args.delete(:account_number) }
351
+
322
352
  it { is_expected.to be_nil }
323
353
  end
324
354
 
325
355
  context "without a bank_code" do
326
356
  before { args.delete(:bank_code) }
357
+
327
358
  it { is_expected.to be_nil }
328
359
  end
329
360
 
330
361
  context "with a non-numeric branch code" do
331
362
  before { args[:branch_code] = "abc123" }
363
+
332
364
  it { is_expected.to be_nil }
333
365
  end
334
366
  end
@@ -349,16 +381,19 @@ describe Ibandit::IBANAssembler do
349
381
 
350
382
  context "without an account_number" do
351
383
  before { args.delete(:account_number) }
384
+
352
385
  it { is_expected.to be_nil }
353
386
  end
354
387
 
355
388
  context "without a bank_code" do
356
389
  before { args.delete(:bank_code) }
390
+
357
391
  it { is_expected.to be_nil }
358
392
  end
359
393
 
360
394
  context "without a branch_code" do
361
395
  before { args.delete(:branch_code) }
396
+
362
397
  it { is_expected.to be_nil }
363
398
  end
364
399
  end
@@ -376,11 +411,13 @@ describe Ibandit::IBANAssembler do
376
411
 
377
412
  context "without a bank_code" do
378
413
  before { args.delete(:bank_code) }
414
+
379
415
  it { is_expected.to be_nil }
380
416
  end
381
417
 
382
418
  context "without an account_number" do
383
419
  before { args.delete(:account_number) }
420
+
384
421
  it { is_expected.to be_nil }
385
422
  end
386
423
  end
@@ -401,7 +438,9 @@ describe Ibandit::IBANAssembler do
401
438
 
402
439
  context "without a bank_code or branch_code" do
403
440
  before { args.delete(:bank_code) }
441
+
404
442
  before { args.delete(:branch_code) }
443
+
405
444
  before { args[:account_number] = "11773016-11111018-00000000" }
406
445
 
407
446
  it { is_expected.to be_nil }
@@ -409,6 +448,7 @@ describe Ibandit::IBANAssembler do
409
448
 
410
449
  context "without a bank_code" do
411
450
  before { args.delete(:bank_code) }
451
+
412
452
  before { args[:account_number] = "11773016-11111018-00000000" }
413
453
 
414
454
  it { is_expected.to be_nil }
@@ -416,6 +456,7 @@ describe Ibandit::IBANAssembler do
416
456
 
417
457
  context "without a branch_code" do
418
458
  before { args.delete(:branch_code) }
459
+
419
460
  before { args[:account_number] = "11773016-11111018-00000000" }
420
461
 
421
462
  it { is_expected.to be_nil }
@@ -423,6 +464,7 @@ describe Ibandit::IBANAssembler do
423
464
 
424
465
  context "without an account_number" do
425
466
  before { args.delete(:account_number) }
467
+
426
468
  it { is_expected.to be_nil }
427
469
  end
428
470
  end
@@ -441,16 +483,19 @@ describe Ibandit::IBANAssembler do
441
483
 
442
484
  context "without a branch_code" do
443
485
  before { args.delete(:branch_code) }
486
+
444
487
  it { is_expected.to be_nil }
445
488
  end
446
489
 
447
490
  context "without an account_number" do
448
491
  before { args.delete(:account_number) }
492
+
449
493
  it { is_expected.to be_nil }
450
494
  end
451
495
 
452
496
  context "without a bank_code" do
453
497
  before { args.delete(:bank_code) }
498
+
454
499
  it { is_expected.to be_nil }
455
500
  end
456
501
  end
@@ -470,11 +515,13 @@ describe Ibandit::IBANAssembler do
470
515
 
471
516
  context "without an account_number" do
472
517
  before { args.delete(:account_number) }
518
+
473
519
  it { is_expected.to be_nil }
474
520
  end
475
521
 
476
522
  context "without a bank_code" do
477
523
  before { args.delete(:bank_code) }
524
+
478
525
  it { is_expected.to be_nil }
479
526
  end
480
527
  end
@@ -495,31 +542,37 @@ describe Ibandit::IBANAssembler do
495
542
 
496
543
  context "with an explicitly passed check digit" do
497
544
  before { args[:check_digit] = "Y" }
545
+
498
546
  it { is_expected.to eq("IT64Y0542811101000000123456") }
499
547
  end
500
548
 
501
549
  context "with a bad character in an odd position" do
502
550
  before { args[:account_number] = "000000123h00" }
551
+
503
552
  it { is_expected.to be_nil }
504
553
  end
505
554
 
506
555
  context "with a bad character in an even position" do
507
556
  before { args[:account_number] = "0000001230h0" }
557
+
508
558
  it { is_expected.to be_nil }
509
559
  end
510
560
 
511
561
  context "without a bank_code" do
512
562
  before { args.delete(:bank_code) }
563
+
513
564
  it { is_expected.to be_nil }
514
565
  end
515
566
 
516
567
  context "without a branch_code" do
517
568
  before { args.delete(:branch_code) }
569
+
518
570
  it { is_expected.to be_nil }
519
571
  end
520
572
 
521
573
  context "without an account_number" do
522
574
  before { args.delete(:account_number) }
575
+
523
576
  it { is_expected.to be_nil }
524
577
  end
525
578
  end
@@ -539,11 +592,13 @@ describe Ibandit::IBANAssembler do
539
592
 
540
593
  context "without an account_number" do
541
594
  before { args.delete(:account_number) }
595
+
542
596
  it { is_expected.to be_nil }
543
597
  end
544
598
 
545
599
  context "without a bank_code" do
546
600
  before { args.delete(:bank_code) }
601
+
547
602
  it { is_expected.to be_nil }
548
603
  end
549
604
  end
@@ -563,11 +618,13 @@ describe Ibandit::IBANAssembler do
563
618
 
564
619
  context "without an account_number" do
565
620
  before { args.delete(:account_number) }
621
+
566
622
  it { is_expected.to be_nil }
567
623
  end
568
624
 
569
625
  context "without a bank_code" do
570
626
  before { args.delete(:bank_code) }
627
+
571
628
  it { is_expected.to be_nil }
572
629
  end
573
630
  end
@@ -587,11 +644,13 @@ describe Ibandit::IBANAssembler do
587
644
 
588
645
  context "without an account_number" do
589
646
  before { args.delete(:account_number) }
647
+
590
648
  it { is_expected.to be_nil }
591
649
  end
592
650
 
593
651
  context "without a bank_code" do
594
652
  before { args.delete(:bank_code) }
653
+
595
654
  it { is_expected.to be_nil }
596
655
  end
597
656
  end
@@ -612,21 +671,25 @@ describe Ibandit::IBANAssembler do
612
671
 
613
672
  context "without the rib key in the account number" do
614
673
  before { args[:account_number] = "0500013M026" }
674
+
615
675
  specify { expect(Ibandit::IBAN.new(assemble)).to_not be_valid }
616
676
  end
617
677
 
618
678
  context "without a bank_code" do
619
679
  before { args.delete(:bank_code) }
680
+
620
681
  it { is_expected.to be_nil }
621
682
  end
622
683
 
623
684
  context "without a branch_code" do
624
685
  before { args.delete(:branch_code) }
686
+
625
687
  it { is_expected.to be_nil }
626
688
  end
627
689
 
628
690
  context "without an account_number" do
629
691
  before { args.delete(:account_number) }
692
+
630
693
  it { is_expected.to be_nil }
631
694
  end
632
695
  end
@@ -650,21 +713,25 @@ describe Ibandit::IBANAssembler do
650
713
 
651
714
  context "without a branch_code" do
652
715
  before { args.delete(:branch_code) }
716
+
653
717
  it { is_expected.to be_nil }
654
718
  end
655
719
 
656
720
  context "without an account_number" do
657
721
  before { args.delete(:account_number) }
722
+
658
723
  it { is_expected.to be_nil }
659
724
  end
660
725
 
661
726
  context "without a bank_code" do
662
727
  before { args.delete(:bank_code) }
728
+
663
729
  it { is_expected.to be_nil }
664
730
  end
665
731
 
666
732
  context "with a non-numeric branch code" do
667
733
  before { args[:branch_code] = "abc123" }
734
+
668
735
  it { is_expected.to be_nil }
669
736
  end
670
737
  end
@@ -684,11 +751,13 @@ describe Ibandit::IBANAssembler do
684
751
 
685
752
  context "without an account_number" do
686
753
  before { args.delete(:account_number) }
754
+
687
755
  it { is_expected.to be_nil }
688
756
  end
689
757
 
690
758
  context "without an bank_code" do
691
759
  before { args.delete(:bank_code) }
760
+
692
761
  it { is_expected.to be_nil }
693
762
  end
694
763
  end
@@ -708,6 +777,7 @@ describe Ibandit::IBANAssembler do
708
777
 
709
778
  context "without a bank_code" do
710
779
  before { args.delete(:bank_code) }
780
+
711
781
  before { args[:account_number] = "86011117947" }
712
782
 
713
783
  it { is_expected.to be_nil }
@@ -715,6 +785,7 @@ describe Ibandit::IBANAssembler do
715
785
 
716
786
  context "without an account_number" do
717
787
  before { args.delete(:account_number) }
788
+
718
789
  it { is_expected.to be_nil }
719
790
  end
720
791
  end
@@ -734,6 +805,7 @@ describe Ibandit::IBANAssembler do
734
805
 
735
806
  context "without a bank_code" do
736
807
  before { args.delete(:bank_code) }
808
+
737
809
  before { args[:account_number] = "60102010260000042270201111" }
738
810
 
739
811
  it { is_expected.to be_nil }
@@ -741,6 +813,7 @@ describe Ibandit::IBANAssembler do
741
813
 
742
814
  context "without an account_number" do
743
815
  before { args.delete(:account_number) }
816
+
744
817
  it { is_expected.to be_nil }
745
818
  end
746
819
  end
@@ -761,16 +834,19 @@ describe Ibandit::IBANAssembler do
761
834
 
762
835
  context "without a bank_code" do
763
836
  before { args.delete(:bank_code) }
837
+
764
838
  it { is_expected.to be_nil }
765
839
  end
766
840
 
767
841
  context "without a branch_code" do
768
842
  before { args.delete(:branch_code) }
843
+
769
844
  it { is_expected.to be_nil }
770
845
  end
771
846
 
772
847
  context "without an account_number" do
773
848
  before { args.delete(:account_number) }
849
+
774
850
  it { is_expected.to be_nil }
775
851
  end
776
852
  end
@@ -790,11 +866,13 @@ describe Ibandit::IBANAssembler do
790
866
 
791
867
  context "without an account_number" do
792
868
  before { args.delete(:account_number) }
869
+
793
870
  it { is_expected.to be_nil }
794
871
  end
795
872
 
796
873
  context "without a bank_code" do
797
874
  before { args.delete(:bank_code) }
875
+
798
876
  it { is_expected.to be_nil }
799
877
  end
800
878
  end
@@ -814,11 +892,13 @@ describe Ibandit::IBANAssembler do
814
892
 
815
893
  context "without a bank_code" do
816
894
  before { args.delete(:bank_code) }
895
+
817
896
  it { is_expected.to be_nil }
818
897
  end
819
898
 
820
899
  context "without an account_number" do
821
900
  before { args.delete(:account_number) }
901
+
822
902
  it { is_expected.to be_nil }
823
903
  end
824
904
  end
@@ -838,11 +918,13 @@ describe Ibandit::IBANAssembler do
838
918
 
839
919
  context "without a bank_code" do
840
920
  before { args.delete(:bank_code) }
921
+
841
922
  it { is_expected.to be_nil }
842
923
  end
843
924
 
844
925
  context "without an account_number" do
845
926
  before { args.delete(:account_number) }
927
+
846
928
  it { is_expected.to be_nil }
847
929
  end
848
930
  end
@@ -862,11 +944,13 @@ describe Ibandit::IBANAssembler do
862
944
 
863
945
  context "without a bank_code" do
864
946
  before { args.delete(:bank_code) }
947
+
865
948
  it { is_expected.to be_nil }
866
949
  end
867
950
 
868
951
  context "without an account_number" do
869
952
  before { args.delete(:account_number) }
953
+
870
954
  it { is_expected.to be_nil }
871
955
  end
872
956
  end
@@ -887,16 +971,19 @@ describe Ibandit::IBANAssembler do
887
971
 
888
972
  context "without a bank_code" do
889
973
  before { args.delete(:bank_code) }
974
+
890
975
  it { is_expected.to be_nil }
891
976
  end
892
977
 
893
978
  context "without a branch_code" do
894
979
  before { args.delete(:branch_code) }
980
+
895
981
  it { is_expected.to be_nil }
896
982
  end
897
983
 
898
984
  context "without an account_number" do
899
985
  before { args.delete(:account_number) }
986
+
900
987
  it { is_expected.to be_nil }
901
988
  end
902
989
  end