aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/test_postcodes.rb32
1 files changed, 26 insertions, 6 deletions
diff --git a/test/test_postcodes.rb b/test/test_postcodes.rb
index e3f2080..3b38784 100644
--- a/test/test_postcodes.rb
+++ b/test/test_postcodes.rb
@@ -6,12 +6,6 @@ describe PostCodes::PostCode do
@postcode = PostCodes::PostCode.new('1234', 'MYTOWN', '1378', 'MY MUNICIPALITY', 'G')
end
- it "compares to a postcode" do
- (@postcode >= '1233').must_equal true
- (@postcode >= '1234').must_equal true
- (@postcode >= '1235').must_equal false
- end
-
it "has a county" do
@postcode.county.must_equal [13, '(BERGEN)']
end
@@ -53,3 +47,29 @@ describe 'PostCodes::county' do
PostCodes.county(24).must_equal nil
end
end
+
+describe PostCodes do
+ before do
+ codes = [
+ "0100\tFIRST TOWN\t0101\tFIRST MUNICIPALITY\tG",
+ "1234\tMYTONW\t1278\tMY MUNICIPALITY\tG",
+ "6734\tOTHERTOWN\t2783\tOTHER MUNICIPALITY\tG"
+ ]
+ PostCodes.load(StringIO.new(codes.join("\n").encode(Encoding::ISO_8859_15)))
+ end
+
+ it "can find existing postcode" do
+ c = PostCodes.search('0100')
+ c.must_be_kind_of(PostCodes::PostCode)
+ c.city.must_equal('FIRST TOWN')
+
+ c1 = PostCodes.search('6734')
+ c1.must_be_kind_of(PostCodes::PostCode)
+ c1.city.must_equal('OTHERTOWN')
+ end
+
+ it "returns nil if postcode does not exist" do
+ c = PostCodes.search('2222')
+ c.must_equal(nil)
+ end
+end