public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Permission[] grantResults) { if (requestCode == REQUEST_LOCATION) { if ((grantResults.Length == 1) && (grantResults[0] == Permission.Granted)) { viewModel.StartWeatherLoading(); } } else { base.OnRequestPermissionsResult(requestCode, permissions, grantResults); } }
public async Task TestError() { var weatherProvider = new Mock <IWeatherViewModelProvider>(); weatherProvider.Setup(x => x.GetWeather()) .Throws(new Exception()); var viewModel = new WeatherViewModel(weatherProvider.Object, new WeatherIconConverter()); WeatherData result = null; viewModel.DataChanged += (data) => { result = data; }; await viewModel.StartWeatherLoading(); Assert.AreEqual("Error", result.Name); }
public async Task TestValidWeather() { var weatherProvider = new Mock <IWeatherViewModelProvider>(); weatherProvider.Setup(x => x.GetWeather()) .ReturnsAsync(new Weather.Weather("name", null, null)); var viewModel = new WeatherViewModel(weatherProvider.Object, new WeatherIconConverter()); WeatherData result = null; viewModel.DataChanged += (data) => { result = data; }; await viewModel.StartWeatherLoading(); Assert.AreEqual("name", result.Name); }