Skip to content

Instantly share code, notes, and snippets.

@scottsauber
Created October 16, 2017 15:56
Show Gist options
  • Save scottsauber/cc563cb9222db575f6505cf9762bc72d to your computer and use it in GitHub Desktop.
Save scottsauber/cc563cb9222db575f6505cf9762bc72d to your computer and use it in GitHub Desktop.
public class ApplicationUsersControllerGetApplicationUser
{
private readonly ApplicationDbContext _context;
private readonly HttpClient _client;
public ApplicationUsersControllerGetApplicationUser()
{
var builder = new WebHostBuilder()
.UseEnvironment("Testing")
.UseStartup<Startup>();
var server = new TestServer(builder);
_context = server.Host.Services.GetService(typeof(ApplicationDbContext)) as ApplicationDbContext;
_client = server.CreateClient();
}
[Fact]
public async Task DoesReturnOk_GivenUserExists()
{
// Arrange
var user = new ApplicationUser
{
Id = "123",
Email = "test@test.com"
};
_context.Users.Add(user);
_context.SaveChanges();
// Act
var response = await _client.GetAsync($"/api/ApplicationUsers/{user.Id}");
// Assert
Assert.Equal(HttpStatusCode.OK, response.StatusCode);
string jsonResult = await response.Content.ReadAsStringAsync();
ApplicationUser userFromJson = JsonConvert.DeserializeObject<ApplicationUser>(jsonResult);
Assert.Equal(user.Id, userFromJson.Id);
Assert.Equal(user.Email, userFromJson.Email);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment