Fixed problem where the tracking rate was using the local culture to convert a string to a double.
This commit is contained in:
@@ -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);
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user