void Simple() { #region simple using (var context = InMemoryContextBuilder.Build <MyDataContext>()) { var entity = new MyEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); } #endregion }
public void UpdateSameEntity() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); entity.Property = "Something new"; context.SaveChanges(); } }
void WithConstructor() { var builder = new DbContextOptionsBuilder <MyDataContext>(); using (var context = InMemoryContextBuilder.Build(builder, options => new MyDataContext(options))) { var entity = new MyEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); } }
public void RespectsUniqueIndexOrder() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity1 = new TestEntityUnique { A = "a", B = "b" }; var entity2 = new TestEntityUnique { A = "b", B = "a" }; context.AddRange(entity1, entity2); context.SaveChanges(); } }
public void GetInMemoryContext() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); var item = context.TestEntities.ToList(); Assert.Single(item); } }
public static MyDataContext BuildDataContext() { var company1 = new Company { Id = 1, Content = "Company1" }; var employee1 = new Employee { Id = 2, CompanyId = company1.Id, Content = "Employee1", Age = 25 }; var employee2 = new Employee { Id = 3, CompanyId = company1.Id, Content = "Employee2", Age = 31 }; var company2 = new Company { Id = 4, Content = "Company2" }; var employee4 = new Employee { Id = 5, CompanyId = company2.Id, Content = "Employee4", Age = 34 }; var company3 = new Company { Id = 6, Content = "Company3" }; var company4 = new Company { Id = 7, Content = "Company4" }; var myDataContext = InMemoryContextBuilder.Build <MyDataContext>(); myDataContext.AddRange(company1, employee1, employee2, company2, company3, company4, employee4); myDataContext.SaveChanges(); return(myDataContext); }
void WithBuilder() { #region withBuilder var builder = new DbContextOptionsBuilder <MyDataContext>(); using (var context = InMemoryContextBuilder.Build <MyDataContext>(builder)) { var entity = new MyEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); } #endregion }
public void SetRowVersionToNullThrows() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); entity.Timestamp = null; var exception = Assert.Throws <Exception>(() => context.SaveChanges()); Approvals.Verify(exception.Message); } }
public void UpdateSameEntity() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop", ConcurrencyToken = "28f4fc79da8f43b887d2eef4e82a2be5" }; context.Add(entity); context.SaveChanges(); entity.Property = "Something new"; context.SaveChanges(); } }
void WithDatabaseName() { #region withDatabaseName var builder = new DbContextOptionsBuilder <MyDataContext>(); using (var context = InMemoryContextBuilder.Build(builder, options => new MyDataContext(options))) { var entity = new MyEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); } #endregion }
public void UpdateSucceeds() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); var firstTimestamp = entity.Timestamp; entity.Property = "Something new"; context.SaveChanges(); Assert.NotEqual(firstTimestamp, entity.Timestamp); } }
public void UpdateSucceeds() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop", ConcurrencyToken = "d6f321a1320846a49b81595c4d41d25d" }; context.Add(entity); context.SaveChanges(); var firstToken = entity.ConcurrencyToken.ToString(); entity.Property = "Something new"; context.SaveChanges(); Assert.Equal(firstToken, entity.ConcurrencyToken); } }
public RaceServiceTests() { _context = InMemoryContextBuilder.GetContext(); _mockSeriesService = new Mock <ISeriesService>(); _mockBackgroundTaskQueue = new Mock <IBackgroundTaskQueue>(); _mockLogger = new Mock <ILogger <IRaceService> >(); _mockServiceScopeFactory = new Mock <IServiceScopeFactory>(); _mapper = MapperBuilder.GetSailScoresMapper(); _service = new RaceService( _context, _mockSeriesService.Object, _mockBackgroundTaskQueue.Object, _mockLogger.Object, _mockServiceScopeFactory.Object, _mapper); _clubId = _context.Clubs.First().Id; }
public void UniqueIndexThrows() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity1 = new TestEntity { Property = "prop" }; context.Add(entity1); var user2 = new TestEntity { Property = "prop" }; context.Add(user2); var exception = Assert.Throws <Exception>(() => context.SaveChanges()); Approvals.Verify(exception.Message); } }
public void UpdateMultipleSameEntity() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity1 = new TestEntity { Property = "prop" }; var entity2 = new TestEntity { Property = "prop" }; context.AddRange(entity1, entity2); context.SaveChanges(); entity1.Property = "Something new"; entity2.Property = "Something new"; context.SaveChanges(); } }
public void NullConflictThrows() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); var update = new TestEntity { Id = entity.Id, Property = "Something new" }; context.Entry(update).Property("Property").IsModified = true; var exception = Assert.Throws <DbUpdateConcurrencyException>(() => context.SaveChanges()); Approvals.Verify(exception.Message); } }
public void UpdateMultipleSameEntity() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity1 = new TestEntity { Property = "prop", ConcurrencyToken = "3c615ac3734046bc8bf6fd58d979c1ae" }; var entity2 = new TestEntity { Property = "prop", ConcurrencyToken = "cc4c1ce921e6457b89d00c7c2c6de2a9" }; context.AddRange(entity1, entity2); context.SaveChanges(); entity1.Property = "Something new"; entity2.Property = "Something new"; context.SaveChanges(); } }
public void NullConflictThrows() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop", ConcurrencyToken = "573dfb98237e4f51bafaab0317777960" }; context.Add(entity); context.SaveChanges(); var update = new TestEntity { Id = entity.Id, Property = "Something new", ConcurrencyToken = "4b39590ea0894ab9a05912456bf700b6" }; context.Entry(update).Property("Property").IsModified = true; var exception = Assert.Throws <DbUpdateConcurrencyException>(() => context.SaveChanges()); Approvals.Verify(exception.Message); } }
public void SetConcurrencyTokenToNullThrows() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop", ConcurrencyToken = "616e2ca1a52a4c57afbfe80ecc54125c" }; context.Add(entity); context.SaveChanges(); var update = new TestEntity { Id = entity.Id, Property = "Something new", ConcurrencyToken = null }; context.Entry(update).Property("Property").IsModified = true; var exception = Assert.Throws <DbUpdateConcurrencyException>(() => context.SaveChanges()); Approvals.Verify(exception.Message); } }
public void ValueConflictThrows() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop", ConcurrencyToken = "19ec62bea4f94ef1a8e4723707d3cc85" }; context.Add(entity); context.SaveChanges(); var update = new TestEntity { Id = entity.Id, Property = "Something new", ConcurrencyToken = "dbd48fc43d9244f7a08cd54bae94b15a" }; context.Entry(update).Property("Property").IsModified = true; var exception = Assert.Throws <DbUpdateConcurrencyException>(() => context.SaveChanges()); Approvals.Verify(exception.Message); } }
public void UpdateSucceeds() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop" }; context.Add(entity); context.SaveChanges(); var firstTimestamp = entity.Timestamp; var update = new TestEntity { Id = entity.Id, Property = "Something new", Timestamp = firstTimestamp }; context.Entry(update).Property("Property").IsModified = true; context.SaveChanges(); Assert.NotEqual(firstTimestamp.GetGuid(), update.Timestamp.GetGuid()); } }
public void UpdateSucceeds() { using (var context = InMemoryContextBuilder.Build <TestDataContext>()) { var entity = new TestEntity { Property = "prop", ConcurrencyToken = "d6f321a1320846a49b81595c4d41d25d" }; context.Add(entity); context.SaveChanges(); var firstToken = entity.ConcurrencyToken; var update = new TestEntity { Id = entity.Id, Property = "Something new", ConcurrencyToken = firstToken }; context.Entry(update).Property("Property").IsModified = true; context.SaveChanges(); Assert.Equal(firstToken, update.ConcurrencyToken); } }
public void ReusabilitySucceeds() { const string dbName = "MyDatabase"; const string value = "prop"; using (var context = InMemoryContextBuilder.Build <TestDataContext>(dbName)) { var entity = new TestEntity { Property = value }; context.Add(entity); context.SaveChanges(); } TestEntity res; using (var context = InMemoryContextBuilder.Build <TestDataContext>(dbName)) { res = context.TestEntities.First(e => e.Property == value); } Assert.NotNull(res); }
protected BaseRepositoryFixture() { Context = InMemoryContextBuilder.CreateContext(); InitDatabase(); }