@reltio/components 1.4.2257 → 1.4.2258
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ReltioMap/ReltioMap.d.ts +5 -8
- package/ReltioMap/ReltioMap.js +31 -39
- package/ReltioMap/ReltioMap.spec.js +299 -104
- package/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.d.ts +2 -1
- package/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.js +11 -13
- package/ReltioMap/components/EntityMarker/EntityMarker.d.ts +2 -1
- package/ReltioMap/components/EntityMarker/EntityMarker.js +3 -3
- package/ReltioMap/components/PolygonDrawing/PolygonDrawing.d.ts +4 -0
- package/ReltioMap/components/PolygonDrawing/PolygonDrawing.js +18 -0
- package/ReltioMap/components/PolygonDrawing/crosshair.inline.svg.d.ts +1 -0
- package/ReltioMap/components/PolygonDrawing/crosshair.inline.svg.js +1 -0
- package/ReltioMap/components/PolygonDrawing/index.d.ts +2 -0
- package/ReltioMap/components/PolygonDrawing/index.js +2 -0
- package/ReltioMap/components/PolygonDrawing/polygonRingHelpers.d.ts +5 -0
- package/ReltioMap/components/PolygonDrawing/polygonRingHelpers.js +43 -0
- package/ReltioMap/components/PolygonDrawing/useDrawingCursors.d.ts +6 -0
- package/ReltioMap/components/PolygonDrawing/useDrawingCursors.js +87 -0
- package/ReltioMap/components/PolygonDrawing/usePolygonDrawing.d.ts +9 -0
- package/ReltioMap/components/PolygonDrawing/usePolygonDrawing.js +197 -0
- package/ReltioMap/components/PolygonDrawing/usePreviewPolylines.d.ts +7 -0
- package/ReltioMap/components/PolygonDrawing/usePreviewPolylines.js +38 -0
- package/ReltioMap/components/PolygonDrawing/useVertexHandles.d.ts +14 -0
- package/ReltioMap/components/PolygonDrawing/useVertexHandles.js +85 -0
- package/ReltioMap/components/TopRightMapControls/TopRightMapControls.d.ts +3 -3
- package/ReltioMap/components/TopRightMapControls/TopRightMapControls.js +4 -18
- package/ReltioMap/helpers.d.ts +2 -1
- package/ReltioMap/helpers.js +3 -11
- package/ReltioMap/types.d.ts +2 -2
- package/cjs/ReltioMap/ReltioMap.d.ts +5 -8
- package/cjs/ReltioMap/ReltioMap.js +29 -37
- package/cjs/ReltioMap/ReltioMap.spec.js +298 -103
- package/cjs/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.d.ts +2 -1
- package/cjs/ReltioMap/components/ClusteredMarkers/ClusteredMarkers.js +11 -13
- package/cjs/ReltioMap/components/EntityMarker/EntityMarker.d.ts +2 -1
- package/cjs/ReltioMap/components/EntityMarker/EntityMarker.js +3 -3
- package/cjs/ReltioMap/components/PolygonDrawing/PolygonDrawing.d.ts +4 -0
- package/cjs/ReltioMap/components/PolygonDrawing/PolygonDrawing.js +22 -0
- package/cjs/ReltioMap/components/PolygonDrawing/crosshair.inline.svg.d.ts +1 -0
- package/cjs/ReltioMap/components/PolygonDrawing/crosshair.inline.svg.js +4 -0
- package/cjs/ReltioMap/components/PolygonDrawing/index.d.ts +2 -0
- package/cjs/ReltioMap/components/PolygonDrawing/index.js +7 -0
- package/cjs/ReltioMap/components/PolygonDrawing/polygonRingHelpers.d.ts +5 -0
- package/cjs/ReltioMap/components/PolygonDrawing/polygonRingHelpers.js +50 -0
- package/cjs/ReltioMap/components/PolygonDrawing/useDrawingCursors.d.ts +6 -0
- package/cjs/ReltioMap/components/PolygonDrawing/useDrawingCursors.js +91 -0
- package/cjs/ReltioMap/components/PolygonDrawing/usePolygonDrawing.d.ts +9 -0
- package/cjs/ReltioMap/components/PolygonDrawing/usePolygonDrawing.js +202 -0
- package/cjs/ReltioMap/components/PolygonDrawing/usePreviewPolylines.d.ts +7 -0
- package/cjs/ReltioMap/components/PolygonDrawing/usePreviewPolylines.js +42 -0
- package/cjs/ReltioMap/components/PolygonDrawing/useVertexHandles.d.ts +14 -0
- package/cjs/ReltioMap/components/PolygonDrawing/useVertexHandles.js +89 -0
- package/cjs/ReltioMap/components/TopRightMapControls/TopRightMapControls.d.ts +3 -3
- package/cjs/ReltioMap/components/TopRightMapControls/TopRightMapControls.js +3 -17
- package/cjs/ReltioMap/helpers.d.ts +2 -1
- package/cjs/ReltioMap/helpers.js +8 -15
- package/cjs/ReltioMap/types.d.ts +2 -2
- package/cjs/constants/index.d.ts +1 -1
- package/cjs/constants/index.js +2 -2
- package/cjs/constants/map.d.ts +1 -2
- package/cjs/constants/map.js +2 -5
- package/cjs/features/workflow/AddWorkflowDialog/styles.d.ts +1 -1
- package/cjs/icons/index.d.ts +0 -1
- package/cjs/icons/index.js +2 -4
- package/constants/index.d.ts +1 -1
- package/constants/index.js +1 -1
- package/constants/map.d.ts +1 -2
- package/constants/map.js +1 -4
- package/features/workflow/AddWorkflowDialog/styles.d.ts +1 -1
- package/icons/index.d.ts +0 -1
- package/icons/index.js +0 -1
- package/package.json +2 -2
- package/ReltioMap/components/DrawingManager/DrawingManager.d.ts +0 -2
- package/ReltioMap/components/DrawingManager/DrawingManager.js +0 -5
- package/ReltioMap/components/DrawingManager/index.d.ts +0 -1
- package/ReltioMap/components/DrawingManager/index.js +0 -1
- package/ReltioMap/components/DrawingManager/useDrawingManager.d.ts +0 -7
- package/ReltioMap/components/DrawingManager/useDrawingManager.js +0 -36
- package/ReltioMap/googleMock.test-data.d.ts +0 -1
- package/ReltioMap/googleMock.test-data.js +0 -109
- package/cjs/ReltioMap/components/DrawingManager/DrawingManager.d.ts +0 -2
- package/cjs/ReltioMap/components/DrawingManager/DrawingManager.js +0 -9
- package/cjs/ReltioMap/components/DrawingManager/index.d.ts +0 -1
- package/cjs/ReltioMap/components/DrawingManager/index.js +0 -5
- package/cjs/ReltioMap/components/DrawingManager/useDrawingManager.d.ts +0 -7
- package/cjs/ReltioMap/components/DrawingManager/useDrawingManager.js +0 -40
- package/cjs/ReltioMap/googleMock.test-data.d.ts +0 -1
- package/cjs/ReltioMap/googleMock.test-data.js +0 -113
- package/cjs/icons/Radius.d.ts +0 -3
- package/cjs/icons/Radius.js +0 -22
- package/icons/Radius.d.ts +0 -3
- package/icons/Radius.js +0 -17
|
@@ -59,7 +59,8 @@ import { act, render, screen, waitFor } from '@testing-library/react';
|
|
|
59
59
|
import userEvent from '@testing-library/user-event';
|
|
60
60
|
import { findLast, last } from 'ramda';
|
|
61
61
|
import { OverlayView, initialize, mockInstances, AdvancedMarkerElement, Map, Polygon } from '@googlemaps/jest-mocks';
|
|
62
|
-
import {
|
|
62
|
+
import { POLYGON_DRAWING_MODE } from '../constants';
|
|
63
|
+
import { MAP_DRAWING_CROSSHAIR_CURSOR } from './components/PolygonDrawing/usePolygonDrawing';
|
|
63
64
|
import * as helpers from './helpers';
|
|
64
65
|
import { ReltioMap } from './ReltioMap';
|
|
65
66
|
jest.mock('@vis.gl/react-google-maps', function () { return (__assign(__assign({}, jest.requireActual('@vis.gl/react-google-maps')), { MapControl: function (_a) {
|
|
@@ -81,8 +82,24 @@ describe('ReltioMap tests', function () {
|
|
|
81
82
|
var user = userEvent.setup();
|
|
82
83
|
return __assign(__assign({}, render(React.createElement(ReltioMap, __assign({}, props)))), { user: user });
|
|
83
84
|
};
|
|
84
|
-
|
|
85
|
-
|
|
85
|
+
/**
|
|
86
|
+
* Map click payload: must expose lat()/lng() for serialization and equals() for polygonRingHelpers
|
|
87
|
+
*/
|
|
88
|
+
var mapMouseEventWith = function (lat, lng) { return ({
|
|
89
|
+
latLng: {
|
|
90
|
+
lat: function () { return lat; },
|
|
91
|
+
lng: function () { return lng; },
|
|
92
|
+
equals: function (other) {
|
|
93
|
+
var oLat = typeof other.lat === 'function'
|
|
94
|
+
? other.lat()
|
|
95
|
+
: other.lat;
|
|
96
|
+
var oLng = typeof other.lng === 'function'
|
|
97
|
+
? other.lng()
|
|
98
|
+
: other.lng;
|
|
99
|
+
return oLat === lat && oLng === lng;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}); };
|
|
86
103
|
beforeAll(function () {
|
|
87
104
|
initialize();
|
|
88
105
|
var OriginalMap = google.maps.Map;
|
|
@@ -91,32 +108,11 @@ describe('ReltioMap tests', function () {
|
|
|
91
108
|
for (var _i = 0; _i < arguments.length; _i++) {
|
|
92
109
|
args[_i] = arguments[_i];
|
|
93
110
|
}
|
|
94
|
-
|
|
111
|
+
var mapInstance = new (OriginalMap.bind.apply(OriginalMap, __spreadArray([void 0], args, false)))();
|
|
112
|
+
mapInstance.setOptions = jest.fn();
|
|
113
|
+
mapInstance.get = jest.fn(function () { return undefined; });
|
|
114
|
+
return mapInstance;
|
|
95
115
|
});
|
|
96
|
-
global.google.maps.drawing.DrawingManager = /** @class */ (function () {
|
|
97
|
-
function DrawingManager() {
|
|
98
|
-
var args = [];
|
|
99
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
100
|
-
args[_i] = arguments[_i];
|
|
101
|
-
}
|
|
102
|
-
this.addListener = jest.fn();
|
|
103
|
-
this.getDrawingMode = jest.fn();
|
|
104
|
-
this.getMap = jest.fn();
|
|
105
|
-
this.setDrawingMode = jest.fn();
|
|
106
|
-
this.setMap = jest.fn();
|
|
107
|
-
this.setOptions = jest.fn();
|
|
108
|
-
drawingManagerConstructorSpy.apply(void 0, args);
|
|
109
|
-
drawingManagerInstance = this;
|
|
110
|
-
}
|
|
111
|
-
return DrawingManager;
|
|
112
|
-
}());
|
|
113
|
-
global.google.maps.drawing.OverlayType = {
|
|
114
|
-
CIRCLE: 'circle',
|
|
115
|
-
MARKER: 'marker',
|
|
116
|
-
POLYGON: 'polygon',
|
|
117
|
-
POLYLINE: 'polyline',
|
|
118
|
-
RECTANGLE: 'rectangle'
|
|
119
|
-
};
|
|
120
116
|
var overlayView = new OverlayView();
|
|
121
117
|
for (var property in overlayView) {
|
|
122
118
|
if (!global.google.maps.OverlayView.prototype.hasOwnProperty(property)) {
|
|
@@ -124,9 +120,6 @@ describe('ReltioMap tests', function () {
|
|
|
124
120
|
}
|
|
125
121
|
}
|
|
126
122
|
});
|
|
127
|
-
beforeEach(function () {
|
|
128
|
-
drawingManagerInstance = null;
|
|
129
|
-
});
|
|
130
123
|
afterEach(function () {
|
|
131
124
|
jest.clearAllMocks();
|
|
132
125
|
mockInstances.clearAll();
|
|
@@ -142,13 +135,14 @@ describe('ReltioMap tests', function () {
|
|
|
142
135
|
}, target.addListener.mock.calls)) === null || _b === void 0 ? void 0 : _b[1]);
|
|
143
136
|
};
|
|
144
137
|
var getLastInstance = function (instance) { return last(mockInstances.get(instance)); };
|
|
138
|
+
var getFirstInstance = function (instance) { var _a; return (_a = mockInstances.get(instance)) === null || _a === void 0 ? void 0 : _a[0]; };
|
|
145
139
|
describe('general behaviour', function () {
|
|
146
140
|
it('should render map controls', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
147
141
|
var _a;
|
|
148
142
|
return __generator(this, function (_b) {
|
|
149
143
|
switch (_b.label) {
|
|
150
144
|
case 0:
|
|
151
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
145
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true }));
|
|
152
146
|
_a = expect;
|
|
153
147
|
return [4 /*yield*/, screen.findByLabelText('Draw area')];
|
|
154
148
|
case 1:
|
|
@@ -164,7 +158,7 @@ describe('ReltioMap tests', function () {
|
|
|
164
158
|
switch (_a.label) {
|
|
165
159
|
case 0:
|
|
166
160
|
mapOptions = { mapTypeControl: true };
|
|
167
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
161
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, mapOptions: mapOptions }));
|
|
168
162
|
return [4 /*yield*/, waitFor(function () {
|
|
169
163
|
expect(google.maps.Map).toHaveBeenCalledWith(expect.any(HTMLElement), expect.objectContaining({
|
|
170
164
|
fullscreenControl: false,
|
|
@@ -182,7 +176,7 @@ describe('ReltioMap tests', function () {
|
|
|
182
176
|
return __generator(this, function (_a) {
|
|
183
177
|
switch (_a.label) {
|
|
184
178
|
case 0:
|
|
185
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
179
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, isSearchEnabled: false }));
|
|
186
180
|
return [4 /*yield*/, waitFor(function () {
|
|
187
181
|
expect(screen.queryByLabelText('Draw area')).not.toBeInTheDocument();
|
|
188
182
|
})];
|
|
@@ -208,7 +202,7 @@ describe('ReltioMap tests', function () {
|
|
|
208
202
|
}
|
|
209
203
|
];
|
|
210
204
|
onMarkerClick = jest.fn();
|
|
211
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
205
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, onMarkerClicked: onMarkerClick, markers: markers }));
|
|
212
206
|
return [4 /*yield*/, waitFor(function () {
|
|
213
207
|
markerMock = getLastInstance(AdvancedMarkerElement);
|
|
214
208
|
expect(markerMock).toBeDefined();
|
|
@@ -252,7 +246,7 @@ describe('ReltioMap tests', function () {
|
|
|
252
246
|
});
|
|
253
247
|
it('should fit map bounds correctly if markers loaded later than map and activeOverlay is not null', function () {
|
|
254
248
|
var activeOverlay = {
|
|
255
|
-
type:
|
|
249
|
+
type: POLYGON_DRAWING_MODE,
|
|
256
250
|
path: [
|
|
257
251
|
{ lat: 1, lng: 1 },
|
|
258
252
|
{ lat: 2, lng: 2 }
|
|
@@ -313,7 +307,7 @@ describe('ReltioMap tests', function () {
|
|
|
313
307
|
var fitMapBoundsForOverlay = jest.spyOn(helpers, 'fitMapBoundsForOverlay');
|
|
314
308
|
var rerender = setUp(__assign(__assign({}, defaultProps), { activeOverlay: null })).rerender;
|
|
315
309
|
var newProps = __assign(__assign({}, defaultProps), { activeOverlay: {
|
|
316
|
-
type:
|
|
310
|
+
type: POLYGON_DRAWING_MODE,
|
|
317
311
|
path: [
|
|
318
312
|
{ lat: 1, lng: 1 },
|
|
319
313
|
{ lat: 2, lng: 2 }
|
|
@@ -330,7 +324,7 @@ describe('ReltioMap tests', function () {
|
|
|
330
324
|
var fitMapBoundsForOverlay = jest.spyOn(helpers, 'fitMapBoundsForOverlay');
|
|
331
325
|
var rerender = setUp(__assign(__assign({}, defaultProps), { activeOverlay: null })).rerender;
|
|
332
326
|
var newProps = __assign(__assign({}, defaultProps), { activeOverlay: {
|
|
333
|
-
type:
|
|
327
|
+
type: POLYGON_DRAWING_MODE,
|
|
334
328
|
path: [
|
|
335
329
|
{ lat: 1, lng: 1 },
|
|
336
330
|
{ lat: 2, lng: 2 }
|
|
@@ -381,16 +375,16 @@ describe('ReltioMap tests', function () {
|
|
|
381
375
|
switch (_b.label) {
|
|
382
376
|
case 0:
|
|
383
377
|
activeOverlay = {
|
|
384
|
-
type:
|
|
378
|
+
type: POLYGON_DRAWING_MODE,
|
|
385
379
|
path: [
|
|
386
380
|
{ lat: 1, lng: 1 },
|
|
387
381
|
{ lat: 2, lng: 2 }
|
|
388
382
|
]
|
|
389
383
|
};
|
|
390
|
-
_a = setUp(__assign(__assign({}, defaultProps), {
|
|
384
|
+
_a = setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, activeOverlay: activeOverlay })), user = _a.user, rerender = _a.rerender;
|
|
391
385
|
polygon = getLastInstance(Polygon);
|
|
392
386
|
expect(polygon.setOptions).toHaveBeenCalledWith(expect.objectContaining({ paths: activeOverlay.path }));
|
|
393
|
-
newProps = __assign(__assign({}, defaultProps), {
|
|
387
|
+
newProps = __assign(__assign({}, defaultProps), { enablePolygonDrawing: true, activeOverlay: null });
|
|
394
388
|
rerender(React.createElement(ReltioMap, __assign({}, newProps)));
|
|
395
389
|
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
396
390
|
case 1:
|
|
@@ -400,16 +394,16 @@ describe('ReltioMap tests', function () {
|
|
|
400
394
|
}
|
|
401
395
|
});
|
|
402
396
|
}); });
|
|
403
|
-
it('should not render Polygon if "activeOverlay"
|
|
397
|
+
it('should not render Polygon if "activeOverlay" is not a polygon', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
404
398
|
var activeOverlay;
|
|
405
399
|
return __generator(this, function (_a) {
|
|
406
400
|
switch (_a.label) {
|
|
407
401
|
case 0:
|
|
408
402
|
activeOverlay = {
|
|
409
|
-
type:
|
|
403
|
+
type: 'bounds-rectangle',
|
|
410
404
|
path: [{ lat: 1, lng: 1 }]
|
|
411
405
|
};
|
|
412
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
406
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, activeOverlay: activeOverlay }));
|
|
413
407
|
return [4 /*yield*/, waitFor(function () {
|
|
414
408
|
expect(mockInstances.get(Polygon)).toHaveLength(0);
|
|
415
409
|
})];
|
|
@@ -425,19 +419,19 @@ describe('ReltioMap tests', function () {
|
|
|
425
419
|
switch (_a.label) {
|
|
426
420
|
case 0:
|
|
427
421
|
activeOverlay = {
|
|
428
|
-
type:
|
|
422
|
+
type: POLYGON_DRAWING_MODE,
|
|
429
423
|
path: [
|
|
430
424
|
{ lat: 1, lng: 1 },
|
|
431
425
|
{ lat: 2, lng: 2 }
|
|
432
426
|
]
|
|
433
427
|
};
|
|
434
428
|
onOverlayUpdated = jest.fn();
|
|
435
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
429
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, activeOverlay: activeOverlay, onOverlayUpdated: onOverlayUpdated }));
|
|
436
430
|
polygon = getLastInstance(Polygon);
|
|
437
431
|
getEventHandler(polygon, 'mouseup')();
|
|
438
432
|
return [4 /*yield*/, waitFor(function () {
|
|
439
433
|
expect(onOverlayUpdated).toHaveBeenCalledWith({
|
|
440
|
-
type:
|
|
434
|
+
type: POLYGON_DRAWING_MODE,
|
|
441
435
|
data: []
|
|
442
436
|
});
|
|
443
437
|
})];
|
|
@@ -454,19 +448,19 @@ describe('ReltioMap tests', function () {
|
|
|
454
448
|
switch (_a.label) {
|
|
455
449
|
case 0:
|
|
456
450
|
activeOverlay = {
|
|
457
|
-
type:
|
|
451
|
+
type: POLYGON_DRAWING_MODE,
|
|
458
452
|
path: [
|
|
459
453
|
{ lat: 1, lng: 1 },
|
|
460
454
|
{ lat: 2, lng: 2 }
|
|
461
455
|
]
|
|
462
456
|
};
|
|
463
457
|
onOverlayUpdated = jest.fn();
|
|
464
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
458
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, activeOverlay: activeOverlay, onOverlayUpdated: onOverlayUpdated }));
|
|
465
459
|
polygon = getLastInstance(Polygon);
|
|
466
460
|
getEventHandler(polygon, 'dragend')();
|
|
467
461
|
return [4 /*yield*/, waitFor(function () {
|
|
468
462
|
expect(onOverlayUpdated).toHaveBeenCalledWith({
|
|
469
|
-
type:
|
|
463
|
+
type: POLYGON_DRAWING_MODE,
|
|
470
464
|
data: []
|
|
471
465
|
});
|
|
472
466
|
})];
|
|
@@ -479,46 +473,54 @@ describe('ReltioMap tests', function () {
|
|
|
479
473
|
}); });
|
|
480
474
|
});
|
|
481
475
|
describe('drawing behavior', function () {
|
|
482
|
-
it("shouldn't
|
|
476
|
+
it("shouldn't enable double-click zoom suppression before entering draw mode", function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
477
|
+
var mapMock;
|
|
483
478
|
return __generator(this, function (_a) {
|
|
484
479
|
switch (_a.label) {
|
|
485
480
|
case 0:
|
|
486
|
-
setUp(__assign(__assign({}, defaultProps), {
|
|
487
|
-
return [4 /*yield*/, waitFor(function () {
|
|
488
|
-
expect(drawingManagerInstance).not.toBe(null);
|
|
489
|
-
})];
|
|
481
|
+
setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true }));
|
|
482
|
+
return [4 /*yield*/, waitFor(function () { return getLastInstance(Map); })];
|
|
490
483
|
case 1:
|
|
491
|
-
_a.sent();
|
|
492
|
-
expect(
|
|
484
|
+
mapMock = _a.sent();
|
|
485
|
+
expect(mapMock.setOptions).not.toHaveBeenCalledWith({ disableDoubleClickZoom: true });
|
|
493
486
|
return [2 /*return*/];
|
|
494
487
|
}
|
|
495
488
|
});
|
|
496
489
|
}); });
|
|
497
|
-
it('should
|
|
498
|
-
var user;
|
|
490
|
+
it('should toggle double-click zoom suppression when entering and leaving polygon drawing mode', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
491
|
+
var user, mapMock;
|
|
499
492
|
return __generator(this, function (_a) {
|
|
500
493
|
switch (_a.label) {
|
|
501
494
|
case 0:
|
|
502
|
-
user = setUp(__assign(__assign({}, defaultProps), {
|
|
503
|
-
return [4 /*yield*/,
|
|
495
|
+
user = setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true })).user;
|
|
496
|
+
return [4 /*yield*/, waitFor(function () { return getLastInstance(Map); })];
|
|
504
497
|
case 1:
|
|
498
|
+
mapMock = _a.sent();
|
|
499
|
+
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
500
|
+
case 2:
|
|
505
501
|
_a.sent();
|
|
506
|
-
expect(
|
|
502
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({
|
|
503
|
+
draggableCursor: MAP_DRAWING_CROSSHAIR_CURSOR
|
|
504
|
+
}));
|
|
505
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({
|
|
506
|
+
disableDoubleClickZoom: true,
|
|
507
|
+
clickableIcons: false
|
|
508
|
+
}));
|
|
507
509
|
return [4 /*yield*/, user.click(screen.getByLabelText('Clear area'))];
|
|
508
|
-
case
|
|
510
|
+
case 3:
|
|
509
511
|
_a.sent();
|
|
510
|
-
expect(
|
|
512
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({ disableDoubleClickZoom: false }));
|
|
511
513
|
return [2 /*return*/];
|
|
512
514
|
}
|
|
513
515
|
});
|
|
514
516
|
}); });
|
|
515
|
-
it("shouldn't
|
|
517
|
+
it("shouldn't attach polygon drawing listeners when polygon drawing is disabled", function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
516
518
|
return __generator(this, function (_a) {
|
|
517
519
|
switch (_a.label) {
|
|
518
520
|
case 0:
|
|
519
521
|
setUp(__assign({}, defaultProps));
|
|
520
522
|
return [4 /*yield*/, waitFor(function () {
|
|
521
|
-
expect(
|
|
523
|
+
expect(screen.queryByLabelText('Draw area')).not.toBeInTheDocument();
|
|
522
524
|
})];
|
|
523
525
|
case 1:
|
|
524
526
|
_a.sent();
|
|
@@ -526,7 +528,7 @@ describe('ReltioMap tests', function () {
|
|
|
526
528
|
}
|
|
527
529
|
});
|
|
528
530
|
}); });
|
|
529
|
-
it("shouldn't render TopRightMapControls
|
|
531
|
+
it("shouldn't render TopRightMapControls when polygon drawing is disabled", function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
530
532
|
return __generator(this, function (_a) {
|
|
531
533
|
switch (_a.label) {
|
|
532
534
|
case 0:
|
|
@@ -541,38 +543,213 @@ describe('ReltioMap tests', function () {
|
|
|
541
543
|
}
|
|
542
544
|
});
|
|
543
545
|
}); });
|
|
544
|
-
it('should call props.onOverlayUpdated after polygon completing', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
545
|
-
var onOverlayUpdated, user,
|
|
546
|
+
it('should call props.onOverlayUpdated after polygon completing with correct vertex coordinates', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
547
|
+
var onOverlayUpdated, OriginalPolygon, polygonPathSpy, user, mapMock, mapDiv, clickHandler;
|
|
546
548
|
return __generator(this, function (_a) {
|
|
547
549
|
switch (_a.label) {
|
|
548
550
|
case 0:
|
|
549
551
|
onOverlayUpdated = jest.fn();
|
|
550
|
-
|
|
552
|
+
OriginalPolygon = google.maps.Polygon;
|
|
553
|
+
polygonPathSpy = jest.spyOn(google.maps, 'Polygon').mockImplementation(function (opts) {
|
|
554
|
+
var instance = new OriginalPolygon(opts);
|
|
555
|
+
var raw = opts === null || opts === void 0 ? void 0 : opts.paths;
|
|
556
|
+
var ring = !raw
|
|
557
|
+
? []
|
|
558
|
+
: 'getArray' in raw
|
|
559
|
+
? raw.getArray()
|
|
560
|
+
: raw;
|
|
561
|
+
var mvc = new google.maps.MVCArray();
|
|
562
|
+
mvc.getArray = jest.fn(function () { return ring; });
|
|
563
|
+
instance.getPath = jest.fn(function () { return mvc; });
|
|
564
|
+
return instance;
|
|
565
|
+
});
|
|
566
|
+
user = setUp(__assign(__assign({}, defaultProps), { onOverlayUpdated: onOverlayUpdated, enablePolygonDrawing: true })).user;
|
|
567
|
+
return [4 /*yield*/, waitFor(function () {
|
|
568
|
+
var m = getLastInstance(Map);
|
|
569
|
+
if (!m) {
|
|
570
|
+
throw new Error('Map not ready');
|
|
571
|
+
}
|
|
572
|
+
return m;
|
|
573
|
+
})];
|
|
574
|
+
case 1:
|
|
575
|
+
mapMock = _a.sent();
|
|
576
|
+
mapDiv = document.createElement('div');
|
|
577
|
+
mapMock.getDiv = jest.fn(function () { return mapDiv; });
|
|
551
578
|
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
579
|
+
case 2:
|
|
580
|
+
_a.sent();
|
|
581
|
+
clickHandler = getEventHandler(mapMock, 'click');
|
|
582
|
+
act(function () {
|
|
583
|
+
clickHandler(mapMouseEventWith(1, 2));
|
|
584
|
+
clickHandler(mapMouseEventWith(3, 4));
|
|
585
|
+
clickHandler(mapMouseEventWith(5, 6));
|
|
586
|
+
});
|
|
587
|
+
act(function () {
|
|
588
|
+
mapDiv.dispatchEvent(new MouseEvent('dblclick', { bubbles: true, cancelable: true, composed: true }));
|
|
589
|
+
});
|
|
590
|
+
return [4 /*yield*/, waitFor(function () {
|
|
591
|
+
expect(onOverlayUpdated).toHaveBeenCalled();
|
|
592
|
+
})];
|
|
593
|
+
case 3:
|
|
594
|
+
_a.sent();
|
|
595
|
+
expect(onOverlayUpdated.mock.calls[0][0]).toEqual(expect.objectContaining({
|
|
596
|
+
type: POLYGON_DRAWING_MODE,
|
|
597
|
+
data: [
|
|
598
|
+
[1, 2],
|
|
599
|
+
[3, 4],
|
|
600
|
+
[5, 6]
|
|
601
|
+
]
|
|
602
|
+
}));
|
|
603
|
+
polygonPathSpy.mockRestore();
|
|
604
|
+
return [2 /*return*/];
|
|
605
|
+
}
|
|
606
|
+
});
|
|
607
|
+
}); });
|
|
608
|
+
it('completes the ring when the first vertex marker is clicked after three map clicks', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
609
|
+
var onOverlayUpdated, OriginalPolygon, polygonPathSpy, user, mapMock, mapDiv, clickHandler, firstVertexMarker;
|
|
610
|
+
return __generator(this, function (_a) {
|
|
611
|
+
switch (_a.label) {
|
|
612
|
+
case 0:
|
|
613
|
+
onOverlayUpdated = jest.fn();
|
|
614
|
+
OriginalPolygon = google.maps.Polygon;
|
|
615
|
+
polygonPathSpy = jest.spyOn(google.maps, 'Polygon').mockImplementation(function (opts) {
|
|
616
|
+
var instance = new OriginalPolygon(opts);
|
|
617
|
+
var raw = opts === null || opts === void 0 ? void 0 : opts.paths;
|
|
618
|
+
var ring = !raw
|
|
619
|
+
? []
|
|
620
|
+
: 'getArray' in raw
|
|
621
|
+
? raw.getArray()
|
|
622
|
+
: raw;
|
|
623
|
+
var mvc = new google.maps.MVCArray();
|
|
624
|
+
mvc.getArray = jest.fn(function () { return ring; });
|
|
625
|
+
instance.getPath = jest.fn(function () { return mvc; });
|
|
626
|
+
return instance;
|
|
627
|
+
});
|
|
628
|
+
user = setUp(__assign(__assign({}, defaultProps), { onOverlayUpdated: onOverlayUpdated, enablePolygonDrawing: true })).user;
|
|
629
|
+
return [4 /*yield*/, waitFor(function () {
|
|
630
|
+
var m = getLastInstance(Map);
|
|
631
|
+
if (!m) {
|
|
632
|
+
throw new Error('Map not ready');
|
|
633
|
+
}
|
|
634
|
+
return m;
|
|
635
|
+
})];
|
|
552
636
|
case 1:
|
|
637
|
+
mapMock = _a.sent();
|
|
638
|
+
mapDiv = document.createElement('div');
|
|
639
|
+
mapMock.getDiv = jest.fn(function () { return mapDiv; });
|
|
640
|
+
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
641
|
+
case 2:
|
|
553
642
|
_a.sent();
|
|
554
|
-
|
|
555
|
-
overlay = {
|
|
556
|
-
setMap: jest.fn(),
|
|
557
|
-
getPath: function () { return ({
|
|
558
|
-
getArray: function () { return [
|
|
559
|
-
{ lat: function () { return 1; }, lng: function () { return 2; } },
|
|
560
|
-
{ lat: function () { return 3; }, lng: function () { return 4; } }
|
|
561
|
-
]; }
|
|
562
|
-
}); }
|
|
563
|
-
};
|
|
643
|
+
clickHandler = getEventHandler(mapMock, 'click');
|
|
564
644
|
act(function () {
|
|
565
|
-
|
|
645
|
+
clickHandler(mapMouseEventWith(1, 2));
|
|
646
|
+
clickHandler(mapMouseEventWith(3, 4));
|
|
647
|
+
clickHandler(mapMouseEventWith(5, 6));
|
|
566
648
|
});
|
|
567
|
-
|
|
568
|
-
|
|
649
|
+
firstVertexMarker = getFirstInstance(AdvancedMarkerElement);
|
|
650
|
+
expect(firstVertexMarker).toBeDefined();
|
|
651
|
+
act(function () {
|
|
652
|
+
getEventHandler(firstVertexMarker, 'click')(__assign(__assign({}, mapMouseEventWith(0, 0)), { stop: jest.fn() }));
|
|
653
|
+
});
|
|
654
|
+
return [4 /*yield*/, waitFor(function () {
|
|
655
|
+
expect(onOverlayUpdated).toHaveBeenCalled();
|
|
656
|
+
})];
|
|
657
|
+
case 3:
|
|
658
|
+
_a.sent();
|
|
659
|
+
expect(onOverlayUpdated.mock.calls[0][0]).toEqual(expect.objectContaining({
|
|
660
|
+
type: POLYGON_DRAWING_MODE,
|
|
569
661
|
data: [
|
|
570
662
|
[1, 2],
|
|
571
|
-
[3, 4]
|
|
663
|
+
[3, 4],
|
|
664
|
+
[5, 6]
|
|
572
665
|
]
|
|
666
|
+
}));
|
|
667
|
+
polygonPathSpy.mockRestore();
|
|
668
|
+
return [2 /*return*/];
|
|
669
|
+
}
|
|
670
|
+
});
|
|
671
|
+
}); });
|
|
672
|
+
it('clears the in-progress draw on map mouseleave so double-click does not complete a polygon', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
673
|
+
var onOverlayUpdated, user, mapMock, mapDiv, clickHandler;
|
|
674
|
+
return __generator(this, function (_a) {
|
|
675
|
+
switch (_a.label) {
|
|
676
|
+
case 0:
|
|
677
|
+
onOverlayUpdated = jest.fn();
|
|
678
|
+
user = setUp(__assign(__assign({}, defaultProps), { onOverlayUpdated: onOverlayUpdated, enablePolygonDrawing: true })).user;
|
|
679
|
+
return [4 /*yield*/, waitFor(function () { return getLastInstance(Map); })];
|
|
680
|
+
case 1:
|
|
681
|
+
mapMock = _a.sent();
|
|
682
|
+
mapDiv = document.createElement('div');
|
|
683
|
+
mapMock.getDiv = jest.fn(function () { return mapDiv; });
|
|
684
|
+
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
685
|
+
case 2:
|
|
686
|
+
_a.sent();
|
|
687
|
+
clickHandler = getEventHandler(mapMock, 'click');
|
|
688
|
+
act(function () {
|
|
689
|
+
clickHandler(mapMouseEventWith(1, 2));
|
|
690
|
+
clickHandler(mapMouseEventWith(3, 4));
|
|
691
|
+
clickHandler(mapMouseEventWith(5, 6));
|
|
573
692
|
});
|
|
574
|
-
|
|
575
|
-
|
|
693
|
+
act(function () {
|
|
694
|
+
mapDiv.dispatchEvent(new MouseEvent('mouseleave', { bubbles: true }));
|
|
695
|
+
});
|
|
696
|
+
act(function () {
|
|
697
|
+
mapDiv.dispatchEvent(new MouseEvent('dblclick', { bubbles: true, cancelable: true, composed: true }));
|
|
698
|
+
});
|
|
699
|
+
expect(onOverlayUpdated).not.toHaveBeenCalled();
|
|
700
|
+
return [2 /*return*/];
|
|
701
|
+
}
|
|
702
|
+
});
|
|
703
|
+
}); });
|
|
704
|
+
it('ignores a second double-click after completion until draw mode is toggled', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
705
|
+
var onOverlayUpdated, OriginalPolygon, polygonPathSpy, user, mapMock, mapDiv, clickHandler;
|
|
706
|
+
return __generator(this, function (_a) {
|
|
707
|
+
switch (_a.label) {
|
|
708
|
+
case 0:
|
|
709
|
+
onOverlayUpdated = jest.fn();
|
|
710
|
+
OriginalPolygon = google.maps.Polygon;
|
|
711
|
+
polygonPathSpy = jest.spyOn(google.maps, 'Polygon').mockImplementation(function (opts) {
|
|
712
|
+
var instance = new OriginalPolygon(opts);
|
|
713
|
+
var raw = opts === null || opts === void 0 ? void 0 : opts.paths;
|
|
714
|
+
var ring = !raw
|
|
715
|
+
? []
|
|
716
|
+
: 'getArray' in raw
|
|
717
|
+
? raw.getArray()
|
|
718
|
+
: raw;
|
|
719
|
+
var mvc = new google.maps.MVCArray();
|
|
720
|
+
mvc.getArray = jest.fn(function () { return ring; });
|
|
721
|
+
instance.getPath = jest.fn(function () { return mvc; });
|
|
722
|
+
return instance;
|
|
723
|
+
});
|
|
724
|
+
user = setUp(__assign(__assign({}, defaultProps), { onOverlayUpdated: onOverlayUpdated, enablePolygonDrawing: true })).user;
|
|
725
|
+
return [4 /*yield*/, waitFor(function () { return getLastInstance(Map); })];
|
|
726
|
+
case 1:
|
|
727
|
+
mapMock = _a.sent();
|
|
728
|
+
mapDiv = document.createElement('div');
|
|
729
|
+
mapMock.getDiv = jest.fn(function () { return mapDiv; });
|
|
730
|
+
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
731
|
+
case 2:
|
|
732
|
+
_a.sent();
|
|
733
|
+
clickHandler = getEventHandler(mapMock, 'click');
|
|
734
|
+
act(function () {
|
|
735
|
+
clickHandler(mapMouseEventWith(1, 2));
|
|
736
|
+
clickHandler(mapMouseEventWith(3, 4));
|
|
737
|
+
clickHandler(mapMouseEventWith(5, 6));
|
|
738
|
+
});
|
|
739
|
+
act(function () {
|
|
740
|
+
mapDiv.dispatchEvent(new MouseEvent('dblclick', { bubbles: true, cancelable: true, composed: true }));
|
|
741
|
+
});
|
|
742
|
+
return [4 /*yield*/, waitFor(function () {
|
|
743
|
+
expect(onOverlayUpdated).toHaveBeenCalledTimes(1);
|
|
744
|
+
})];
|
|
745
|
+
case 3:
|
|
746
|
+
_a.sent();
|
|
747
|
+
onOverlayUpdated.mockClear();
|
|
748
|
+
act(function () {
|
|
749
|
+
mapDiv.dispatchEvent(new MouseEvent('dblclick', { bubbles: true, cancelable: true, composed: true }));
|
|
750
|
+
});
|
|
751
|
+
expect(onOverlayUpdated).not.toHaveBeenCalled();
|
|
752
|
+
polygonPathSpy.mockRestore();
|
|
576
753
|
return [2 /*return*/];
|
|
577
754
|
}
|
|
578
755
|
});
|
|
@@ -584,13 +761,13 @@ describe('ReltioMap tests', function () {
|
|
|
584
761
|
case 0:
|
|
585
762
|
onOverlayUpdated = jest.fn();
|
|
586
763
|
activeOverlay = {
|
|
587
|
-
type:
|
|
764
|
+
type: POLYGON_DRAWING_MODE,
|
|
588
765
|
path: [
|
|
589
766
|
{ lat: 1, lng: 1 },
|
|
590
767
|
{ lat: 2, lng: 2 }
|
|
591
768
|
]
|
|
592
769
|
};
|
|
593
|
-
user = setUp(__assign(__assign({}, defaultProps), {
|
|
770
|
+
user = setUp(__assign(__assign({}, defaultProps), { enablePolygonDrawing: true, activeOverlay: activeOverlay, onOverlayUpdated: onOverlayUpdated })).user;
|
|
594
771
|
return [4 /*yield*/, user.click(screen.getByLabelText('Clear area'))];
|
|
595
772
|
case 1:
|
|
596
773
|
_a.sent();
|
|
@@ -602,7 +779,7 @@ describe('ReltioMap tests', function () {
|
|
|
602
779
|
});
|
|
603
780
|
describe('"Search when I move the map" behavior', function () {
|
|
604
781
|
it('should call props.onMapBoundsChanged with current map bounds and reset drawingMode on change isSearchOnMapMove(true)', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
605
|
-
var onMapBoundsChanged, mapBoundsPolygon, user;
|
|
782
|
+
var onMapBoundsChanged, mapBoundsPolygon, user, mapMock;
|
|
606
783
|
return __generator(this, function (_a) {
|
|
607
784
|
switch (_a.label) {
|
|
608
785
|
case 0:
|
|
@@ -611,39 +788,57 @@ describe('ReltioMap tests', function () {
|
|
|
611
788
|
[1, 2],
|
|
612
789
|
[3, 4]
|
|
613
790
|
];
|
|
614
|
-
user = setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged,
|
|
791
|
+
user = setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged, enablePolygonDrawing: true })).user;
|
|
615
792
|
jest.spyOn(helpers, 'getMapBoundsPolygon').mockImplementation(function () { return mapBoundsPolygon; });
|
|
616
|
-
return [4 /*yield*/,
|
|
793
|
+
return [4 /*yield*/, waitFor(function () { return getLastInstance(Map); })];
|
|
617
794
|
case 1:
|
|
795
|
+
mapMock = _a.sent();
|
|
796
|
+
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
797
|
+
case 2:
|
|
618
798
|
_a.sent();
|
|
619
|
-
expect(
|
|
799
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({
|
|
800
|
+
draggableCursor: MAP_DRAWING_CROSSHAIR_CURSOR
|
|
801
|
+
}));
|
|
802
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({
|
|
803
|
+
disableDoubleClickZoom: true,
|
|
804
|
+
clickableIcons: false
|
|
805
|
+
}));
|
|
620
806
|
return [4 /*yield*/, user.click(screen.getByText('Search as I move the map'))];
|
|
621
|
-
case
|
|
807
|
+
case 3:
|
|
622
808
|
_a.sent();
|
|
623
|
-
expect(
|
|
809
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({ disableDoubleClickZoom: false }));
|
|
624
810
|
expect(onMapBoundsChanged).toHaveBeenCalledWith(mapBoundsPolygon);
|
|
625
811
|
return [2 /*return*/];
|
|
626
812
|
}
|
|
627
813
|
});
|
|
628
814
|
}); });
|
|
629
815
|
it('should call props.onMapBoundsChanged with null on change isSearchOnMapMove(false)', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
630
|
-
var onMapBoundsChanged, user;
|
|
816
|
+
var onMapBoundsChanged, user, mapMock;
|
|
631
817
|
return __generator(this, function (_a) {
|
|
632
818
|
switch (_a.label) {
|
|
633
819
|
case 0:
|
|
634
820
|
onMapBoundsChanged = jest.fn();
|
|
635
|
-
user = setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged,
|
|
636
|
-
return [4 /*yield*/,
|
|
821
|
+
user = setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged, enablePolygonDrawing: true })).user;
|
|
822
|
+
return [4 /*yield*/, waitFor(function () { return getLastInstance(Map); })];
|
|
637
823
|
case 1:
|
|
638
|
-
_a.sent();
|
|
639
|
-
|
|
640
|
-
return [4 /*yield*/, user.click(screen.getByText('Search as I move the map'))];
|
|
824
|
+
mapMock = _a.sent();
|
|
825
|
+
return [4 /*yield*/, user.click(screen.getByLabelText('Draw area'))];
|
|
641
826
|
case 2:
|
|
642
827
|
_a.sent();
|
|
828
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({
|
|
829
|
+
draggableCursor: MAP_DRAWING_CROSSHAIR_CURSOR
|
|
830
|
+
}));
|
|
831
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({
|
|
832
|
+
disableDoubleClickZoom: true,
|
|
833
|
+
clickableIcons: false
|
|
834
|
+
}));
|
|
643
835
|
return [4 /*yield*/, user.click(screen.getByText('Search as I move the map'))];
|
|
644
836
|
case 3:
|
|
645
837
|
_a.sent();
|
|
646
|
-
|
|
838
|
+
return [4 /*yield*/, user.click(screen.getByText('Search as I move the map'))];
|
|
839
|
+
case 4:
|
|
840
|
+
_a.sent();
|
|
841
|
+
expect(mapMock.setOptions).toHaveBeenCalledWith(expect.objectContaining({ disableDoubleClickZoom: false }));
|
|
647
842
|
expect(onMapBoundsChanged).toHaveBeenCalledWith(null);
|
|
648
843
|
return [2 /*return*/];
|
|
649
844
|
}
|
|
@@ -656,7 +851,7 @@ describe('ReltioMap tests', function () {
|
|
|
656
851
|
[1, 2],
|
|
657
852
|
[3, 4]
|
|
658
853
|
];
|
|
659
|
-
setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged,
|
|
854
|
+
setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged, enablePolygonDrawing: true, isSearchOnMapMove: true }));
|
|
660
855
|
jest.spyOn(helpers, 'getMapBoundsPolygon').mockImplementation(function () { return mapBoundsPolygon; });
|
|
661
856
|
expect(screen.getByLabelText('Search as I move the map').checked).toBe(true);
|
|
662
857
|
expect(onMapBoundsChanged).not.toHaveBeenCalled();
|
|
@@ -673,7 +868,7 @@ describe('ReltioMap tests', function () {
|
|
|
673
868
|
[1, 2],
|
|
674
869
|
[3, 4]
|
|
675
870
|
];
|
|
676
|
-
setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged,
|
|
871
|
+
setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged, enablePolygonDrawing: true, isSearchOnMapMove: true }));
|
|
677
872
|
jest.spyOn(helpers, 'getMapBoundsPolygon').mockImplementation(function () { return mapBoundsPolygon; });
|
|
678
873
|
expect(screen.getByLabelText('Search as I move the map').checked).toBe(true);
|
|
679
874
|
var mapMock = getLastInstance(Map);
|
|
@@ -691,7 +886,7 @@ describe('ReltioMap tests', function () {
|
|
|
691
886
|
it('should not call props.onMapBoundsChanged on google map idle if "Search when I move the map" mode is off', function () {
|
|
692
887
|
jest.useFakeTimers();
|
|
693
888
|
var onMapBoundsChanged = jest.fn();
|
|
694
|
-
setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged,
|
|
889
|
+
setUp(__assign(__assign({}, defaultProps), { onMapBoundsChanged: onMapBoundsChanged, enablePolygonDrawing: true, isSearchOnMapMove: false }));
|
|
695
890
|
expect(screen.getByLabelText('Search as I move the map').checked).toBe(false);
|
|
696
891
|
getEventHandler(getLastInstance(Map), 'idle')();
|
|
697
892
|
jest.runOnlyPendingTimers();
|