public async Task GetDevicesAsync_Success() { string content = SampleDataHelper.GetContent("GetDevices-Single.json"); Func <HttpResponseMessage> responseMessage = new Func <HttpResponseMessage>(() => { return(new HttpResponseMessage(HttpStatusCode.OK) { Content = new StringContent(content) }); }); Action <HttpRequestMessage, CancellationToken> verification = new Action <HttpRequestMessage, CancellationToken>((message, token) => { Assert.AreEqual(HttpMethod.Get, message.Method); Assert.AreEqual("https://api.fitbit.com/1/user/-/devices.json", message.RequestUri.AbsoluteUri); }); FitbitClient fitbitClient = Helper.CreateFitbitClient(responseMessage, verification); List <Device> response = await fitbitClient.GetDevicesAsync(); Assert.AreEqual(1, response.Count); Device device = response.First(); ValidateSingleDevice(device); }
public void GetDevicesAsync_Failure_Errors() { Func <HttpResponseMessage> responseMessage = Helper.CreateErrorResponse(); Action <HttpRequestMessage, CancellationToken> verification = new Action <HttpRequestMessage, CancellationToken>((message, token) => { Assert.AreEqual(HttpMethod.Get, message.Method); }); FitbitClient fitbitClient = Helper.CreateFitbitClient(responseMessage, verification); Func <Task <List <Device> > > result = () => fitbitClient.GetDevicesAsync(); result.ShouldThrow <FitbitException>(); }