public void RetrievingCurrentUser(int userId, UserModel user) { "Given an existing user". f(() => ManagementServiceMock.Setup(m => m.GetCurrentUserAsync()).ReturnsAsync(new UserModel {Id = userId})); "When it is retrieved". f(() => { Request.RequestUri = new Uri(string.Format("{0}/me", UsersUrl)); Response = Client.SendAsync(Request).Result; user = Response.Content.ReadAsAsync<UserModel>().Result; }); "Then a '200 OK' status is returned". f(() => Response.StatusCode.ShouldBe(HttpStatusCode.OK)); "And the user should be retrieved". f(() => ManagementServiceMock.Verify(m => m.GetCurrentUserAsync(), Times.Once())); "And the user is returned". f(() => user.ShouldNotBe(null)); "And the user should have an id". f(() => user.Id.ShouldBe(userId)); }