Skip to content

Commit 78f4454

Browse files
test: refactor map tests
1 parent fe5c59f commit 78f4454

File tree

2 files changed

+107
-62
lines changed

2 files changed

+107
-62
lines changed

example/src/screens/integration_tests/integration_test.ts

Lines changed: 88 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -77,94 +77,130 @@ export const testNavigationSessionInitialization = async (
7777
setDetoxStep(1);
7878
};
7979

80-
const expectFalseMessage = (expectation: string) => {
81-
return `Expected ${expectation} to be false but it was true`;
82-
};
83-
8480
export const testMapInitialization = async (testTools: TestTools) => {
85-
const {
86-
mapViewController,
87-
passTest,
88-
failTest,
89-
expectFalseError,
90-
expectTrueError,
91-
} = testTools;
81+
const { mapViewController, passTest, failTest, expectFalseError } = testTools;
9282
if (!mapViewController) {
9383
return failTest('mapViewController was expected to exist');
9484
}
95-
if (Platform.OS === 'ios') {
96-
if ((await mapViewController.getUiSettings()).isCompassEnabled) {
85+
mapViewController.setCompassEnabled(false);
86+
mapViewController.setRotateGesturesEnabled(false);
87+
mapViewController.setScrollGesturesEnabled(false);
88+
mapViewController.setScrollGesturesEnabledDuringRotateOrZoom(false);
89+
mapViewController.setTiltGesturesEnabled(false);
90+
mapViewController.setZoomGesturesEnabled(false);
91+
92+
if (Platform.OS === 'android') {
93+
mapViewController.setZoomControlsEnabled(false);
94+
mapViewController.setMapToolbarEnabled(false);
95+
}
96+
// Timeout here is used to avoid issues on Android.
97+
await delay(3000);
98+
99+
if ((await mapViewController.getUiSettings()).isCompassEnabled) {
100+
return expectFalseError(
101+
'mapViewController.getUiSettings()).isCompassEnabled'
102+
);
103+
}
104+
if ((await mapViewController.getUiSettings()).isRotateGesturesEnabled) {
105+
return expectFalseError(
106+
'mapViewController.getUiSettings()).isRotateGesturesEnabled'
107+
);
108+
}
109+
if ((await mapViewController.getUiSettings()).isScrollGesturesEnabled) {
110+
return expectFalseError(
111+
'mapViewController.getUiSettings()).isScrollGesturesEnabled'
112+
);
113+
}
114+
if (
115+
(await mapViewController.getUiSettings())
116+
.isScrollGesturesEnabledDuringRotateOrZoom
117+
) {
118+
return expectFalseError(
119+
'mapViewController.getUiSettings()).isScrollGesturesEnabledDuringRotateOrZoom'
120+
);
121+
}
122+
if ((await mapViewController.getUiSettings()).isTiltGesturesEnabled) {
123+
return expectFalseError(
124+
'mapViewController.getUiSettings()).isTiltGesturesEnabled'
125+
);
126+
}
127+
if ((await mapViewController.getUiSettings()).isZoomGesturesEnabled) {
128+
return expectFalseError(
129+
'mapViewController.getUiSettings()).isZoomGesturesEnabled'
130+
);
131+
}
132+
133+
if (Platform.OS === 'android') {
134+
if ((await mapViewController.getUiSettings()).isZoomControlsEnabled) {
97135
return expectFalseError(
98-
'mapViewController.getUiSettings()).isCompassEnabled'
99-
);
100-
}
101-
} else {
102-
if (!(await mapViewController.getUiSettings()).isCompassEnabled) {
103-
return expectTrueError(
104-
'mapViewController.getUiSettings()).isCompassEnabled'
136+
'mapViewController.getUiSettings()).isZoomControlsEnabled'
105137
);
106138
}
107-
}
108-
if (Platform.OS === 'ios') {
109139
if ((await mapViewController.getUiSettings()).isMapToolbarEnabled) {
110140
return expectFalseError(
111141
'mapViewController.getUiSettings()).isMapToolbarEnabled'
112142
);
113143
}
114-
} else {
115-
if (!(await mapViewController.getUiSettings()).isMapToolbarEnabled) {
116-
return expectTrueError(
117-
'mapViewController.getUiSettings()).isMapToolbarEnabled'
118-
);
119-
}
120144
}
121-
if (!(await mapViewController.getUiSettings()).isIndoorLevelPickerEnabled) {
122-
return failTest(
123-
expectFalseMessage(
124-
'mapViewController.getUiSettings()).isIndoorLevelPickerEnabled'
125-
)
145+
146+
mapViewController.setCompassEnabled(true);
147+
mapViewController.setRotateGesturesEnabled(true);
148+
mapViewController.setScrollGesturesEnabled(true);
149+
mapViewController.setScrollGesturesEnabledDuringRotateOrZoom(true);
150+
mapViewController.setTiltGesturesEnabled(true);
151+
mapViewController.setZoomGesturesEnabled(true);
152+
153+
if (Platform.OS === 'android') {
154+
mapViewController.setZoomControlsEnabled(true);
155+
mapViewController.setMapToolbarEnabled(true);
156+
}
157+
// Timeout here is used to avoid issues on Android.
158+
await delay(3000);
159+
160+
if (!(await mapViewController.getUiSettings()).isCompassEnabled) {
161+
return expectFalseError(
162+
'!mapViewController.getUiSettings()).isCompassEnabled'
126163
);
127164
}
128165
if (!(await mapViewController.getUiSettings()).isRotateGesturesEnabled) {
129166
return expectFalseError(
130-
'mapViewController.getUiSettings()).isRotateGesturesEnabled'
167+
'!mapViewController.getUiSettings()).isRotateGesturesEnabled'
131168
);
132169
}
133170
if (!(await mapViewController.getUiSettings()).isScrollGesturesEnabled) {
134171
return expectFalseError(
135-
'mapViewController.getUiSettings()).isScrollGesturesEnabled'
172+
'!mapViewController.getUiSettings()).isScrollGesturesEnabled'
136173
);
137174
}
138175
if (
139176
!(await mapViewController.getUiSettings())
140177
.isScrollGesturesEnabledDuringRotateOrZoom
141178
) {
142179
return expectFalseError(
143-
'mapViewController.getUiSettings()).isScrollGesturesEnabledDuringRotateOrZoom'
180+
'!mapViewController.getUiSettings()).isScrollGesturesEnabledDuringRotateOrZoom'
144181
);
145182
}
146183
if (!(await mapViewController.getUiSettings()).isTiltGesturesEnabled) {
147184
return expectFalseError(
148-
'mapViewController.getUiSettings()).isTiltGesturesEnabled'
149-
);
150-
}
151-
if ((await mapViewController.getUiSettings()).isZoomControlsEnabled) {
152-
return expectFalseError(
153-
'mapViewController.getUiSettings()).isZoomControlsEnabled'
185+
'!mapViewController.getUiSettings()).isTiltGesturesEnabled'
154186
);
155187
}
156188
if (!(await mapViewController.getUiSettings()).isZoomGesturesEnabled) {
157189
return expectFalseError(
158-
'mapViewController.getUiSettings()).isZoomGesturesEnabled'
190+
'!mapViewController.getUiSettings()).isZoomGesturesEnabled'
159191
);
160192
}
161-
if (Platform.OS === 'ios') {
162-
if (!(await mapViewController.isMyLocationEnabled())) {
163-
return expectFalseError('await mapViewController.isMyLocationEnabled()');
193+
194+
if (Platform.OS === 'android') {
195+
if (!(await mapViewController.getUiSettings()).isZoomControlsEnabled) {
196+
return expectFalseError(
197+
'!mapViewController.getUiSettings()).isZoomControlsEnabled'
198+
);
164199
}
165-
} else {
166-
if (await mapViewController.isMyLocationEnabled()) {
167-
return expectTrueError('await mapViewController.isMyLocationEnabled()');
200+
if (!(await mapViewController.getUiSettings()).isMapToolbarEnabled) {
201+
return expectFalseError(
202+
'!mapViewController.getUiSettings()).isMapToolbarEnabled'
203+
);
168204
}
169205
}
170206

@@ -431,6 +467,7 @@ export const testMoveCamera = async (testTools: TestTools) => {
431467
},
432468
});
433469

470+
// Timeout here is used to avoid issues on Android.
434471
await delay(3000);
435472
const hongKongPosition = await mapViewController.getCameraPosition();
436473

@@ -451,6 +488,7 @@ export const testMoveCamera = async (testTools: TestTools) => {
451488
},
452489
});
453490

491+
// Timeout here is used to avoid issues on Android.
454492
await delay(3000);
455493
const tokyoPosition = await mapViewController.getCameraPosition();
456494

@@ -483,6 +521,7 @@ export const testTiltZoomBearingCamera = async (testTools: TestTools) => {
483521
zoom: 6,
484522
});
485523

524+
// Timeout here is used to avoid issues on Android.
486525
await delay(3000);
487526
const hongKongPosition = await mapViewController.getCameraPosition();
488527

yarn.lock

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4655,17 +4655,7 @@ __metadata:
46554655
languageName: node
46564656
linkType: hard
46574657

4658-
"@types/jest@npm:^29.5.14":
4659-
version: 29.5.14
4660-
resolution: "@types/jest@npm:29.5.14"
4661-
dependencies:
4662-
expect: ^29.0.0
4663-
pretty-format: ^29.0.0
4664-
checksum: 18dba4623f26661641d757c63da2db45e9524c9be96a29ef713c703a9a53792df9ecee9f7365a0858ddbd6440d98fe6b65ca67895ca5884b73cbc7ffc11f3838
4665-
languageName: node
4666-
linkType: hard
4667-
4668-
"@types/jest@npm:^29.5.5":
4658+
"@types/jest@npm:^29.5.14, @types/jest@npm:^29.5.5":
46694659
version: 29.5.14
46704660
resolution: "@types/jest@npm:29.5.14"
46714661
dependencies:
@@ -5628,6 +5618,15 @@ __metadata:
56285618
languageName: node
56295619
linkType: hard
56305620

5621+
"bs-logger@npm:^0.2.6":
5622+
version: 0.2.6
5623+
resolution: "bs-logger@npm:0.2.6"
5624+
dependencies:
5625+
fast-json-stable-stringify: 2.x
5626+
checksum: d34bdaf68c64bd099ab97c3ea608c9ae7d3f5faa1178b3f3f345acd94e852e608b2d4f9103fb2e503f5e69780e98293df41691b84be909b41cf5045374d54606
5627+
languageName: node
5628+
linkType: hard
5629+
56315630
"bser@npm:2.1.1":
56325631
version: 2.1.1
56335632
resolution: "bser@npm:2.1.1"
@@ -8747,6 +8746,13 @@ __metadata:
87478746
languageName: node
87488747
linkType: hard
87498748

8749+
"is-plain-obj@npm:^2.1.0":
8750+
version: 2.1.0
8751+
resolution: "is-plain-obj@npm:2.1.0"
8752+
checksum: cec9100678b0a9fe0248a81743041ed990c2d4c99f893d935545cfbc42876cbe86d207f3b895700c690ad2fa520e568c44afc1605044b535a7820c1d40e38daa
8753+
languageName: node
8754+
linkType: hard
8755+
87508756
"is-plain-object@npm:^2.0.4":
87518757
version: 2.0.4
87528758
resolution: "is-plain-object@npm:2.0.4"
@@ -11385,7 +11391,7 @@ __metadata:
1138511391
languageName: node
1138611392
linkType: hard
1138711393

11388-
"object-assign@npm:^4.1.1":
11394+
"object-assign@npm:^4.1.0, object-assign@npm:^4.1.1":
1138911395
version: 4.1.1
1139011396
resolution: "object-assign@npm:4.1.1"
1139111397
checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f
@@ -12860,7 +12866,7 @@ __metadata:
1286012866
languageName: node
1286112867
linkType: hard
1286212868

12863-
"semver@npm:^7.1.3, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0":
12869+
"semver@npm:^7.0.0, semver@npm:^7.1.3, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0, semver@npm:^7.6.3":
1286412870
version: 7.6.3
1286512871
resolution: "semver@npm:7.6.3"
1286612872
bin:

0 commit comments

Comments
 (0)