public async Task GetAllEmployeesAsync() { var options = GetContextOptions("test_database_get_all"); var id = 1; var employee = GetEmployee(id); using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); var result = await repository.AddEmployeeAsync(employee); } using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); var results = await repository.GetAllEmployeesAsync(); results.Should().NotBeNull(); results.Count().Should().Be(1); results.First().Id.Should().Be(id); } }
public async Task AddEmployeeAsyncShouldSucceed() { var options = GetContextOptions("test_database_add"); using (var context = new CodingChallengeContext(options)) { var id = 1; var repository = new CodingChallengeRepository(context); var employee = GetEmployee(id); var result = await repository.AddEmployeeAsync(employee); result.Should().NotBeNull(); result.Id.Should().Be(id); result.Dependents.Count.Should().Be(1); result.Dependents.First().EmployeeId.Should().Be(id); } using (var context = new CodingChallengeContext(options)) { context.Employees.Count().Should().Be(1); } }
public async Task DeleteEmployeeAsyncShouldSucceed() { var options = GetContextOptions("test_database_delete_one"); var id = 1; var employee = GetEmployee(id); using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); var result = await repository.AddEmployeeAsync(employee); } using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); await repository.DeleteEmployee(id); } using (var context = new CodingChallengeContext(options)) { context.Employees.Count().Should().Be(0); } }
public async Task GetEmployeeAsyncShouldSucceed() { var options = GetContextOptions("test_database_get_one"); var id = 1; var employee = GetEmployee(id); using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); var result = await repository.AddEmployeeAsync(employee); } using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); var result = await repository.GetEmployeeAsync(id); result.Should().NotBeNull(); result.Id.Should().Be(id); } }
public async Task UpdateEmployeeAsyncShouldSucceed() { var options = GetContextOptions("test_database_update"); var id = 1; var employee = GetEmployee(id); using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); var result = await repository.AddEmployeeAsync(employee); result.FirstName.Should().Be("Test"); result.LastName.Should().Be("User"); } using (var context = new CodingChallengeContext(options)) { var repository = new CodingChallengeRepository(context); employee.FirstName = "Updated"; employee.LastName = "Updated"; await repository.UpdateEmployeeAsync(employee); } using (var context = new CodingChallengeContext(options)) { context.Employees.First().FirstName.Should().Be("Updated"); context.Employees.First().LastName.Should().Be("Updated"); } }