diff --git a/web/client/components/map/openlayers/__tests__/Feature-test.jsx b/web/client/components/map/openlayers/__tests__/Feature-test.jsx
index 3f946c28b3..11bf44caa6 100644
--- a/web/client/components/map/openlayers/__tests__/Feature-test.jsx
+++ b/web/client/components/map/openlayers/__tests__/Feature-test.jsx
@@ -148,6 +148,70 @@ describe('Test Feature', () => {
const type = options.features.features[0].type;
const properties = options.features.features[0].properties;
+ // create layers
+ const layer = ReactDOM.render(
+ , document.getElementById("container"));
+
+ expect(layer).toExist();
+ // count layers
+ expect(container.getSource().getFeatures().length === 1 );
+ expect(container.getSource().getFeatures()[0].getGeometry()).toExist();
+ expect(container.getSource().getFeatures()[0].getGeometry().getType()).toBe("GeometryCollection");
+ });
+ it('support for geometry collection', () => {
+ const options = {
+ crs: 'EPSG:4326',
+ features: {
+ type: 'FeatureCollection',
+ crs: {
+ 'type': 'name',
+ 'properties': {
+ 'name': 'EPSG:4326'
+ }
+ },
+ features: [
+ {
+ type: 'Feature',
+ geometry: { "type": "GeometryCollection",
+ "geometries": [
+ { "type": "Point",
+ "coordinates": [100.0, 0.0]
+ },
+ { "type": "LineString",
+ "coordinates": [ [101.0, 0.0], [102.0, 1.0] ]
+ }
+ ]
+ },
+ properties: {
+ 'name': "some name"
+ }
+ }
+ ]
+ }
+ };
+ const source = new ol.source.Vector({
+ features: []
+ });
+ const msId = "vectorid";
+ const container = new ol.layer.Vector({
+ msId,
+ source: source,
+ visible: true,
+ zIndex: 1
+ });
+ const geometry = options.features.features[0].geometry;
+ const type = options.features.features[0].type;
+ const properties = options.features.features[0].properties;
+
// create layers
const layer = ReactDOM.render(