-
-
Notifications
You must be signed in to change notification settings - Fork 85
Expand file tree
/
Copy pathgeocoding_test.dart
More file actions
66 lines (59 loc) · 1.63 KB
/
geocoding_test.dart
File metadata and controls
66 lines (59 loc) · 1.63 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
import 'package:flutter_test/flutter_test.dart';
import 'package:geocoding/geocoding.dart';
import 'package:mockito/mockito.dart';
import 'package:plugin_platform_interface/plugin_platform_interface.dart';
final mockLocation = Location(
title: '',
description: '',
latitude: 52.2165157,
longitude: 6.9437819,
timestamp: DateTime.fromMillisecondsSinceEpoch(0).toUtc(),
);
const mockPlacemark = Placemark(
administrativeArea: 'Overijssel',
country: 'Netherlands',
isoCountryCode: 'NL',
locality: 'Enschede',
name: 'Gronausestraat',
postalCode: '',
street: 'Gronausestraat 710',
subAdministrativeArea: 'Enschede',
subLocality: 'Enschmarke',
subThoroughfare: '',
thoroughfare: 'Gronausestraat');
void main() {
group('Geocoding', () {
setUp(() {
GeocodingPlatform.instance = MockGeocodingPlatform();
});
test('locationFromAddress', () async {
final locations = await (locationFromAddress(''));
expect(locations.single, mockLocation);
});
test('placemarkFromCoordinates', () async {
final placemarks = await (placemarkFromCoordinates(0, 0));
expect(placemarks.single, mockPlacemark);
});
});
}
class MockGeocodingPlatform extends Mock
with
// ignore: prefer_mixin
MockPlatformInterfaceMixin
implements
GeocodingPlatform {
@override
Future<List<Location>> locationFromAddress(
String address, {
Region? targetRegion,
}) async {
return [mockLocation];
}
@override
Future<List<Placemark>> placemarkFromCoordinates(
double latitude,
double longitude,
) async {
return [mockPlacemark];
}
}