public void BarometerData_Comparison(
            double pressure1,
            double pressure2,
            bool equals)
        {
            var data1 = new BarometerData(pressure1);
            var data2 = new BarometerData(pressure2);

            if (equals)
            {
                Assert.True(data1.Equals(data2));
                Assert.True(data1 == data2);
                Assert.False(data1 != data2);
                Assert.Equal(data1, data2);
                Assert.Equal(data1.GetHashCode(), data2.GetHashCode());
            }
            else
            {
                Assert.False(data1.Equals(data2));
                Assert.False(data1 == data2);
                Assert.True(data1 != data2);
                Assert.NotEqual(data1, data2);
                Assert.NotEqual(data1.GetHashCode(), data2.GetHashCode());
            }
        }
Beispiel #2
0
        public void BarometerData_Comparison_NotEqual()
        {
            var device1 = new BarometerData(0);
            var device2 = new BarometerData(1);

            Assert.False(device1.Equals(device2));
            Assert.False(device1 == device2);
            Assert.True(device1 != device2);
            Assert.NotEqual(device1, device2);
            Assert.NotEqual(device1.GetHashCode(), device2.GetHashCode());
        }
Beispiel #3
0
        void PlatformStart(SensorSpeed sensorSpeed)
        {
            altitudeManager = new CMAltimeter();
            altitudeManager.StartRelativeAltitudeUpdates(NSOperationQueue.CurrentQueue ?? new NSOperationQueue(), LocationManagerUpdatedHeading);

            void LocationManagerUpdatedHeading(CMAltitudeData e, NSError error)
            {
                var reading = new BarometerData(UnitConverters.KilopascalsToHectopascals(e.Pressure.DoubleValue));

                RaiseReadingChanged(reading);
            }
        }
Beispiel #4
0
        void RaiseReadingChanged(BarometerData reading)
        {
            var args = new BarometerChangedEventArgs(reading);

            if (UseSyncContext)
            {
                MainThread.BeginInvokeOnMainThread(() => ReadingChanged?.Invoke(this, args));
            }
            else
            {
                ReadingChanged?.Invoke(this, args);
            }
        }
Beispiel #5
0
 public BarometerChangedEventArgs(BarometerData reading) =>
Beispiel #6
0
 private void Barometer_ReadingChanged(object sender, BarometerChangedEventArgs e)
 {
     Data  = e.Reading;
     Text  = Data.PressureInHectopascals.ToString(CultureInfo.CurrentCulture);
     Value = Data.PressureInHectopascals;
 }
 internal static void OnChanged(BarometerData reading) =>
 OnChanged(new BarometerChangedEventArgs(reading));
 internal BarometerChangedEventArgs(BarometerData reading) =>
Beispiel #9
0
 private void Barometer_ReadingChanged(object sender, BarometerChangedEventArgs e)
 {
     this.BarometerData = e.Reading;
 }