41 lines
1.5 KiB
Ruby
41 lines
1.5 KiB
Ruby
require 'fileutils'
|
|
require_relative '../../lib/importer/shp_helper'
|
|
require_relative '../../lib/importer/exceptions'
|
|
require_relative '../../../../spec/rspec_configuration.rb'
|
|
|
|
include CartoDB::Importer2
|
|
|
|
describe CartoDB::Importer2::ShpHelper do
|
|
describe '#row_count' do
|
|
it 'return total of rows correctly' do
|
|
path = File.expand_path(File.join(File.dirname(__FILE__), "../fixtures/county_usa/county_usa.shp"))
|
|
shp_helper = CartoDB::Importer2::ShpHelper.new(path)
|
|
shp_helper.total_rows.should eq 3233
|
|
end
|
|
|
|
it 'verify correct shp file has prj, shx and dbf files in the same folder' do
|
|
path = File.expand_path(File.join(File.dirname(__FILE__), "../fixtures/county_usa/county_usa.shp"))
|
|
shp_helper = CartoDB::Importer2::ShpHelper.new(path)
|
|
shp_helper.verify_file.should eq true
|
|
end
|
|
|
|
it 'verify return exception if shp file doesnt has shx or dbf file in the same folder' do
|
|
path = File.expand_path(File.join(File.dirname(__FILE__), "../fixtures/shp_no_dbf.shp"))
|
|
expect{
|
|
shp_helper = CartoDB::Importer2::ShpHelper.new(path)
|
|
}.to raise_error InvalidShpError
|
|
end
|
|
|
|
it 'verify return exception if shp file doesnt has prj file in the same folder' do
|
|
pending("removed method to give a default projection to file") do
|
|
path = File.expand_path(File.join(File.dirname(__FILE__), "../fixtures/shp_no_prj.shp"))
|
|
expect{
|
|
shp_helper = CartoDB::Importer2::ShpHelper.new(path)
|
|
}.to raise_error MissingProjectionError
|
|
end
|
|
end
|
|
|
|
end
|
|
|
|
end
|