addressable_record 1.1.0 → 1.2.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.
- data/History.txt +5 -0
- data/VERSION +1 -1
- data/addressable_record.gemspec +4 -4
- data/lib/addressable_record.rb +1 -1
- data/lib/addressable_record/address.rb +13 -5
- data/script/environment.rb +1 -1
- data/spec/addressable_record/address_spec.rb +182 -16
- data/spec/addressable_record_spec.rb +30 -16
- metadata +15 -4
data/History.txt
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.2.0
|
data/addressable_record.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{addressable_record}
|
8
|
-
s.version = "1.
|
8
|
+
s.version = "1.2.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["C. Jason Harrelson (midas)"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-09-21}
|
13
13
|
s.description = %q{Encapsulates the composed of pattern for addresses into any easy to use library. Provides convenience methods for formatting, parsing, etc.}
|
14
14
|
s.email = %q{jason@lookforwardenterprises.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -44,7 +44,7 @@ Gem::Specification.new do |s|
|
|
44
44
|
s.homepage = %q{http://github.com/midas/addressable_record}
|
45
45
|
s.rdoc_options = ["--charset=UTF-8"]
|
46
46
|
s.require_paths = ["lib"]
|
47
|
-
s.rubygems_version = %q{1.3.
|
47
|
+
s.rubygems_version = %q{1.3.7}
|
48
48
|
s.summary = %q{Encapsulates the composed of pattern for addresses into any easy to use library.}
|
49
49
|
s.test_files = [
|
50
50
|
"spec/addressable_record/address_parsing_shared_spec.rb",
|
@@ -57,7 +57,7 @@ Gem::Specification.new do |s|
|
|
57
57
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
58
58
|
s.specification_version = 3
|
59
59
|
|
60
|
-
if Gem::Version.new(Gem::
|
60
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
61
61
|
s.add_runtime_dependency(%q<geographer>, [">= 1.1.1"])
|
62
62
|
s.add_runtime_dependency(%q<activerecord>, [">= 2.3"])
|
63
63
|
s.add_development_dependency(%q<rspec>, [">= 1.2.9"])
|
data/lib/addressable_record.rb
CHANGED
@@ -4,7 +4,7 @@ require 'addressable_record/address'
|
|
4
4
|
require 'addressable_record/active_record_extesions'
|
5
5
|
|
6
6
|
module AddressableRecord
|
7
|
-
VERSION = '1.0
|
7
|
+
VERSION = '1.2.0'
|
8
8
|
end
|
9
9
|
|
10
10
|
ActiveRecord::Base.send( :include, AddressableRecord::ActiveRecordExtensions ) if defined?( ActiveRecord::Base )
|
@@ -48,11 +48,13 @@ module AddressableRecord
|
|
48
48
|
end
|
49
49
|
|
50
50
|
def street( delimiter=', ' )
|
51
|
-
return @streets.nil? ? '' : @streets.join( delimiter )
|
51
|
+
return @streets.nil? ? '' : @streets.join( delimiter )
|
52
52
|
end
|
53
53
|
|
54
54
|
def self.parse( address )
|
55
|
-
|
55
|
+
unless [Array, Hash, String].include?( address.class )
|
56
|
+
raise "Cannot convert #{address.class.to_s.downcase} to an AddressableRecord::Address"
|
57
|
+
end
|
56
58
|
self.send( :"parse_#{address.class.to_s.downcase}", address )
|
57
59
|
end
|
58
60
|
|
@@ -79,7 +81,7 @@ module AddressableRecord
|
|
79
81
|
@pattern_map.each { |pat, replacement| to_return = to_return.gsub( pat, replacement ) }
|
80
82
|
to_return.strip
|
81
83
|
end
|
82
|
-
|
84
|
+
|
83
85
|
# Outputs the parts of teh address delimited by specified delimiter(s).
|
84
86
|
#
|
85
87
|
# *parameters*
|
@@ -99,7 +101,7 @@ module AddressableRecord
|
|
99
101
|
options[:street_delimiter] = options[:delimiter] = opts
|
100
102
|
options[:country] = false
|
101
103
|
end
|
102
|
-
|
104
|
+
|
103
105
|
to_return = "#{self.street( options[:street_delimiter] )}#{options[:delimiter]}#{self.city}, #{self.state_or_province} #{self.zip_code}"
|
104
106
|
return options[:country] ? to_return + "#{options[:delimiter]}#{self.country}" : to_return
|
105
107
|
end
|
@@ -130,11 +132,17 @@ module AddressableRecord
|
|
130
132
|
street = streets.join( @@street_delimiter )
|
131
133
|
return AddressableRecord::Address.new( :raw_street => street, :city => city, :state_or_province => state, :raw_zip_code => zip_code, :country => country )
|
132
134
|
end
|
133
|
-
|
135
|
+
|
134
136
|
def parse_hash( address )
|
135
137
|
return AddressableRecord::Address.new( address )
|
136
138
|
end
|
137
139
|
|
140
|
+
def parse_string( address )
|
141
|
+
parts = address.split( ',' )
|
142
|
+
parts = parts.map { |p| p.strip }
|
143
|
+
parse_array( parts )
|
144
|
+
end
|
145
|
+
|
138
146
|
def find_state_position( address_elements )
|
139
147
|
# Look for state abbreviation
|
140
148
|
possible_abbreviation_positions = find_possible_state_abbrev_positions( address_elements )
|
data/script/environment.rb
CHANGED
@@ -40,4 +40,4 @@ class ContactAddress < ActiveRecord::Base
|
|
40
40
|
end
|
41
41
|
|
42
42
|
ADDRESS_ATTRIBUTES = {:raw_street => '123 Jones Street###Suite 540', :city => 'Atlanta', :state_or_province => 'GA',
|
43
|
-
:raw_zip_code => '
|
43
|
+
:raw_zip_code => '333331111', :country => 'U.S.A.' }
|
@@ -7,51 +7,51 @@ describe "AddressableRecord::Address" do
|
|
7
7
|
@klass = AddressableRecord::Address
|
8
8
|
@instance = AddressableRecord::Address.new( @address_attributes )
|
9
9
|
end
|
10
|
-
|
10
|
+
|
11
11
|
it "should agree that the raw_street is correct" do
|
12
12
|
@instance.send( :raw_street ).should eql( @address_attributes[:raw_street] )
|
13
13
|
end
|
14
|
-
|
14
|
+
|
15
15
|
it "should agree that the city is correct" do
|
16
16
|
@instance.city.should eql( @address_attributes[:city] )
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
it "should agree that the state_or_province is correct" do
|
20
20
|
@instance.state_or_province.should eql( @address_attributes[:state_or_province] )
|
21
21
|
end
|
22
|
-
|
22
|
+
|
23
23
|
it "should agree that the raw_zip_code is correct" do
|
24
24
|
@instance.send( :raw_zip_code ).should eql( @address_attributes[:raw_zip_code] )
|
25
25
|
end
|
26
|
-
|
26
|
+
|
27
27
|
it "should agree that the country is correct" do
|
28
28
|
@instance.country.should eql( @address_attributes[:country] )
|
29
29
|
end
|
30
|
-
|
30
|
+
|
31
31
|
it "should agree that the streets array is the correct size" do
|
32
32
|
@instance.streets.size.should eql( 2 )
|
33
33
|
end
|
34
|
-
|
34
|
+
|
35
35
|
it "should agree that the default call to \#street is correct" do
|
36
36
|
@instance.street.should eql( @address_attributes[:raw_street].split( AddressableRecord::Address.street_delimiter ).join( ', ' ) )
|
37
37
|
end
|
38
|
-
|
38
|
+
|
39
39
|
it "should agree that the call to \#street with a pattern of '\\n' is correct" do
|
40
40
|
@instance.street( '\n' ).should eql( @address_attributes[:raw_street].split( AddressableRecord::Address.street_delimiter ).join( '\n' ) )
|
41
41
|
end
|
42
|
-
|
42
|
+
|
43
43
|
it "should agree that the zip code is correct" do
|
44
44
|
@instance.zip_code.should eql( "#{@address_attributes[:raw_zip_code][0..4]}-#{@address_attributes[:raw_zip_code][5..9]}")
|
45
45
|
end
|
46
|
-
|
46
|
+
|
47
47
|
it "should agree that the state is the state_or_province" do
|
48
48
|
@instance.state.should eql( @instance.state_or_province )
|
49
49
|
end
|
50
|
-
|
50
|
+
|
51
51
|
it "should agree that the province is the state_or_province" do
|
52
52
|
@instance.province.should eql( @instance.state_or_province )
|
53
53
|
end
|
54
|
-
|
54
|
+
|
55
55
|
it "should be able to find the position of a state abbreviation in an array" do
|
56
56
|
@klass.send( :find_state_position, ['123 Jones St.', 'Atlanta', 'GA', '33333', ] ).should eql( 2 )
|
57
57
|
end
|
@@ -64,10 +64,176 @@ describe "AddressableRecord::Address" do
|
|
64
64
|
@klass.send( :find_state_position, ['123 Jones St.', 'Atlanta', '33333' ] ).should be_nil
|
65
65
|
end
|
66
66
|
|
67
|
-
describe "when
|
68
|
-
|
67
|
+
describe "when parsng a string of address elements" do
|
68
|
+
before :each do
|
69
|
+
@address_elements_without_country = ['123 Jones Street', 'Suite 540', 'Atlanta', 'GA', '33333-1111']
|
70
|
+
end
|
71
|
+
|
72
|
+
describe "with a country" do
|
73
|
+
before :each do
|
74
|
+
@address = @klass.parse( (@address_elements_without_country + ['U.S.A.']).join( ', ' ) )
|
75
|
+
end
|
76
|
+
|
77
|
+
it_should_behave_like "The address 123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A."
|
78
|
+
end
|
79
|
+
|
80
|
+
describe "without a country" do
|
81
|
+
before :each do
|
82
|
+
@address = @klass.parse( @address_elements_without_country.join( ', ' ) )
|
83
|
+
end
|
84
|
+
|
85
|
+
it_should_behave_like "The address 123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A."
|
86
|
+
end
|
87
|
+
|
88
|
+
describe "with a spelled out state name" do
|
89
|
+
before :each do
|
90
|
+
@address_elements_without_country[@address_elements_without_country.index( 'GA' )] = 'Georgia'
|
91
|
+
@address = @klass.parse( @address_elements_without_country.join( ', ' ) )
|
92
|
+
end
|
93
|
+
|
94
|
+
it_should_behave_like "The address 123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A."
|
95
|
+
end
|
96
|
+
|
97
|
+
describe "when printing out a formatted string" do
|
98
|
+
before :each do
|
99
|
+
@address = @klass.parse( @address_elements_without_country.join( ', ' ) )
|
100
|
+
end
|
101
|
+
|
102
|
+
it "should obey the :us format correctly" do
|
103
|
+
@address.to_s( :us ).should eql( '123 Jones Street, Suite 540, Atlanta, GA 33333-1111' )
|
104
|
+
end
|
105
|
+
|
106
|
+
it "should obey the :us_long format correctly" do
|
107
|
+
@address.to_s( :us_long ).should eql( '123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A.' )
|
108
|
+
end
|
109
|
+
|
110
|
+
it "should obey the %s format correctly" do
|
111
|
+
@address.to_s( '%s' ).should eql( '123 Jones Street, Suite 540' )
|
112
|
+
end
|
113
|
+
|
114
|
+
it "should obey the %1 format correctly" do
|
115
|
+
@address.to_s( '%1' ).should eql( '123 Jones Street' )
|
116
|
+
end
|
117
|
+
|
118
|
+
it "should obey the %2 format correctly" do
|
119
|
+
@address.to_s( '%2' ).should eql( 'Suite 540' )
|
120
|
+
end
|
121
|
+
|
122
|
+
it "should obey the %3 format correctly" do
|
123
|
+
@address.to_s( '%3' ).should eql( '' )
|
124
|
+
end
|
125
|
+
|
126
|
+
it "should obey the %4 format correctly" do
|
127
|
+
@address.to_s( '%4' ).should eql( '' )
|
128
|
+
end
|
129
|
+
|
130
|
+
it "should obey the %5 format correctly" do
|
131
|
+
@address.to_s( '%5' ).should eql( '' )
|
132
|
+
end
|
133
|
+
|
134
|
+
it "should obey the %c format correctly" do
|
135
|
+
@address.to_s( '%c' ).should eql( 'Atlanta' )
|
136
|
+
end
|
137
|
+
|
138
|
+
it "should obey the %S format correctly" do
|
139
|
+
@address.to_s( '%S' ).should eql( 'GA' )
|
140
|
+
end
|
141
|
+
|
142
|
+
it "should obey the %z format correctly" do
|
143
|
+
@address.to_s( '%z' ).should eql( '33333-1111' )
|
144
|
+
end
|
145
|
+
|
146
|
+
it "should obey the %C format correctly" do
|
147
|
+
@address.to_s( '%C' ).should eql( 'U.S.A.' )
|
148
|
+
end
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
describe "when parsing a hash of address elements" do
|
153
|
+
before :each do
|
154
|
+
@address_elements_without_country = @address_attributes.reject { |k,v| k.to_s.include?( 'country' ) }
|
155
|
+
end
|
156
|
+
|
157
|
+
describe "with a country" do
|
158
|
+
before :each do
|
159
|
+
@address = @klass.parse( @address_attributes )
|
160
|
+
end
|
161
|
+
|
162
|
+
it_should_behave_like "The address 123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A."
|
163
|
+
end
|
164
|
+
|
165
|
+
# describe "without a country" do
|
166
|
+
# before :each do
|
167
|
+
# @address = @klass.parse( @address_attributes.reject { |k,v| k.to_s.include?( 'country' ) } )
|
168
|
+
# end
|
169
|
+
#
|
170
|
+
# it_should_behave_like "The address 123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A."
|
171
|
+
# end
|
172
|
+
|
173
|
+
# describe "with a spelled out state name" do
|
174
|
+
# before :each do
|
175
|
+
# @address_elements_without_country[:state_or_province] = 'Georgia'
|
176
|
+
# @address = @klass.parse( @address_elements_without_country )
|
177
|
+
# end
|
178
|
+
#
|
179
|
+
# it_should_behave_like "The address 123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A."
|
180
|
+
# end
|
181
|
+
|
182
|
+
describe "when printing out a formatted string" do
|
183
|
+
before :each do
|
184
|
+
@address = @klass.parse( @address_elements_without_country )
|
185
|
+
end
|
186
|
+
|
187
|
+
it "should obey the :us format correctly" do
|
188
|
+
@address.to_s( :us ).should eql( '123 Jones Street, Suite 540, Atlanta, GA 33333-1111' )
|
189
|
+
end
|
190
|
+
|
191
|
+
it "should obey the :us_long format correctly" # do
|
192
|
+
# @address.to_s( :us_long ).should eql( '123 Jones Street, Suite 540, Atlanta, GA 33333-1111 U.S.A.' )
|
193
|
+
# end
|
194
|
+
|
195
|
+
it "should obey the %s format correctly" do
|
196
|
+
@address.to_s( '%s' ).should eql( '123 Jones Street, Suite 540' )
|
197
|
+
end
|
198
|
+
|
199
|
+
it "should obey the %1 format correctly" do
|
200
|
+
@address.to_s( '%1' ).should eql( '123 Jones Street' )
|
201
|
+
end
|
202
|
+
|
203
|
+
it "should obey the %2 format correctly" do
|
204
|
+
@address.to_s( '%2' ).should eql( 'Suite 540' )
|
205
|
+
end
|
206
|
+
|
207
|
+
it "should obey the %3 format correctly" do
|
208
|
+
@address.to_s( '%3' ).should eql( '' )
|
209
|
+
end
|
210
|
+
|
211
|
+
it "should obey the %4 format correctly" do
|
212
|
+
@address.to_s( '%4' ).should eql( '' )
|
213
|
+
end
|
214
|
+
|
215
|
+
it "should obey the %5 format correctly" do
|
216
|
+
@address.to_s( '%5' ).should eql( '' )
|
217
|
+
end
|
218
|
+
|
219
|
+
it "should obey the %c format correctly" do
|
220
|
+
@address.to_s( '%c' ).should eql( 'Atlanta' )
|
221
|
+
end
|
222
|
+
|
223
|
+
it "should obey the %S format correctly" do
|
224
|
+
@address.to_s( '%S' ).should eql( 'GA' )
|
225
|
+
end
|
226
|
+
|
227
|
+
it "should obey the %z format correctly" do
|
228
|
+
@address.to_s( '%z' ).should eql( '33333-1111' )
|
229
|
+
end
|
230
|
+
|
231
|
+
it "should obey the %C format correctly" # do
|
232
|
+
# @address.to_s( '%C' ).should eql( 'U.S.A.' )
|
233
|
+
# end
|
234
|
+
end
|
69
235
|
end
|
70
|
-
|
236
|
+
|
71
237
|
describe "when parsing an array of address elements" do
|
72
238
|
before :each do
|
73
239
|
@address_elements_without_country = ['123 Jones Street', 'Suite 540', 'Atlanta', 'GA', '33333-1111']
|
@@ -102,7 +268,7 @@ describe "AddressableRecord::Address" do
|
|
102
268
|
before :each do
|
103
269
|
@address = @klass.parse( @address_elements_without_country )
|
104
270
|
end
|
105
|
-
|
271
|
+
|
106
272
|
it "should obey the :us format correctly" do
|
107
273
|
@address.to_s( :us ).should eql( '123 Jones Street, Suite 540, Atlanta, GA 33333-1111' )
|
108
274
|
end
|
@@ -10,18 +10,18 @@ describe "AddressableRecord" do
|
|
10
10
|
ActiveRecord::Base.respond_to?( :addresses ).should be_true
|
11
11
|
end
|
12
12
|
end
|
13
|
-
|
13
|
+
|
14
14
|
describe "having models descending from ActiveRecord" do
|
15
15
|
before :each do
|
16
16
|
@address_attributes = ADDRESS_ATTRIBUTES
|
17
17
|
@user = User.new( :name => 'John Smith', :address => AddressableRecord::Address.new( @address_attributes ) )
|
18
18
|
@user.save!
|
19
19
|
end
|
20
|
-
|
20
|
+
|
21
21
|
it "should respond to address" do
|
22
22
|
@user.respond_to?( :address ).should be_true
|
23
23
|
end
|
24
|
-
|
24
|
+
|
25
25
|
it "should be an AddressableRecord::Address" do
|
26
26
|
@user.address.is_a?( AddressableRecord::Address ).should be_true
|
27
27
|
end
|
@@ -42,20 +42,34 @@ describe "AddressableRecord" do
|
|
42
42
|
@user.address.state.should eql( 'GA' )
|
43
43
|
end
|
44
44
|
|
45
|
-
it "should agree that the zip_code is
|
46
|
-
@user.address.zip_code.should eql( '
|
45
|
+
it "should agree that the zip_code is 33333-1111" do
|
46
|
+
@user.address.zip_code.should eql( '33333-1111' )
|
47
47
|
end
|
48
48
|
|
49
49
|
it "should agree that the country is U.S.A." do
|
50
50
|
@user.address.country.should eql( 'U.S.A.' )
|
51
51
|
end
|
52
|
-
|
52
|
+
|
53
|
+
# describe "when creating with a string of address elements" do
|
54
|
+
# before :each do
|
55
|
+
# attributes = ADDRESS_ATTRIBUTES
|
56
|
+
# @address_attributes =
|
57
|
+
# [attributes[:raw_street],attributes[:city],attributes[:state_or_province],attributes[:raw_zip_code],attributes[:country]]
|
58
|
+
# @klass = AddressableRecord::Address
|
59
|
+
# @instance = AddressableRecord::Address.new( @address_attributes.join( ', ' ) )
|
60
|
+
# end
|
61
|
+
#
|
62
|
+
# it "should create an address record" do
|
63
|
+
# @instance.is_a?( @klass ).should be_true
|
64
|
+
# end
|
65
|
+
# end
|
66
|
+
|
53
67
|
describe "when creating with a Hash of address elements" do
|
54
68
|
before :each do
|
55
69
|
@user = User.new( :name => 'John Smith', :address => @address_attributes )
|
56
70
|
@user.save!
|
57
71
|
end
|
58
|
-
|
72
|
+
|
59
73
|
it "should respond to address" do
|
60
74
|
@user.respond_to?( :address ).should be_true
|
61
75
|
end
|
@@ -80,14 +94,14 @@ describe "AddressableRecord" do
|
|
80
94
|
@user.address.state.should eql( 'GA' )
|
81
95
|
end
|
82
96
|
|
83
|
-
it "should agree that the zip_code is
|
84
|
-
@user.address.zip_code.should eql( '
|
97
|
+
it "should agree that the zip_code is 33333-1111" do
|
98
|
+
@user.address.zip_code.should eql( '33333-1111' )
|
85
99
|
end
|
86
100
|
|
87
101
|
it "should agree that the country is U.S.A." do
|
88
102
|
@user.address.country.should eql( 'U.S.A.' )
|
89
103
|
end
|
90
|
-
|
104
|
+
|
91
105
|
it "should handle a 5 digit zip code" do
|
92
106
|
@user = User.new( :name => 'John Smith', :address => @address_attributes.merge( :raw_zip_code => '31234' ) )
|
93
107
|
@user.save!
|
@@ -95,14 +109,14 @@ describe "AddressableRecord" do
|
|
95
109
|
end
|
96
110
|
end
|
97
111
|
end
|
98
|
-
|
112
|
+
|
99
113
|
describe "when used through an association" do
|
100
114
|
before :each do
|
101
115
|
@address_attributes = ADDRESS_ATTRIBUTES
|
102
116
|
@person = Person.new( :name => 'John Smith' )
|
103
117
|
@person.save!
|
104
118
|
end
|
105
|
-
|
119
|
+
|
106
120
|
describe "creating through the association" do
|
107
121
|
before :each do
|
108
122
|
@address = AddressableRecord::Address.new( @address_attributes )
|
@@ -134,12 +148,12 @@ describe "AddressableRecord" do
|
|
134
148
|
@person.contact_addresses.first.address.state.should eql( 'GA' )
|
135
149
|
end
|
136
150
|
|
137
|
-
it "should agree that the address zip code is
|
138
|
-
@address.zip_code.should eql( '
|
151
|
+
it "should agree that the address zip code is 33333-1111" do
|
152
|
+
@address.zip_code.should eql( '33333-1111' )
|
139
153
|
end
|
140
154
|
|
141
|
-
it "should agree that the associated zip code is
|
142
|
-
@person.contact_addresses.first.address.zip_code.should eql( '
|
155
|
+
it "should agree that the associated zip code is 33333-1111" do
|
156
|
+
@person.contact_addresses.first.address.zip_code.should eql( '33333-1111' )
|
143
157
|
end
|
144
158
|
|
145
159
|
it "should agree that the address country is U.S.A." do
|
metadata
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: addressable_record
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 31
|
4
5
|
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 1
|
7
|
-
-
|
8
|
+
- 2
|
8
9
|
- 0
|
9
|
-
version: 1.
|
10
|
+
version: 1.2.0
|
10
11
|
platform: ruby
|
11
12
|
authors:
|
12
13
|
- C. Jason Harrelson (midas)
|
@@ -14,16 +15,18 @@ autorequire:
|
|
14
15
|
bindir: bin
|
15
16
|
cert_chain: []
|
16
17
|
|
17
|
-
date: 2010-
|
18
|
+
date: 2010-09-21 00:00:00 -05:00
|
18
19
|
default_executable:
|
19
20
|
dependencies:
|
20
21
|
- !ruby/object:Gem::Dependency
|
21
22
|
name: geographer
|
22
23
|
prerelease: false
|
23
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
24
26
|
requirements:
|
25
27
|
- - ">="
|
26
28
|
- !ruby/object:Gem::Version
|
29
|
+
hash: 17
|
27
30
|
segments:
|
28
31
|
- 1
|
29
32
|
- 1
|
@@ -35,9 +38,11 @@ dependencies:
|
|
35
38
|
name: activerecord
|
36
39
|
prerelease: false
|
37
40
|
requirement: &id002 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
38
42
|
requirements:
|
39
43
|
- - ">="
|
40
44
|
- !ruby/object:Gem::Version
|
45
|
+
hash: 5
|
41
46
|
segments:
|
42
47
|
- 2
|
43
48
|
- 3
|
@@ -48,9 +53,11 @@ dependencies:
|
|
48
53
|
name: rspec
|
49
54
|
prerelease: false
|
50
55
|
requirement: &id003 !ruby/object:Gem::Requirement
|
56
|
+
none: false
|
51
57
|
requirements:
|
52
58
|
- - ">="
|
53
59
|
- !ruby/object:Gem::Version
|
60
|
+
hash: 13
|
54
61
|
segments:
|
55
62
|
- 1
|
56
63
|
- 2
|
@@ -101,23 +108,27 @@ rdoc_options:
|
|
101
108
|
require_paths:
|
102
109
|
- lib
|
103
110
|
required_ruby_version: !ruby/object:Gem::Requirement
|
111
|
+
none: false
|
104
112
|
requirements:
|
105
113
|
- - ">="
|
106
114
|
- !ruby/object:Gem::Version
|
115
|
+
hash: 3
|
107
116
|
segments:
|
108
117
|
- 0
|
109
118
|
version: "0"
|
110
119
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
120
|
+
none: false
|
111
121
|
requirements:
|
112
122
|
- - ">="
|
113
123
|
- !ruby/object:Gem::Version
|
124
|
+
hash: 3
|
114
125
|
segments:
|
115
126
|
- 0
|
116
127
|
version: "0"
|
117
128
|
requirements: []
|
118
129
|
|
119
130
|
rubyforge_project:
|
120
|
-
rubygems_version: 1.3.
|
131
|
+
rubygems_version: 1.3.7
|
121
132
|
signing_key:
|
122
133
|
specification_version: 3
|
123
134
|
summary: Encapsulates the composed of pattern for addresses into any easy to use library.
|