Implemented TrackingRate via GT

This commit is contained in:
Sebastian Godelet
2021-06-28 14:16:00 +10:00
parent 77c87a51fa
commit 8478af26bf
2 changed files with 15 additions and 16 deletions
@@ -53,6 +53,7 @@ namespace Meade.net.Telescope.UnitTests
private bool _isParked;
private ParkedPosition _parkedPosition;
private string _trackingRate;
[SetUp]
public void Setup()
@@ -134,6 +135,12 @@ namespace Meade.net.Telescope.UnitTests
_sharedResourcesWrapperMock.Setup(x => x.SendString("GL", false)).Returns(() => _testProperties.telescopeTime);
_sharedResourcesWrapperMock.Setup(x => x.SendString("GG", false)).Returns(() => _testProperties.telescopeUtcCorrection);
const string siderealTrackingRate = "+60.1";
_trackingRate = siderealTrackingRate;
_sharedResourcesWrapperMock.Setup(x => x.SendString("GT", false)).Returns(() => _trackingRate);
_sharedResourcesWrapperMock.Setup(x => x.SendBlind("TL", false)).Callback(() => _trackingRate = "lunar");
_sharedResourcesWrapperMock.Setup(x => x.SendBlind("TQ", false)).Callback(() => _trackingRate = siderealTrackingRate);
_sharedResourcesWrapperMock.Setup(x => x.ProductName).Returns(() => productName);
_sharedResourcesWrapperMock.Setup(x => x.FirmwareVersion).Returns(() => firmwareVersion);
@@ -2672,7 +2679,10 @@ namespace Meade.net.Telescope.UnitTests
_telescope.TrackingRate = rate;
Assert.That(_telescope.TrackingRate, Is.EqualTo(rate));
_sharedResourcesWrapperMock.Verify(x => x.SendBlind(commandString, false), Times.Once);
_sharedResourcesWrapperMock.Verify(x => x.SendString("GT", false), Times.Once);
}
[Test]
+5 -16
View File
@@ -2606,26 +2606,17 @@ namespace ASCOM.Meade.net
}
}
private DriveRates _trackingRate = DriveRates.driveSidereal;
public DriveRates TrackingRate
{
get
{
//todo implement this with the GW command
//var result = SerialPort.CommandTerminated(":GT#", "#");
var rate = CommandString("GT", false);
//double rate = double.Parse(result);
if (rate == "+60.1")
return DriveRates.driveSidereal;
//if (rate == 60.1)
// return DriveRates.driveLunar;
//else if (rate == 60.1)
// return DriveRates.driveSidereal;
//return DriveRates.driveKing;
LogMessage("TrackingRate Get", $"{_trackingRate}");
return _trackingRate;
// we only support two rates ATM so return lunar tracking rate
return DriveRates.driveLunar;
}
set
{
@@ -2657,8 +2648,6 @@ namespace ASCOM.Meade.net
default:
throw new ArgumentOutOfRangeException(nameof(value), value, null);
}
_trackingRate = value;
}
}