1 description("Tests Geolocation success callback using the mock service."); 2 3 var mockLatitude = 51.478; 4 var mockLongitude = -0.166; 5 var mockAccuracy = 100; 6 7 if (window.layoutTestController) { 8 layoutTestController.setGeolocationPermission(true); 9 layoutTestController.setMockGeolocationPosition(mockLatitude, 10 mockLongitude, 11 mockAccuracy); 12 } else 13 debug('This test can not be run without the LayoutTestController'); 14 15 var position; 16 navigator.geolocation.getCurrentPosition(function(p) { 17 position = p; 18 shouldBe('position.coords.latitude', 'mockLatitude'); 19 shouldBe('position.coords.longitude', 'mockLongitude'); 20 shouldBe('position.coords.accuracy', 'mockAccuracy'); 21 finishJSTest(); 22 }, function(e) { 23 testFailed('Error callback invoked unexpectedly'); 24 finishJSTest(); 25 }); 26 27 window.jsTestIsAsync = true; 28 window.successfullyParsed = true; 29