Merged in develop (pull request #38)

Develop
This commit is contained in:
2021-09-26 16:18:18 +00:00
2 changed files with 34 additions and 12 deletions
@@ -56,12 +56,14 @@ namespace Meade.net.Telescope.UnitTests
private bool _isParked; private bool _isParked;
private ParkedPosition _parkedPosition; private ParkedPosition _parkedPosition;
private string _siderealTrackingRate;
[SetUp] [SetUp]
public void Setup() public void Setup()
{ {
_isParked = false; _isParked = false;
_parkedPosition = null; _parkedPosition = null;
_siderealTrackingRate = "+60.1";
_testProperties = new TestProperties(); _testProperties = new TestProperties();
@@ -142,11 +144,10 @@ namespace Meade.net.Telescope.UnitTests
_sharedResourcesWrapperMock.Setup(x => x.SendString("GL", false)).Returns(() => _testProperties.telescopeTime); _sharedResourcesWrapperMock.Setup(x => x.SendString("GL", false)).Returns(() => _testProperties.telescopeTime);
_sharedResourcesWrapperMock.Setup(x => x.SendString("GG", false)).Returns(() => _testProperties.telescopeUtcCorrection); _sharedResourcesWrapperMock.Setup(x => x.SendString("GG", false)).Returns(() => _testProperties.telescopeUtcCorrection);
const string siderealTrackingRate = "60.1"; _testProperties.TrackingRate = _siderealTrackingRate;
_testProperties.TrackingRate = siderealTrackingRate;
_sharedResourcesWrapperMock.Setup(x => x.SendString("GT", false)).Returns(() => _testProperties.TrackingRate); _sharedResourcesWrapperMock.Setup(x => x.SendString("GT", false)).Returns(() => _testProperties.TrackingRate);
_sharedResourcesWrapperMock.Setup(x => x.SendBlind("TL", false)).Callback(() => _testProperties.TrackingRate = "lunar"); _sharedResourcesWrapperMock.Setup(x => x.SendBlind("TL", false)).Callback(() => _testProperties.TrackingRate = "lunar");
_sharedResourcesWrapperMock.Setup(x => x.SendBlind("TQ", false)).Callback(() => _testProperties.TrackingRate = siderealTrackingRate); _sharedResourcesWrapperMock.Setup(x => x.SendBlind("TQ", false)).Callback(() => _testProperties.TrackingRate = _siderealTrackingRate);
_sharedResourcesWrapperMock.Setup(x => x.ProductName).Returns(() => productName); _sharedResourcesWrapperMock.Setup(x => x.ProductName).Returns(() => productName);
_sharedResourcesWrapperMock.Setup(x => x.FirmwareVersion).Returns(() => firmwareVersion); _sharedResourcesWrapperMock.Setup(x => x.FirmwareVersion).Returns(() => firmwareVersion);
@@ -246,6 +247,10 @@ namespace Meade.net.Telescope.UnitTests
[TestCase("down", "EK118")] [TestCase("down", "EK118")]
[TestCase("back", "EK87")] [TestCase("back", "EK87")]
[TestCase("forward", "EK69")] [TestCase("forward", "EK69")]
[TestCase("left", "EK87")]
[TestCase("right", "EK69")]
[TestCase("scrollup", "EK85")]
[TestCase("scrolldown", "EK68")]
[TestCase("?", "EK63")] [TestCase("?", "EK63")]
public void Action_Handbox_WhenCalling_ThenSendsAppropriateBlindCommands(string action, string expectedString) public void Action_Handbox_WhenCalling_ThenSendsAppropriateBlindCommands(string action, string expectedString)
{ {
@@ -2728,8 +2733,9 @@ namespace Meade.net.Telescope.UnitTests
Assert.That(exception.Message, Is.EqualTo("Exception of type 'System.ArgumentOutOfRangeException' was thrown.\r\nParameter name: value\r\nActual value was driveKing.")); Assert.That(exception.Message, Is.EqualTo("Exception of type 'System.ArgumentOutOfRangeException' was thrown.\r\nParameter name: value\r\nActual value was driveKing."));
} }
[Test] [TestCase("60.1")]
public void TrackingRage_Get_WhenReadongDefaultValue_ThenAssumesSidereal() [TestCase("+60.1")]
public void TrackingRage_Get_WhenReadingDefaultValue_ThenAssumesSidereal(string trackingRate)
{ {
ConnectTelescope(); ConnectTelescope();
@@ -2738,10 +2744,14 @@ namespace Meade.net.Telescope.UnitTests
Assert.That(result, Is.EqualTo(DriveRates.driveSidereal)); Assert.That(result, Is.EqualTo(DriveRates.driveSidereal));
} }
[TestCase(DriveRates.driveSidereal)] [TestCase(DriveRates.driveSidereal, "60.1")]
[TestCase(DriveRates.driveLunar)] [TestCase(DriveRates.driveLunar, "60.1")]
public void TrackingRate_Get_WhenConnected_ThenSendsCommandToTelescope(DriveRates rate) [TestCase(DriveRates.driveSidereal, "+60.1")]
[TestCase(DriveRates.driveLunar, "+60.1")]
public void TrackingRate_Get_WhenConnected_ThenSendsCommandToTelescope(DriveRates rate, string trackingRate)
{ {
_siderealTrackingRate = trackingRate;
string productName = TelescopeList.Autostar497; string productName = TelescopeList.Autostar497;
string firmwareVersion = TelescopeList.Autostar497_43Eg; string firmwareVersion = TelescopeList.Autostar497_43Eg;
@@ -2754,9 +2764,11 @@ namespace Meade.net.Telescope.UnitTests
Assert.That(result, Is.EqualTo(rate)); Assert.That(result, Is.EqualTo(rate));
} }
[TestCase(DriveRates.driveSidereal)] [TestCase(DriveRates.driveSidereal, "60.1")]
[TestCase(DriveRates.driveLunar)] [TestCase(DriveRates.driveLunar, "60.1")]
public void TrackingRate_Set_WhenConnectedToLX200_ThenThrowsException(DriveRates rate) [TestCase(DriveRates.driveSidereal, "+60.1")]
[TestCase(DriveRates.driveLunar, "+60.1")]
public void TrackingRate_Set_WhenConnectedToLX200_ThenThrowsException(DriveRates rate, string trackingRate)
{ {
string productName = TelescopeList.LX200CLASSIC; string productName = TelescopeList.LX200CLASSIC;
string firmwareVersion = string.Empty; string firmwareVersion = string.Empty;
+10
View File
@@ -249,11 +249,19 @@ namespace ASCOM.Meade.net
SharedResourcesWrapper.SendBlind("EK118"); SharedResourcesWrapper.SendBlind("EK118");
break; break;
case "back": case "back":
case "left":
SharedResourcesWrapper.SendBlind("EK87"); SharedResourcesWrapper.SendBlind("EK87");
break; break;
case "forward": case "forward":
case "right":
SharedResourcesWrapper.SendBlind("EK69"); SharedResourcesWrapper.SendBlind("EK69");
break; break;
case "scrollup":
SharedResourcesWrapper.SendBlind("EK85");
break;
case "scrolldown":
SharedResourcesWrapper.SendBlind("EK68");
break;
case "?": case "?":
SharedResourcesWrapper.SendBlind("EK63"); SharedResourcesWrapper.SendBlind("EK63");
break; break;
@@ -2637,6 +2645,8 @@ namespace ASCOM.Meade.net
//Current Track Frequency expressed in hertz assuming a synchonous motor design where a 60.0 Hz motor clock //Current Track Frequency expressed in hertz assuming a synchonous motor design where a 60.0 Hz motor clock
// would produce 1 revolution of the telescope in 24 hours. // would produce 1 revolution of the telescope in 24 hours.
rate = rate.Replace("+", string.Empty);
DriveRates result = rate == "60.1" ? DriveRates.driveSidereal : DriveRates.driveLunar; DriveRates result = rate == "60.1" ? DriveRates.driveSidereal : DriveRates.driveLunar;
LogMessage("TrackingRate Get", $"{rate} {result}"); LogMessage("TrackingRate Get", $"{rate} {result}");