interior 0.8.2 → 0.8.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +5 -0
- data/README.md +12 -7
- data/Rakefile +14 -2
- data/interior.gemspec +2 -1
- data/lib/interior/geocoder.rb +1 -1
- data/lib/interior/response.rb +6 -1
- data/lib/interior/version.rb +1 -1
- data/spec/fixtures/az_invalid_section.xml +5 -0
- data/spec/fixtures/az_no_section.xml +24 -0
- data/spec/lib/interior/geocoder_spec.rb +70 -34
- data/spec/lib/interior/response_spec.rb +17 -1
- metadata +26 -9
- data/maps/meridians.jpg +0 -0
- data/maps/meridians_small.jpg +0 -0
data/.travis.yml
ADDED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
Interior
|
1
|
+
Interior ![Travis CI Status](https://secure.travis-ci.org/climate/interior.png)
|
2
2
|
========
|
3
3
|
|
4
4
|
Township GeoCoder Web Service
|
@@ -12,19 +12,24 @@ Interior uses the GeoCommunicator GeoCoder Web Service provided by the
|
|
12
12
|
|
13
13
|
Usage
|
14
14
|
-----
|
15
|
-
Given township `1N`, range `1E`, section `35`, and meridian `14` (
|
15
|
+
Given township `1N`, range `1E`, section `35`, and meridian `14` (Gila-Salt Meridian
|
16
|
+
in the US Meridian table), we can get the center point latitude and longitude
|
17
|
+
in the state of Arizona with:
|
16
18
|
|
17
19
|
require 'interior'
|
18
20
|
response = Interior::Geocoder.get_lat_lon('AZ', 14, 1, 'N', 1, 'E', 35)
|
19
|
-
response.
|
20
|
-
response.
|
21
|
+
response.success? => true
|
22
|
+
response.latitude => 33.384549272498
|
23
|
+
response.longitude => -112.228362739723
|
21
24
|
|
22
|
-
Section is option. If omitted, the centerpoint latitude and longitude will be for
|
25
|
+
Section is option. If omitted, the centerpoint latitude and longitude will be for
|
26
|
+
the township and range:
|
23
27
|
|
24
28
|
require 'interior'
|
25
29
|
response = Interior::Geocoder.get_lat_lon('AZ', 14, 1, 'N', 1, 'E') # No section
|
26
|
-
response.
|
27
|
-
response.
|
30
|
+
response.success? => true
|
31
|
+
response.latitude => 33.4211630233451
|
32
|
+
response.longitude => -112.254699834217
|
28
33
|
|
29
34
|
US Meridian Map
|
30
35
|
---------------
|
data/Rakefile
CHANGED
@@ -1,10 +1,22 @@
|
|
1
1
|
require 'bundler/gem_tasks'
|
2
2
|
require 'rspec/core/rake_task'
|
3
3
|
|
4
|
-
desc 'Default: Run
|
5
|
-
task :default => :
|
4
|
+
desc 'Default: Run specs'
|
5
|
+
task :default => 'spec:fast'
|
6
6
|
|
7
7
|
desc "Run all specs"
|
8
8
|
RSpec::Core::RakeTask.new do |t|
|
9
9
|
t.rspec_opts = ['--color', '-d']
|
10
10
|
end
|
11
|
+
|
12
|
+
namespace :spec do
|
13
|
+
desc "Run enemy spec"
|
14
|
+
RSpec::Core::RakeTask.new(:enemy) do |t|
|
15
|
+
t.rspec_opts = ['--color', '-d', '--tag', 'enemy']
|
16
|
+
end
|
17
|
+
|
18
|
+
desc "Run all specs except enemy spec"
|
19
|
+
RSpec::Core::RakeTask.new(:fast) do |t|
|
20
|
+
t.rspec_opts = ['--color', '-d', '--tag', '~enemy']
|
21
|
+
end
|
22
|
+
end
|
data/interior.gemspec
CHANGED
@@ -13,11 +13,12 @@ Gem::Specification.new do |s|
|
|
13
13
|
|
14
14
|
s.rubyforge_project = "interior"
|
15
15
|
|
16
|
-
s.files = `git ls-files`.split("\n")
|
16
|
+
s.files = `git ls-files | grep -v maps`.split("\n")
|
17
17
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
18
18
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
19
19
|
s.require_paths = ["lib"]
|
20
20
|
|
21
|
+
s.add_development_dependency "rake"
|
21
22
|
s.add_development_dependency "rspec"
|
22
23
|
s.add_development_dependency "ruby-debug"
|
23
24
|
|
data/lib/interior/geocoder.rb
CHANGED
@@ -20,7 +20,7 @@ module Interior
|
|
20
20
|
trs = build_trs_param(st, me, to, to_dir, ra, ra_dir, se)
|
21
21
|
xml = get_response_body(trs)
|
22
22
|
result = parse_xml(xml)
|
23
|
-
result ? Interior::Response.new(result[:lat], result[:lon]) :
|
23
|
+
result ? Interior::Response.new(result[:lat], result[:lon], true) : Interior::Response.new
|
24
24
|
end
|
25
25
|
|
26
26
|
private
|
data/lib/interior/response.rb
CHANGED
@@ -2,9 +2,14 @@ module Interior
|
|
2
2
|
class Response
|
3
3
|
attr_reader :latitude, :longitude
|
4
4
|
|
5
|
-
def initialize(latitude, longitude)
|
5
|
+
def initialize(latitude = nil, longitude = nil, success = false)
|
6
6
|
@latitude = latitude
|
7
7
|
@longitude = longitude
|
8
|
+
@success = success
|
9
|
+
end
|
10
|
+
|
11
|
+
def success?
|
12
|
+
@success
|
8
13
|
end
|
9
14
|
end
|
10
15
|
end
|
data/lib/interior/version.rb
CHANGED
@@ -0,0 +1,5 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<TownshipGeocoderResult xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.esri.com/">
|
3
|
+
<CompletionStatus>false</CompletionStatus>
|
4
|
+
<Message>Invalid Township,Range,Section... specified: AZ,14,1,0,N,1,0,E,INVALID,,0</Message>
|
5
|
+
</TownshipGeocoderResult>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<TownshipGeocoderResult xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.esri.com/">
|
3
|
+
<CompletionStatus>true</CompletionStatus>
|
4
|
+
<Message>Ok</Message>
|
5
|
+
<Data><?xml version="1.0" encoding="UTF-8"?>
|
6
|
+
|
7
|
+
<rss version="2.0" xmlns:georss="http://www.georss.org/georss">
|
8
|
+
<channel>
|
9
|
+
<title>Township GeoCoder</title>
|
10
|
+
<item>
|
11
|
+
<title>Lat Lon</title>
|
12
|
+
<link>http://www.geocommunicator.gov</link>
|
13
|
+
<description>Latitude(33.4211630233451), Longitude(-112.254699834217)</description>
|
14
|
+
<pubDate>1/18/2012 1:08:10 PM</pubDate>
|
15
|
+
<georss:point>-112.254699834217 33.4211630233451</georss:point>
|
16
|
+
</item>
|
17
|
+
|
18
|
+
<item><title>Township Range Section</title>
|
19
|
+
<link>http://www.geocommunicator.gov</link>
|
20
|
+
<description>AZ,14,1,0,N,1,0,E,0,,0</description>
|
21
|
+
<pubDate>1/18/2012 1:08:10 PM</pubDate>
|
22
|
+
<georss:polygon>33.465903569199668,-112.20321220653472,33.462309315982509,-112.2032735108433,33.458715016199164,-112.20333483843484,33.455140739851231,-112.20334010040739,33.451566416936942,-112.20334536237994,33.447976377954433,-112.20341409398594,33.444386338971867,-112.2034828488753,33.440796299989358,-112.20355162704749,33.437206237723558,-112.20362038193667,33.433604650341124,-112.20363020738984,33.430003039675569,-112.20364000955993,33.426407552456,-112.20376417814242,33.4228120652362,-112.20388832344173,33.419203213537628,-112.2038964492312,33.415594408405241,-112.20390457502066,33.411993007287094,-112.20390508724807,33.408391582886111,-112.20390555290936,33.404755699549639,-112.20390071003197,33.401119816213395,-112.20389589043765,33.397011519500268,-112.20352035789205,33.392903222787311,-112.20314482534639,33.389017069791805,-112.202928898207,33.385130963362258,-112.20271301763404,33.38124485693271,-112.20249709049477,33.377358727220269,-112.20228120992169,33.377355607289644,-112.2028021452046,33.377352044980796,-112.20661525922719,33.377348040293725,-112.21094930853258,33.3773479937276,-112.21140542376412,33.377333325397046,-112.21530184459107,33.377316934119563,-112.21965433408337,33.377315932947795,-112.22005654902097,33.377313464942972,-112.22295871314896,33.3773114858825,-112.22400412274044,33.377309949200253,-112.22473576975597,33.377309762935738,-112.22508655240432,33.377309134293,-112.22616916833266,33.37730785372446,-112.22833437690628,33.377306363608341,-112.22906648958326,33.377305152888994,-112.23266758802146,33.377303662772874,-112.23339967741526,33.3773024054874,-112.23700079913635,33.377300938654344,-112.23773309807802,33.377296095776956,-112.24132518597031,33.377294489245514,-112.24205788072362,33.377289646368126,-112.24564782657399,33.377288039836685,-112.24638480541148,33.3772831969593,-112.24997042061182,33.377281543861727,-112.25070958805719,33.377276747550468,-112.25429306121549,33.377274931471447,-112.25503746735063,33.377269250403742,-112.25861414185431,33.377267434324722,-112.25935184246646,33.377261706690888,-112.26293498966203,33.377259890611867,-112.26366838290761,33.377254162978033,-112.26725588403616,33.377252393465142,-112.26798275802355,33.377246665831308,-112.27157675512694,33.377244873035352,-112.27229960114448,33.37723851675878,-112.27589725368904,33.377236700679759,-112.27661970389414,33.377230344403188,-112.28021735643881,33.377228528324167,-112.28094197196907,33.377222172047595,-112.28453745918876,33.377220355968575,-112.2852620747189,33.377213999692,-112.28885758522148,33.377211880933146,-112.28958573977769,33.377202497858036,-112.29318402096499,33.377200542080629,-112.29391168657651,33.377191112439561,-112.29750994448085,33.377189179945219,-112.29823758680948,33.377177142600942,-112.30182969798483,33.377175093691278,-112.30255626929238,33.3771694591897,-112.30441809953703,33.377168108771968,-112.30492422679089,33.377164360198606,-112.30614251313534,33.380698892355724,-112.30614735601273,33.380822548710739,-112.30614765869257,33.384483507907476,-112.30615336304334,33.388116620559288,-112.30615587761429,33.391749733210872,-112.30615839218524,33.395349644212729,-112.30616065064248,33.398949555214756,-112.30616288581666,33.40254986202865,-112.30616598246422,33.406150192125665,-112.30616907911178,33.409782420020974,-112.30619832264091,33.41341464791617,-112.30622754288669,33.417047341472767,-112.30625867234375,33.420680011746356,-112.30628982508392,33.424420505891021,-112.30621725177224,33.42816100003563,-112.30614472502646,33.431818490055832,-112.30626225793571,33.435475980075978,-112.30637981412781,33.439042689428049,-112.30639236369956,33.442609398780064,-112.30640491327125,33.446176084849071,-112.30641743955988,33.449742770918022,-112.30642996584862,33.453320539725667,-112.30642523938656,33.456898308533255,-112.30642046635825,33.460500152029624,-112.30641811476875,33.464101995525823,-112.30641576317925,33.464169632827975,-112.30268309214426,33.464260576477386,-112.29835511971857,33.464347399024575,-112.29404800891865,33.4644341982887,-112.28974089811879,33.464514292030117,-112.28543315867614,33.464594339205576,-112.28112541923355,33.464671359582496,-112.27681847141508,33.464748403242652,-112.27251154687957,33.464825982413288,-112.26813996527443,33.464903538300689,-112.26376838366917,33.464981094188261,-112.25939680206403,33.465058650075889,-112.25502522045878,33.465126194245613,-112.25071738788375,33.465193715132443,-112.24640957859208,33.465407593361874,-112.24212670546217,33.465621471591476,-112.23784378576619,33.465556767955604,-112.23351064450031,33.465492064319562,-112.22917752651739,33.465583380498174,-112.22487074168038,33.465674696676615,-112.22056393356036,33.465720121935362,-112.216255216229,33.465765547193939,-112.21194652218077,33.465834558196889,-112.20757936435768,33.465903569199668,-112.20321220653472</georss:polygon>
|
23
|
+
</item></channel></rss></Data>
|
24
|
+
</TownshipGeocoderResult>
|
@@ -4,60 +4,102 @@ require 'interior/geocoder.rb'
|
|
4
4
|
describe Interior::Geocoder do
|
5
5
|
let(:coder) { Interior::Geocoder }
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
7
|
+
let(:st) { 'AZ' }
|
8
|
+
let(:me) { 14 }
|
9
|
+
let(:to) { 1 }
|
10
|
+
let(:to_dir) { 'N' }
|
11
|
+
let(:ra) { 1 }
|
12
|
+
let(:ra_dir) { 'E' }
|
13
|
+
let(:se) { 35 }
|
14
|
+
|
15
|
+
# Full integration enemy test
|
16
|
+
describe 'enemy_test', :enemy => true do
|
17
|
+
subject do
|
18
|
+
coder.get_lat_lon(st, me, to, to_dir, ra, ra_dir, se)
|
19
|
+
end
|
14
20
|
|
15
|
-
|
21
|
+
it 'returns correct response' do
|
22
|
+
subject.success?.should == true
|
23
|
+
subject.latitude.should == 33.384549272498
|
24
|
+
subject.longitude.should == -112.228362739723
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
describe '#get_lat_lon' do
|
29
|
+
subject do
|
30
|
+
# use xml fixtures for interior web service
|
31
|
+
Net::HTTP.stub(:get_response => double('response', :body => body))
|
32
|
+
coder.get_lat_lon(st, me, to, to_dir, ra, ra_dir, se)
|
33
|
+
end
|
16
34
|
|
17
35
|
context 'with section' do
|
18
|
-
let
|
36
|
+
let(:body) { File.open('spec/fixtures/az.xml').read }
|
19
37
|
|
20
|
-
it 'returns
|
38
|
+
it 'returns successful response' do
|
39
|
+
subject.success?.should == true
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'returns correct latitude' do
|
21
43
|
subject.latitude.should == 33.384549272498
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'returns correct longitude' do
|
22
47
|
subject.longitude.should == -112.228362739723
|
23
48
|
end
|
24
49
|
end
|
25
50
|
|
26
51
|
context 'without section' do
|
27
|
-
let
|
52
|
+
let(:se) { nil }
|
53
|
+
let(:body) { File.open('spec/fixtures/az_no_section.xml').read }
|
28
54
|
|
29
|
-
it 'returns
|
55
|
+
it 'returns successful response' do
|
56
|
+
subject.success?.should == true
|
57
|
+
end
|
58
|
+
|
59
|
+
it 'returns correct latitude' do
|
30
60
|
subject.latitude.should == 33.4211630233451
|
61
|
+
end
|
62
|
+
|
63
|
+
it 'returns correct longitude' do
|
31
64
|
subject.longitude.should == -112.254699834217
|
32
65
|
end
|
33
66
|
end
|
67
|
+
|
68
|
+
context 'with invalid parameters' do
|
69
|
+
let(:se) { 'INVALID' }
|
70
|
+
let(:body) { File.open('spec/fixtures/az_invalid_section.xml').read }
|
71
|
+
|
72
|
+
it 'returns unsuccessful response' do
|
73
|
+
subject.success?.should == false
|
74
|
+
end
|
75
|
+
|
76
|
+
it 'returns nil for latitude' do
|
77
|
+
subject.latitude.should == nil
|
78
|
+
end
|
79
|
+
|
80
|
+
it 'returns nil for longitude' do
|
81
|
+
subject.longitude.should == nil
|
82
|
+
end
|
83
|
+
end
|
34
84
|
end
|
35
85
|
|
36
86
|
describe '#build_trs_param' do
|
37
87
|
subject { coder.send(:build_trs_param, st, me, to, to_dir, ra, ra_dir, se) }
|
38
88
|
|
39
89
|
context 'when in Arizona' do
|
40
|
-
let (:st) { 'AZ' }
|
41
|
-
let (:me) { 14 }
|
42
|
-
let (:to) { 1 }
|
43
|
-
let (:to_dir) { 'N' }
|
44
|
-
let (:ra) { 1 }
|
45
|
-
let (:ra_dir) { 'E' }
|
46
|
-
let (:se) { 35 }
|
47
|
-
|
48
90
|
it 'returns the correct trs param' do
|
49
91
|
subject.should == "AZ,14,1,0,N,1,0,E,35,,0"
|
50
92
|
end
|
51
93
|
end
|
52
94
|
|
53
95
|
context 'when in Colorado' do
|
54
|
-
let
|
55
|
-
let
|
56
|
-
let
|
57
|
-
let
|
58
|
-
let
|
59
|
-
let
|
60
|
-
let
|
96
|
+
let(:st) { 'CO' }
|
97
|
+
let(:me) { 06 }
|
98
|
+
let(:to) { 1 }
|
99
|
+
let(:to_dir) { 'S' }
|
100
|
+
let(:ra) { 68 }
|
101
|
+
let(:ra_dir) { 'W' }
|
102
|
+
let(:se) { 16 }
|
61
103
|
|
62
104
|
it 'returns the correct trs param' do
|
63
105
|
subject.should == "CO,6,1,0,S,68,0,W,16,,0"
|
@@ -65,13 +107,7 @@ describe Interior::Geocoder do
|
|
65
107
|
end
|
66
108
|
|
67
109
|
context 'when missing section' do
|
68
|
-
let
|
69
|
-
let (:me) { 14 }
|
70
|
-
let (:to) { 1 }
|
71
|
-
let (:to_dir) { 'N' }
|
72
|
-
let (:ra) { 1 }
|
73
|
-
let (:ra_dir) { 'E' }
|
74
|
-
let (:se) { nil }
|
110
|
+
let(:se) { nil }
|
75
111
|
|
76
112
|
it 'defaults to section 0' do
|
77
113
|
subject.should == "AZ,14,1,0,N,1,0,E,0,,0"
|
@@ -4,7 +4,23 @@ require 'interior/response.rb'
|
|
4
4
|
describe Interior::Response do
|
5
5
|
let(:latitude) { 30 }
|
6
6
|
let(:longitude) { 60 }
|
7
|
-
let(:
|
7
|
+
let(:success) { true }
|
8
|
+
let(:response) { Interior::Response.new(latitude, longitude, success) }
|
9
|
+
|
10
|
+
describe('#success?') do
|
11
|
+
it 'defaults to false' do
|
12
|
+
Interior::Response.new.success?.should == false
|
13
|
+
end
|
14
|
+
|
15
|
+
it 'can be initialized' do
|
16
|
+
response.success?.should == true
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'is readonly' do
|
20
|
+
lambda { response.success = false }.should raise_error
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
8
24
|
|
9
25
|
describe('#latitude') do
|
10
26
|
it 'can be initialized' do
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: interior
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 57
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 8
|
9
|
-
-
|
10
|
-
version: 0.8.
|
9
|
+
- 3
|
10
|
+
version: 0.8.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Chris Hunt
|
@@ -18,7 +18,7 @@ cert_chain: []
|
|
18
18
|
date: 2012-01-18 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
|
-
name:
|
21
|
+
name: rake
|
22
22
|
prerelease: false
|
23
23
|
requirement: &id001 !ruby/object:Gem::Requirement
|
24
24
|
none: false
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
type: :development
|
33
33
|
version_requirements: *id001
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
|
-
name:
|
35
|
+
name: rspec
|
36
36
|
prerelease: false
|
37
37
|
requirement: &id002 !ruby/object:Gem::Requirement
|
38
38
|
none: false
|
@@ -46,7 +46,7 @@ dependencies:
|
|
46
46
|
type: :development
|
47
47
|
version_requirements: *id002
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
|
-
name:
|
49
|
+
name: ruby-debug
|
50
50
|
prerelease: false
|
51
51
|
requirement: &id003 !ruby/object:Gem::Requirement
|
52
52
|
none: false
|
@@ -57,8 +57,22 @@ dependencies:
|
|
57
57
|
segments:
|
58
58
|
- 0
|
59
59
|
version: "0"
|
60
|
-
type: :
|
60
|
+
type: :development
|
61
61
|
version_requirements: *id003
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: nokogiri
|
64
|
+
prerelease: false
|
65
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
hash: 3
|
71
|
+
segments:
|
72
|
+
- 0
|
73
|
+
version: "0"
|
74
|
+
type: :runtime
|
75
|
+
version_requirements: *id004
|
62
76
|
description: Find the center latitude/longitude for any grid in the PLSS given township, range, and section.
|
63
77
|
email:
|
64
78
|
- chunt@climate.com
|
@@ -71,6 +85,7 @@ extra_rdoc_files: []
|
|
71
85
|
files:
|
72
86
|
- .gitignore
|
73
87
|
- .rvmrc
|
88
|
+
- .travis.yml
|
74
89
|
- Gemfile
|
75
90
|
- README.md
|
76
91
|
- Rakefile
|
@@ -79,9 +94,9 @@ files:
|
|
79
94
|
- lib/interior/geocoder.rb
|
80
95
|
- lib/interior/response.rb
|
81
96
|
- lib/interior/version.rb
|
82
|
-
- maps/meridians.jpg
|
83
|
-
- maps/meridians_small.jpg
|
84
97
|
- spec/fixtures/az.xml
|
98
|
+
- spec/fixtures/az_invalid_section.xml
|
99
|
+
- spec/fixtures/az_no_section.xml
|
85
100
|
- spec/fixtures/co.xml
|
86
101
|
- spec/lib/interior/geocoder_spec.rb
|
87
102
|
- spec/lib/interior/response_spec.rb
|
@@ -121,6 +136,8 @@ specification_version: 3
|
|
121
136
|
summary: Convert PLSS to latitude and longitude
|
122
137
|
test_files:
|
123
138
|
- spec/fixtures/az.xml
|
139
|
+
- spec/fixtures/az_invalid_section.xml
|
140
|
+
- spec/fixtures/az_no_section.xml
|
124
141
|
- spec/fixtures/co.xml
|
125
142
|
- spec/lib/interior/geocoder_spec.rb
|
126
143
|
- spec/lib/interior/response_spec.rb
|
data/maps/meridians.jpg
DELETED
Binary file
|
data/maps/meridians_small.jpg
DELETED
Binary file
|