ibandit 0.11.19 → 0.11.20

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: 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