kevintyll-ofac 1.1.6 → 1.1.7

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -38,4 +38,9 @@
38
38
  == 1.1.6 2009-06-29
39
39
 
40
40
  * 1 minor enhancement:
41
- * Allow passing of first and last name seperately...to improve performance.
41
+ * Allow passing of first and last name seperately...to improve performance.
42
+
43
+ == 1.1.7 2009-06-30
44
+
45
+ * 1 bug fix:
46
+ * fixed error when passing a nil value into the new :first_name or :last_name hash values when initializing the Ofac object.
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :minor: 1
3
- :patch: 6
3
+ :patch: 7
4
4
  :major: 1
@@ -112,13 +112,13 @@ class Ofac
112
112
 
113
113
  #you can pass in a full name, or specify the first and last name
114
114
  if @identity[:name].kind_of?(Hash)
115
- name_array = [@identity[:name][:first_name],@identity[:name][:last_name]]
115
+ name_array = [@identity[:name][:first_name],@identity[:name][:last_name]].compact
116
116
  else
117
117
  partial_name = @identity[:name].gsub(/\W/,'|')
118
118
  name_array = partial_name.split('|')
119
119
  end
120
120
 
121
- name_array.delete_if{|n| n.size < 2}
121
+ name_array.delete_if{|n| n.strip.size < 2}
122
122
  unless name_array.empty?
123
123
  sql_name_partial = name_array.collect {|partial_name| "name like '%#{partial_name}%'"}.join(' or ')
124
124
  sql_alt_name_partial = name_array.collect {|partial_name| "alternate_identity_name like '%#{partial_name}%'"}.join(' or ')
data/test/ofac_test.rb CHANGED
@@ -12,6 +12,9 @@ class OfacTest < Test::Unit::TestCase
12
12
  assert_equal 0, Ofac.new({:address => '123 somewhere'}).score
13
13
  assert_equal 0, Ofac.new({:name => ''}).score
14
14
  assert_equal 0, Ofac.new({:name => ' '}).score
15
+ assert_equal 0, Ofac.new({:name => nil}).score
16
+ assert_equal 0, Ofac.new({:name => {:first_name => '',:last_name => ' '}}).score
17
+ assert_equal 0, Ofac.new({:name => {:first_name => '',:last_name => ' '}}).score
15
18
  assert_equal 0, Ofac.new({:name => 'P T'}).score
16
19
  end
17
20
 
@@ -33,6 +36,15 @@ class OfacTest < Test::Unit::TestCase
33
36
  assert_equal 30, Ofac.new({:name => {:first_name => 'Oscar', :last_name => 'de la Hernandez'}}).score
34
37
  end
35
38
 
39
+ should "handle first or last name not given" do
40
+ assert_equal 60, Ofac.new({:name => {:first_name => 'Oscar', :last_name => ''}}).score
41
+ assert_equal 60, Ofac.new({:name => {:first_name => 'Oscar', :last_name => nil}}).score
42
+ assert_equal 60, Ofac.new({:name => {:first_name => nil, :last_name => 'Oscar'}}).score
43
+ assert_equal 60, Ofac.new({:name => {:first_name => 'Oscar'}}).score
44
+ assert_equal 60, Ofac.new({:name => {:first_name => '', :last_name => 'Oscar'}}).score
45
+ assert_equal 60, Ofac.new({:name => {:last_name => 'Oscar'}}).score
46
+ end
47
+
36
48
  should "deduct scores for non matches on address and city if data is in the database" do
37
49
  #if there is data for address or city in the database, and that info is passed in, then 10%
38
50
  #of the weight will be deducted if there is not match or sounds like match
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kevintyll-ofac
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.6
4
+ version: 1.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Tyll
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-06-29 00:00:00 -07:00
12
+ date: 2009-06-30 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15