-
Notifications
You must be signed in to change notification settings - Fork 190
Expand file tree
/
Copy pathcamera_test.dart
More file actions
74 lines (66 loc) · 2.95 KB
/
camera_test.dart
File metadata and controls
74 lines (66 loc) · 2.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
import 'package:flutter_test/flutter_test.dart';
import 'package:integration_test/integration_test.dart';
import 'package:mapbox_maps_flutter/mapbox_maps_flutter.dart';
import 'app.dart' as app;
void main() {
IntegrationTestWidgetsFlutterBinding.ensureInitialized();
final initialCamera = CameraOptions(
center: Point(coordinates: Position(0, 0)),
padding: MbxEdgeInsets(top: 10, left: 20, bottom: 30, right: 40),
zoom: 15,
pitch: 60,
bearing: 12,
);
group('camera get and set', () {
testWidgets('set camera when creating a map', (WidgetTester tester) async {
final mapFuture = app.main(camera: initialCamera);
await tester.pumpAndSettle();
final mapboxMap = await mapFuture;
// Verify that the camera options are set correctly
final camera = await mapboxMap.getCameraState();
expect(camera.center.coordinates.lng,
closeTo(initialCamera.center!.coordinates.lng, 0.0001));
expect(camera.center.coordinates.lat,
closeTo(initialCamera.center!.coordinates.lat, 0.0001));
expect(camera.padding.top, closeTo(initialCamera.padding!.top, 0.0001));
expect(camera.padding.left, closeTo(initialCamera.padding!.left, 0.0001));
expect(camera.padding.bottom,
closeTo(initialCamera.padding!.bottom, 0.0001));
expect(
camera.padding.right, closeTo(initialCamera.padding!.right, 0.0001));
expect(camera.zoom, closeTo(initialCamera.zoom!, 0.0001));
expect(camera.pitch, closeTo(initialCamera.pitch!, 0.0001));
expect(camera.bearing, closeTo(initialCamera.bearing!, 0.0001));
});
testWidgets('set camera after map created', (tester) async {
final mapFuture = app.main();
await tester.pumpAndSettle();
final mapboxMap = await mapFuture;
// Set the camera options
final cameraOptions = CameraOptions(
center: Point(coordinates: Position(1, 1)),
padding: MbxEdgeInsets(top: 10, left: 20, bottom: 30, right: 40),
zoom: 15,
pitch: 60,
bearing: 12,
);
await mapboxMap.setCamera(cameraOptions);
await tester.pumpAndSettle();
final camera = await mapboxMap.getCameraState();
expect(camera.center.coordinates.lng,
closeTo(cameraOptions.center!.coordinates.lng, 0.0001));
expect(camera.center.coordinates.lat,
closeTo(cameraOptions.center!.coordinates.lat, 0.0001));
expect(
camera.padding.top, closeTo(cameraOptions.padding?.top ?? 0, 0.0001));
expect(camera.padding.left, closeTo(cameraOptions.padding!.left, 0.0001));
expect(camera.padding.bottom,
closeTo(cameraOptions.padding!.bottom, 0.0001));
expect(
camera.padding.right, closeTo(cameraOptions.padding!.right, 0.0001));
expect(camera.zoom, closeTo(cameraOptions.zoom!, 0.0001));
expect(camera.pitch, closeTo(cameraOptions.pitch!, 0.0001));
expect(camera.bearing, closeTo(cameraOptions.bearing!, 0.0001));
});
});
}