<!DOCTYPE html> <meta charset="utf-8"> <title>Geolocation API IDL tests</title> <link rel="author" title="Intel" href="http://www.intel.com"> <link rel="help" href="http://www.w3.org/TR/geolocation-API/"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <script src="/resources/WebIDLParser.js"></script> <script src="/resources/idlharness.js"></script> <h1>Geolocation API IDL tests</h1> <div id="log"></div> <script type=text/plain class=untested> interface Navigator { }; typedef unsigned long long DOMTimeStamp; </script> <script type=text/plain> partial interface Navigator { readonly attribute Geolocation geolocation; }; [NoInterfaceObject] interface Geolocation { void getCurrentPosition(PositionCallback successCallback, optional PositionErrorCallback errorCallback, optional PositionOptions options); long watchPosition(PositionCallback successCallback, optional PositionErrorCallback errorCallback, optional PositionOptions options); void clearWatch(long watchId); }; callback PositionCallback = void (Position position); callback PositionErrorCallback = void (PositionError positionError); dictionary PositionOptions { boolean enableHighAccuracy = false; [Clamp] unsigned long timeout = 0xFFFFFFFF; [Clamp] unsigned long maximumAge = 0; }; [NoInterfaceObject] interface Position { readonly attribute Coordinates coords; readonly attribute DOMTimeStamp timestamp; }; [NoInterfaceObject] interface Coordinates { readonly attribute double latitude; readonly attribute double longitude; readonly attribute double? altitude; readonly attribute double accuracy; readonly attribute double? altitudeAccuracy; readonly attribute double? heading; readonly attribute double? speed; }; [NoInterfaceObject] interface PositionError { const unsigned short PERMISSION_DENIED = 1; const unsigned short POSITION_UNAVAILABLE = 2; const unsigned short TIMEOUT = 3; readonly attribute unsigned short code; readonly attribute DOMString message; }; </script> <script> "use strict"; var idlArray; setup(function() { idlArray = new IdlArray(); [].forEach.call(document.querySelectorAll("script[type=text\\/plain]"), function(node) { if (node.className == "untested") { idlArray.add_untested_idls(node.textContent); } else { idlArray.add_idls(node.textContent); } }); idlArray.add_objects({ Navigator: ["navigator"], Geolocation: ["navigator.geolocation"] }); }); idlArray.test(); </script>