Sha256: 92d4283cc217c5945fea14a3aa80fc8ebd97bc402250782ed4728c5ca13b977c

Contents?: true

Size: 983 Bytes

Versions: 9

Compression:

Stored size: 983 Bytes

Contents

# frozen_string_literal: true

require 'spec_helper'
require 'ogr/geometry'

RSpec.describe OGR::MultiPolygon do
  it_behaves_like 'a geometry' do
    let(:geometry) { described_class.new }
  end

  it_behaves_like 'a container geometry' do
    let(:child_geometry) { OGR::Polygon.new }
  end

  describe '#to_polygon' do
    subject { OGR::Geometry.create_from_wkt(wkt) }

    let(:wkt) do
      'MULTIPOLYGON(((0 0,0 1,1 1,0 0)),((0 0,1 1,1 0,0 0)))'
    end

    it 'returns a Polygon' do
      expect(subject.to_polygon).to be_a OGR::Polygon
    end
  end

  describe '#union_cascaded' do
    subject { OGR::Geometry.create_from_wkt(wkt) }

    let(:wkt) do
      'MULTIPOLYGON(((0 0,0 1,1 1,0 0)),((0 0,1 1,1 0,0 0)))'
    end

    it 'returns a Geometry' do
      expect(subject.union_cascaded).to be_a OGR::Polygon
    end

    it 'does a union on the geometry' do
      expect(subject.union_cascaded.to_wkt).
        to eq 'POLYGON ((0 0,0 1,1 1,1 0,0 0))'
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
ffi-gdal-1.0.0.beta16 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta15 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta14 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta13 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta12 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta11 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta10 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta9 spec/unit/ogr/geometries/multi_polygon_spec.rb
ffi-gdal-1.0.0.beta8 spec/unit/ogr/geometries/multi_polygon_spec.rb