Added test for StarParch firmware. PulseGuiding is always enabled.

This commit is contained in:
2022-06-28 18:47:33 +01:00
parent 0066a6ebed
commit 42f2f45866
2 changed files with 37 additions and 14 deletions
@@ -916,24 +916,31 @@ namespace Meade.net.Telescope.UnitTests
Assert.That(result, Is.True); Assert.That(result, Is.True);
} }
[Test] [TestCase("Autostar", "43Eg")]
public void CanPulseGuide_GetInPolarMode_ReturnsTrue() public void CanPulseGuide_GetInPolarMode_ReturnsTrue(string productName, string firmware)
{ {
_testProperties.AlignmentMode = "P"; _testProperties.AlignmentMode = "P";
ConnectTelescope();
ConnectTelescope(productName, firmware, $"{_testProperties.AlignmentMode}N0");
var result = _telescope.CanPulseGuide; var result = _telescope.CanPulseGuide;
Assert.That(result, Is.True); Assert.That(result, Is.True);
} }
[Test] [TestCase("Autostar", "30Ab", true)]
public void CanPulseGuide_GetInAltAzMode_ReturnsFalse() [TestCase("Autostar", "43Eg", false)]
[TestCase("Autostar", "A4S4", false)]
[TestCase("Autostar", "43EG", true)]
[TestCase("Autostar", "A4s4", true)]
public void CanPulseGuide_GetInAltAzMode_ReturnsExpectedResult(string productName, string firmware, bool canPulseGuide)
{ {
_testProperties.AlignmentMode = "A"; _testProperties.AlignmentMode = "A";
ConnectTelescope();
ConnectTelescope(productName, firmware, $"{_testProperties.AlignmentMode}N0");
var result = _telescope.CanPulseGuide; var result = _telescope.CanPulseGuide;
Assert.That(result, Is.False); Assert.That(result, Is.EqualTo(canPulseGuide));
} }
[Test] [Test]
+20 -4
View File
@@ -602,13 +602,29 @@ namespace ASCOM.Meade.net
private bool IsStarPatch() private bool IsStarPatch()
{ {
//Todo add tests to see if the firmware is star patch. var isStarPatch = false;
//Check if last character is a letter
// lower case = Meade, upper case = StarPatch var firmwareVersionArray = SharedResourcesWrapper.FirmwareVersion.ToCharArray();
if (firmwareVersionArray.Length > 1)
{
//If last character is a number //If last character is a number
var lastChr = firmwareVersionArray[firmwareVersionArray.Length - 1];
if (char.IsNumber(lastChr))
{
// Get case of second to last character // Get case of second to last character
var secondLastChar = firmwareVersionArray[firmwareVersionArray.Length - 2];
// lower case = StarPatch, upper case = Meade // lower case = StarPatch, upper case = Meade
return false; isStarPatch = char.IsLower(secondLastChar);
}
else
{
// lower case = Meade, upper case = StarPatch
isStarPatch = char.IsUpper(lastChr);
}
}
LogMessage("Is StarPatch Firmware", $": {isStarPatch}");
return isStarPatch;
} }
private void SendCurrentDateTime(string connect) private void SendCurrentDateTime(string connect)