ach 0.4.11 → 0.5.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: e13526411f782fff817d5b5594971d6eeb3a9c92
4
- data.tar.gz: ff5a413b17ba618f8f74eba4da5256bdc5dbb11d
3
+ metadata.gz: d124f86faf818ccd36cdf647bd6aec0f0f3d51bd
4
+ data.tar.gz: 44b27266a52377d8a2dc0a420d021eb7eb69197a
5
5
  SHA512:
6
- metadata.gz: 51deac927aeab91dc4731356039279f901b090d405fadcaa3a152bdb3c8625ee3160f61e18642d1b26e36622c6638da658116bf2356297d3c70b7daed3df25db
7
- data.tar.gz: cabed7bac706f480d57f691eaa3bc2eb96016708f2fe0d70ffa06da83682d482b1236899a663a53d799e143741c1ffda9960faa0e8a94ea33741c6672d66a59c
6
+ metadata.gz: 72c928abf357c176999451341136e3d155f11fba4d88e193f29e231625847393598cc30084e2686b66a8c2a5e5e1a3ea89425f77c5f8381d845fc82f895b321f
7
+ data.tar.gz: acbc625375496d9c5358b74c109426e4309721b4cdf6a70af7a75a9922880ef6347b0f04731025a59964fcf2293c7496e53e4d6074f7965cc765f56c7b55c840
data/lib/ach.rb CHANGED
@@ -20,6 +20,9 @@ module ACH
20
20
  225, # ACH Debits Only
21
21
  280 # ACH Automated Accounting Advices
22
22
  ]
23
+
24
+ class InvalidError < RuntimeError
25
+ end
23
26
  end
24
27
 
25
28
  require 'time'
@@ -22,11 +22,11 @@ module ACH
22
22
  define_method "#{name}=" do | val |
23
23
  if validate.kind_of?(Regexp)
24
24
  unless val =~ validate
25
- raise RuntimeError, "#{val} does not match Regexp #{validate} for field #{name}"
25
+ raise InvalidError, "#{val} does not match Regexp #{validate} for field #{name}"
26
26
  end
27
27
  elsif validate.respond_to?(:call) # Proc with value as argument
28
28
  unless validate.call(val)
29
- raise RuntimeError, "#{val} does not pass validation Proc for field #{name}"
29
+ raise InvalidError, "#{val} does not pass validation Proc for field #{name}"
30
30
  end
31
31
  end
32
32
 
@@ -5,7 +5,7 @@ module ACH::Records
5
5
  const_field :record_type, '1'
6
6
  const_field :priority_code, '01'
7
7
  field :immediate_destination, String, lambda { |f| f.rjust(10) }, nil, /\A\d{9,10}\z/
8
- field :immediate_origin, String, lambda { |f| f.rjust(10) }, nil, /\A\d{9,10}\z/
8
+ field :immediate_origin, String, lambda { |f| f.rjust(10) }, nil, /\A[A-Z\d\s]{1}?\d{9}\z/
9
9
  field :transmission_datetime, Time,
10
10
  lambda { |f| f.strftime('%y%m%d%H%M')},
11
11
  lambda { Time.now }
@@ -1,3 +1,3 @@
1
1
  module ACH
2
- VERSION = '0.4.11'.freeze
2
+ VERSION = '0.5.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ach
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.11
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jared Morgan
@@ -9,56 +9,56 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-07-16 00:00:00.000000000 Z
12
+ date: 2016-05-06 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - '>='
18
+ - - ">="
19
19
  - !ruby/object:Gem::Version
20
20
  version: '0'
21
21
  type: :development
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
- - - '>='
25
+ - - ">="
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: rspec
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
- - - ~>
32
+ - - "~>"
33
33
  - !ruby/object:Gem::Version
34
34
  version: '3.2'
35
35
  type: :development
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
- - - ~>
39
+ - - "~>"
40
40
  - !ruby/object:Gem::Version
41
41
  version: '3.2'
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: holidays
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - '>='
46
+ - - ">="
47
47
  - !ruby/object:Gem::Version
48
48
  version: 1.2.0
49
- - - <
49
+ - - "<"
50
50
  - !ruby/object:Gem::Version
51
- version: 3.0.0
51
+ version: 5.0.0
52
52
  type: :runtime
53
53
  prerelease: false
54
54
  version_requirements: !ruby/object:Gem::Requirement
55
55
  requirements:
56
- - - '>='
56
+ - - ">="
57
57
  - !ruby/object:Gem::Version
58
58
  version: 1.2.0
59
- - - <
59
+ - - "<"
60
60
  - !ruby/object:Gem::Version
61
- version: 3.0.0
61
+ version: 5.0.0
62
62
  description: ach is a Ruby helper for building and parsing ACH files. In particular,
63
63
  it helps with field order and alignment, and adds padding lines to end of file.
64
64
  email: jmorgan@morgancreative.net
@@ -67,22 +67,22 @@ extensions: []
67
67
  extra_rdoc_files:
68
68
  - README.md
69
69
  files:
70
+ - MIT-LICENSE
71
+ - README.md
70
72
  - lib/ach.rb
71
73
  - lib/ach/ach_file.rb
74
+ - lib/ach/batch.rb
72
75
  - lib/ach/field_identifiers.rb
73
76
  - lib/ach/next_federal_reserve_effective_date.rb
74
- - lib/ach/batch.rb
75
- - lib/ach/version.rb
76
77
  - lib/ach/records/addendum.rb
77
- - lib/ach/records/record.rb
78
- - lib/ach/records/file_header.rb
79
- - lib/ach/records/entry_detail.rb
80
- - lib/ach/records/nines.rb
81
78
  - lib/ach/records/batch_control.rb
82
- - lib/ach/records/file_control.rb
83
79
  - lib/ach/records/batch_header.rb
84
- - MIT-LICENSE
85
- - README.md
80
+ - lib/ach/records/entry_detail.rb
81
+ - lib/ach/records/file_control.rb
82
+ - lib/ach/records/file_header.rb
83
+ - lib/ach/records/nines.rb
84
+ - lib/ach/records/record.rb
85
+ - lib/ach/version.rb
86
86
  homepage: https://github.com/jm81/ach
87
87
  licenses: []
88
88
  metadata: {}
@@ -92,17 +92,17 @@ require_paths:
92
92
  - lib
93
93
  required_ruby_version: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - '>='
95
+ - - ">="
96
96
  - !ruby/object:Gem::Version
97
97
  version: '0'
98
98
  required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  requirements:
100
- - - '>='
100
+ - - ">="
101
101
  - !ruby/object:Gem::Version
102
102
  version: '0'
103
103
  requirements: []
104
104
  rubyforge_project:
105
- rubygems_version: 2.0.14
105
+ rubygems_version: 2.2.2
106
106
  signing_key:
107
107
  specification_version: 4
108
108
  summary: Helper for building ACH files