Course Property

Applies to TestComplete 14.90, last modified on June 15, 2021
The information below concerns legacy mobile tests that work with mobile devices connected to the local computer. For new mobile tests, we recommend using the newer cloud-compatible approach.

Description

Returns the current heading in degrees. 0 degrees is North, 90 degrees is East, 180 degrees is South and 270 degrees is West.

Declaration

iOSGPSDataObj.Course

Read-Only Property Double
iOSGPSDataObj An expression, variable or parameter that specifies a reference to an iOSGPSData object

Applies To

The property is applied to the following object:

Property Value

The current course in degrees.

Example

The code below retrieves location data from the iOS device's GPS sensor, posts them to the test log and shows the location in Google Maps:

JavaScript, JScript

function PostGPSLocation()
{
  Mobile.SetCurrent("iPad");
  // Check whether GPS is enabled
  if (Mobile.Device().GPS.GPSEnabled)
  {
    // Obtain location data
    var Longt = Mobile.Device().GPS.Location.Longitude;
    var Lat = Mobile.Device().GPS.Location.Latitude;
    // Output the location data
    Log.Message("The device location is:");
    Log.Message("Longitude: "+ aqConvert.VarToStr(Longt));
    Log.Message("Latitude: "+ aqConvert.VarToStr(Lat));
    Log.Message("Altitude: "+ aqConvert.VarToStr(Mobile.Device().GPS.Location.Altitude));
    Log.Message("VerticalAccuracy: "+ aqConvert.VarToStr(Mobile.Device().GPS.Location.VerticalAccuracy));
    Log.Message("HorizontalAccuracy: "+ aqConvert.VarToStr(Mobile.Device().GPS.Location.orizontalAccuracy));
    Log.Message("Course: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.Course));
    Log.Message("Speed: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.Speed));
    // Open Google Maps in the browser and pass the coordinates as URL parameters
    Browsers.Item(Browsers.btIExplorer).Run("http://maps.google.com/maps?q=loc:" + aqConvert.VarToStr(Lat) + "," + aqConvert.VarToStr(Longt));
  }
}

Python

def PostGPSLocation():
  Mobile.SetCurrent("iPad")
  # Check whether GPS is enabled
  if Mobile.Device().GPS.GPSEnabled:
    # Obtain location data
    Longt = Mobile.Device().GPS.Location.Longitude
    Lat = Mobile.Device().GPS.Location.Latitude
    # Output the location data
    Log.Message("The device location is:")
    Log.Message("Longitude: " + aqConvert.VarToStr(Longt))
    Log.Message("Latitude: " + aqConvert.VarToStr(Lat))
    Log.Message("Altitude: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.Altitude))
    Log.Message("VerticalAccuracy: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.VerticalAccuracy))
    Log.Message("HorizontalAccuracy: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.HorizontalAccuracy))
    Log.Message("Course: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.Course))
    Log.Message("Speed: " + aqConvert.VarToStr(Mobile.Device().GPS.Location.Speed))
    # Open Google Maps in the browser and pass the coordinates as URL parameters
    Browsers.Item[Browsers.btIExplorer].Run("http://maps.google.com/maps?q=loc:" + aqConvert.VarToStr(Lat) + "," + aqConvert.VarToStr(Longt))

VBScript

Sub PostGPSLocation
  Call Mobile.SetCurrent("iPad")
  ' Check whether GPS is enabled
  If Mobile.Device.GPS.GPSEnabled Then
    ' Obtain location data
    Longt = Mobile.Device.GPS.Location.longitude
    Lat = Mobile.Device.GPS.Location.latitude
    ' Output the location data
    Call Log.Message("The device location is:")
    Call Log.Message("Longitude: "& aqConvert.VarToStr(Longt))
    Call Log.Message("Latitude: "& aqConvert.VarToStr(Lat))
    Call Log.Message("Altitude: "& aqConvert.VarToStr(Mobile.Device.GPS.Location.Altitude))
    Call Log.Message("VerticalAccuracy: "& aqConvert.VarToStr(Mobile.Device.GPS.Location.VerticalAccuracy))
    Call Log.Message("HorizontalAccuracy: "& aqConvert.VarToStr(Mobile.Device.GPS.Location.HorizontalAccuracy))
    Call Log.Message("Course: "& aqConvert.VarToStr(Mobile.Device.GPS.Location.Course))
    Call Log.Message("Speed: "& aqConvert.VarToStr(Mobile.Device.GPS.Location.Speed))
    ' Open Google Maps in the browser and pass the coordinates as URL parameters
    Call Browsers.Item(Browsers.btIExplorer).Run("http://maps.google.com/maps?q=loc:" & aqConvert.VarToStr(Lat) & "," & aqConvert.VarToStr(Longt))
  End If
End Sub

DelphiScript

procedure PostGPSLocation;
var Longt, Lat;
begin
  Mobile.SetCurrent('iPad');
  // Check whether GPS is enabled
  if Mobile.Device.GPS.GPSEnabled then
  begin
    // Obtain location data
    Longt := Mobile.Device.GPS.Location.Longitude;
    Lat := Mobile.Device.GPS.Location.Latitude;
    // Output the location data
    Log.Message('The device location is:');
    Log.Message('Longitude: ' + aqConvert.VarToStr(Longt));
    Log.Message('Latitude: ' + aqConvert.VarToStr(Lat));
    Log.Message('Altitude: ' + aqConvert.VarToStr(Mobile.Device.GPS.Location.Altitude));
    Log.Message('VerticalAccuracy: ' + aqConvert.VarToStr(Mobile.Device.GPS.Location.VerticalAccuracy));
    Log.Message('HorizontalAccuracy: ' + aqConvert.VarToStr(Mobile.Device.GPS.Location.HorizontalAccuracy));
    Log.Message('Course: ' + aqConvert.VarToStr(Mobile.Device.GPS.Location.Course));
    Log.Message('Speed: ' + aqConvert.VarToStr(Mobile.Device.GPS.Location.Speed));
    // Open Google Maps in the browser and pass the coordinates as URL parameters
    Browsers.Item(Browsers.btIExplorer).Run('http://maps.google.com/maps?q=loc:' + aqConvert.VarToStr(Lat) + ',' + aqConvert.VarToStr(Longt));
  end;
end;

C++Script, C#Script

function PostGPSLocation()
{
  Mobile["SetCurrent"]("iPad");
  // Check whether GPS is enabled
  if (Mobile["Device"]["GPS"]["GPSEnabled"])
  {
    // Obtain location data
    var Longt = Mobile["Device"]["GPS"]["Location"]["Longitude"];
    var Lat = Mobile["Device"]["GPS"]["Location"]["Latitude"];
    // Output the location data
    Log["Message"]("The device location is:");
    Log["Message"]("Longitude: " + aqConvert["VarToStr"](Longt));
    Log["Message"]("Latitude: " + aqConvert["VarToStr"](Lat));
    Log["Message"]("Altitude: " + aqConvert["VarToStr"](Mobile["Device"]["GPS"]["Location"]["Altitude"]));
    Log["Message"]("VerticalAccuracy: " + aqConvert["VarToStr"](Mobile["Device"]["GPS"]["Location"]["VerticalAccuracy"]));
    Log["Message"]("HorizontalAccuracy: " + aqConvert["VarToStr"](Mobile["Device"]["GPS"]["Location"]["HorizontalAccuracy"]));
    Log["Message"]("Course: " + aqConvert["VarToStr"](Mobile["Device"]["GPS"]["Location"]["Course"]));
    Log["Message"]("Speed: " + aqConvert["VarToStr"](Mobile["Device"]["GPS"]["Location"]["Speed"]));
    // Open Google Maps in the browser and pass the coordinates as URL parameters
    Browsers["Item"](Browsers["btIExplorer"])["Run"]("http://maps.google.com/maps?q=loc:" + aqConvert["VarToStr"](Lat) + "," + aqConvert["VarToStr"](Longt));
  }
}

See Also

Geolocation Testing (Legacy)
iOSGPSData Object

Highlight search results