Fixed problem where the tracking rate was using the local culture to convert a string to a double.

This commit is contained in:
2024-11-06 16:47:28 +00:00
parent 4c7a40a8e4
commit 80899b8056
2 changed files with 33 additions and 1 deletions
@@ -2701,6 +2701,38 @@ namespace Meade.net.Telescope.UnitTests
[TestCase(DriveRates.driveLunar, "58.9", "Autostar", "A4S4")] [TestCase(DriveRates.driveLunar, "58.9", "Autostar", "A4S4")]
public void TrackingRate_Get_WhenConnected_ThenSendsCommandToTelescope(DriveRates rate, string trackingRate, string productName, string firmware) public void TrackingRate_Get_WhenConnected_ThenSendsCommandToTelescope(DriveRates rate, string trackingRate, string productName, string firmware)
{ {
CultureInfo.CurrentCulture = new CultureInfo("en-GB");
_siderealTrackingRate = trackingRate;
ConnectTelescope(productName, firmware);
_telescope.TrackingRate = rate;
var result = _telescope.TrackingRate;
Assert.That(result, Is.EqualTo(rate));
}
[TestCase(DriveRates.driveSidereal, "60.1", "Autostar", "43Eg")]
[TestCase(DriveRates.driveSidereal, "60.0", "Autostar", "43Eg")]
[TestCase(DriveRates.driveLunar, "57.9", "Autostar", "43Eg")]
[TestCase(DriveRates.driveSidereal, "+60.1", "Autostar", "43Eg")]
[TestCase(DriveRates.driveSidereal, "+60.0", "Autostar", "43Eg")]
[TestCase(DriveRates.driveLunar, "+57.9", "Autostar", "43Eg")]
[TestCase(DriveRates.driveLunar, "57.3", "Autostar", "43Eg")]
[TestCase(DriveRates.driveLunar, "58.9", "Autostar", "43Eg")]
[TestCase(DriveRates.driveSidereal, "60.1", "Autostar", "A4S4")]
[TestCase(DriveRates.driveSidereal, "60.0", "Autostar", "A4S4")]
[TestCase(DriveRates.driveLunar, "57.9", "Autostar", "A4S4")]
[TestCase(DriveRates.driveSidereal, "+60.1", "Autostar", "A4S4")]
[TestCase(DriveRates.driveSidereal, "+60.0", "Autostar", "A4S4")]
[TestCase(DriveRates.driveLunar, "+57.9", "Autostar", "A4S4")]
[TestCase(DriveRates.driveLunar, "57.3", "Autostar", "A4S4")]
[TestCase(DriveRates.driveLunar, "58.9", "Autostar", "A4S4")]
public void TrackingRate_Get_WhenConnectedAndCurrentCultureIsSpanish_ThenSendsCommandToTelescope(DriveRates rate, string trackingRate, string productName, string firmware)
{
CultureInfo.CurrentCulture = new CultureInfo("es-ES");
_siderealTrackingRate = trackingRate; _siderealTrackingRate = trackingRate;
ConnectTelescope(productName, firmware); ConnectTelescope(productName, firmware);
+1 -1
View File
@@ -3668,7 +3668,7 @@ namespace ASCOM.Meade.net
rate = rate.Replace("+", string.Empty); rate = rate.Replace("+", string.Empty);
var rateDouble = double.Parse(rate); var rateDouble = double.Parse(rate, CultureInfo.InvariantCulture);
DriveRates result; DriveRates result;