ach_client 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1592b86e14d743c487591e1a205a85ac072cf23a43e27a8dc8e6a7d8dd860acc
4
- data.tar.gz: e4ad0a3ae01d345b4dbd8e224fd4d336737d297d82669af08a58d1b858c04dfc
3
+ metadata.gz: 2ebc1c8a970fae00ba2d286d1a44d9b21dccfe153943112cf5aa8c2b55684944
4
+ data.tar.gz: '0479726dff32adff969b8e5411aa4df9752d122ebc29dea6942bdf2afa894114'
5
5
  SHA512:
6
- metadata.gz: 9a6cbf086b1b6424fcdd034a4131403c00d5e04bf74a01a86176b6c9ff0d24cc8e40020005b3bb06c194b9dd890999c08d82d2c79cd271e510d73cfe9975f910
7
- data.tar.gz: 7130cdd271cecff3efd4297284ccca59d36985eca2868b1df9c3dc2ce1eed6d986b1b633127e025b8bea175387be9a25d5b4eaa1f925be27f847e5c6ff90bf96
6
+ metadata.gz: 6cac06e017d5919800b050cbd0f839e1b288df41391fe4876766f7c26c2d4bd5910755abfd41c44c17b41c5114e29b31ec6944fc8e197a36b6ce5ebba3ee5226
7
+ data.tar.gz: 440a98bc9db3ee2cc0158ecd05665e6c80105d6fd35d48becfe41de1cd69f97f9675d25449850294b8e040d5059f05e7567ff0d14914d5d0bc55c2a9817ecde2
@@ -13,20 +13,36 @@ module AchClient
13
13
  # @return [ACH::EntryDetail] ACH gem's ach transaction record
14
14
  def to_entry_detail
15
15
  entry = ACH::EntryDetail.new
16
- entry.transaction_code = transaction_code
17
- entry.routing_number = routing_number
18
- entry.account_number = account_number
16
+ entry.transaction_code = remove_newlines(transaction_code)
17
+ entry.routing_number = remove_newlines(routing_number)
18
+ entry.account_number = remove_newlines(account_number)
19
19
  entry.amount = amount_in_cents
20
- entry.individual_id_number = external_ach_id # Doesn't need to be a number
21
- entry.individual_name = merchant_name
22
- entry.originating_dfi_identification =
20
+ entry.individual_id_number = remove_newlines(external_ach_id) # Doesn't need to be a number
21
+ entry.individual_name = remove_newlines(merchant_name)
22
+ entry.originating_dfi_identification = remove_newlines(
23
23
  self.class.parent.originating_dfi_identification
24
- entry.trace_number = external_ach_id.gsub(/\D/, '').to_i # Does need to be a number
24
+ )
25
+ entry.trace_number = remove_non_digits(external_ach_id).to_i # Must be number
25
26
  entry
26
27
  end
27
28
 
28
29
  private
29
30
 
31
+ # Removes newlines from given string
32
+ # @param value [String] value to remove newline characters from
33
+ # @return [String] input value with no \n or \r characters
34
+ def remove_newlines(value)
35
+ value.gsub(/[\n\r]/, '')
36
+ end
37
+
38
+
39
+ # Removes non-digit characters from given string
40
+ # @param value [String] value to remove non-digit characters from
41
+ # @return [String] input value with no non-digit characters
42
+ def remove_non_digits(value)
43
+ value.gsub(/\D/, '')
44
+ end
45
+
30
46
  def amount_in_cents
31
47
  # Take absolute value in case amount is negative
32
48
  Helpers::DollarsToCents.dollars_to_cents(amount.abs)
@@ -1,4 +1,4 @@
1
1
  module AchClient
2
2
  # Increment this when changes are published
3
- VERSION = '1.0.0'
3
+ VERSION = '1.0.1'
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ach_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zach Cotter
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-01-02 00:00:00.000000000 Z
11
+ date: 2019-04-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ach