public async Task Subscription_Toggles_Updating() { var lm = TestableLocationManager.Create(); var sut = new iOSRxPosition(() => lm); await GetLocationAsync(lm, sut); await GetLocationAsync(lm, sut); }
public async Task Can_Get_Single_Location() { var lm = TestableLocationManager.Create(); var sut = new iOSRxPosition(() => lm); var location = await sut.Position.FirstAsync(); Console.WriteLine(location.Coordinate); Assert.False(lm.IsUpdating); }
public void Updates_Location_On_Subscription() { var lm = TestableLocationManager.Create(); var sut = new iOSRxPosition(() => lm); Assert.False(lm.IsUpdating); var subscription = sut.Position.Subscribe(x => { }); Assert.True(lm.IsUpdating); subscription.Dispose(); Assert.False(lm.IsUpdating); }