Sha256: c8a6d872fb8c171978d6e173de4a42c0c0b5f9036bf4a3c40ea9d9b61acd301d
Contents?: true
Size: 1.15 KB
Versions: 18
Compression:
Stored size: 1.15 KB
Contents
require 'spec_helper' describe GeoConcerns::Coverage do let(:cov_string) { 'northlimit=43.039; eastlimit=-69.856; southlimit=42.943; '\ 'westlimit=-71.032; units=degrees; projection=EPSG:4326' } subject { described_class.new(43.039, -69.856, 42.943, -71.032) } describe '#parse' do context 'with a valid coverage string' do it 'returns a coverage instance' do coverage = described_class.parse(cov_string) expect(coverage).to be_an_instance_of(described_class) expect(coverage.n).to eq(43.039) expect(coverage.e).to eq(-69.856) expect(coverage.s).to eq(42.943) expect(coverage.w).to eq(-71.032) end end context 'with an invalid coverage string' do it 'returns nil' do expect(described_class.parse('invalid')).to be_nil end end end describe 'parse_coordinate' do it 'parses a coordinate' do expect(described_class.parse_coordinate(cov_string, /northlimit=([\.\d\-]+);/)).to eq 43.039 end end describe '#to_s' do it 'converts coordinates to a coverage string' do expect(subject.to_s).to eq cov_string end end end
Version data entries
18 entries across 18 versions & 1 rubygems