public void IncludesEntitiesUsingExpression() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(42); var existingCustomer = repository.GetAll().Include(x => x.DbContextOrders).FirstOrDefault(); Assert.IsNotNull(existingCustomer); } } }
public void ReturnsEntityIfKeyIsValid() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(42); var existingCustomer = repository.GetByKey(42); Assert.IsNotNull(existingCustomer); } } }
public void ReturnsEntityWhenTableContainsEntity() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(1); var customer = repository.Single(x => x.Id == 1); Assert.IsNotNull(customer); Assert.AreEqual(1, customer.Id); } } }
public void ReturnsCorrectEntityCount() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(100); EFTestHelper.CreateCustomerIfNotAlreadyExists(101); EFTestHelper.CreateCustomerIfNotAlreadyExists(102); var customerCount = repository.Count(x => x.Id >= 100 && x.Id <= 102); Assert.AreEqual(3, customerCount); } } }
public void ReturnsCorrectEntities() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(100); EFTestHelper.CreateCustomerIfNotAlreadyExists(101); EFTestHelper.CreateCustomerIfNotAlreadyExists(102); var customers = repository.GetAll().ToList(); Assert.IsTrue(customers.Count >= 3); } } }
public void SucceedsWhenEntitiesMatchFilter() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(201); EFTestHelper.CreateCustomerIfNotAlreadyExists(202); EFTestHelper.CreateCustomerIfNotAlreadyExists(203); repository.Delete(x => x.Id >= 201 && x.Id <= 203); dbContext.SaveChanges(); Assert.IsNull(repository.GetByKey(201)); Assert.IsNull(repository.GetByKey(202)); Assert.IsNull(repository.GetByKey(203)); } } }
public void UpdatesEntity() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(301); var customer1 = repository.GetByKey(301); customer1.Name = "John Doe"; repository.Update(customer1); dbContext.SaveChanges(); var customer2 = repository.GetByKey(301); Assert.IsNotNull(customer2); Assert.AreEqual("John Doe", customer2.Name); } } }
public void DeletesSpecificEntity() { using (var dbContext = new TestDbContextContainer()) { using (var repository = new DbContextCustomerRepository(dbContext)) { EFTestHelper.CreateCustomerIfNotAlreadyExists(201); var customer1 = repository.GetByKey(201); Assert.IsNotNull(customer1); repository.Delete(customer1); dbContext.SaveChanges(); var customer2 = repository.GetByKey(201); Assert.IsNull(customer2); } } }