require "spec_helper" describe Mongoid::Geospatial::Point do it "should not inferfer with mongoid" do Bar.create!(name: "Moe's") Bar.count.should eql(1) end describe "queryable" do before do Bar.create_indexes Mongoid::Geospatial.use_rgeo end describe "(de)mongoize" do it "should mongoize array" do geom = Bar.new(location: [10, -9]).location geom.class.should eql(Mongoid::Geospatial::Point) geom.to_geo.class.should eql(RGeo::Geographic::SphericalPointImpl) geom.x.should be_within(0.1).of(10) geom.to_geo.y.should be_within(0.1).of(-9) end it "should mongoize hash" do geom = Bar.new(location: {x: 10, y: -9}).location geom.class.should eql(Mongoid::Geospatial::Point) geom.to_geo.class.should eql(RGeo::Geographic::SphericalPointImpl) end it "should accept an RGeo object" do pending point = RGeo::Geographic.spherical_factory.point 1, 2 bar = Bar.create!(location: point) bar.location.x.should be_within(0.1).of(1) bar.location.y.should be_within(0.1).of(2) end end end end