static void Main(string[] args) { ILogger logger = new Logger(@"log.txt"); logger.Log($"{DateTime.UtcNow} : This was logged just now!!!"); var dbSaver = new DbSaver(logger, new TaskBettingDbContext()); dbSaver.InsertOrUpdate(new MyObjectWrapper { ObjectWrapperId = 2, Name = @"Second", ObjectAsByte = ObjectToSmthgConverter.ObjectToByteArray(new SerializableObject { Description = @"13231123321", Id = 35, Name = @"132312213312", Price = 14, Value = 22, }), Items = new HashSet <MyCollectionItem> { new MyCollectionItem(), new MyCollectionItem() } }); }
private MyObjectWrapper GetDummyData() { var wrapperParent = new MyObjectWrapper { ObjectWrapperId = 1, Name = @"Second", ObjectAsByte = ObjectToSmthgConverter.ObjectToByteArray(new SerializableObject { Description = @"132asde-+/*31123321", Id = 35, Name = @"132312#$%@%213312", Price = 14, Value = 22, }) }; var collectionItemChildA = new MyCollectionItem { MyCollectionItemId = 1, MyObjectWrapperId = 1, MyObjectWrapper = wrapperParent }; var collectionItemChildB = new MyCollectionItem { MyCollectionItemId = 2, MyObjectWrapperId = 1, MyObjectWrapper = wrapperParent }; wrapperParent.Items.Add(collectionItemChildA); wrapperParent.Items.Add(collectionItemChildB); return(wrapperParent); }
public void InsertOrUpdate_Updates_AllPropsChanged_NewItems_ExistingObjectWrapper_Via_Context() { var wrapperToUpdate = this.GetDummyData(); wrapperToUpdate.Items.First().MyCollectionItemId = default(int); wrapperToUpdate.Items.Last().MyCollectionItemId = default(int); var beforeUpdateWrapper = this.GetDummyData(); beforeUpdateWrapper.Name = "Third"; beforeUpdateWrapper.ObjectAsByte = ObjectToSmthgConverter.ObjectToByteArray(new SerializableObject { Description = @"1hehf(%&#U)JJF", Id = 123123, Name = @"132312#$%@%213312", Price = 23333, Value = 17777, }); var mockWrapperSet = this.GetMockSet <MyObjectWrapper>(new List <MyObjectWrapper> { beforeUpdateWrapper }); var mockContext = this.BuildMockContext(mockWrapperSet); var dbSaverService = new DbSaver(this.mockedLogger.Object, mockContext.Object); var updatedWrapper = dbSaverService.InsertOrUpdate(wrapperToUpdate); Assert.IsNotNull(mockWrapperSet); Assert.IsTrue(updatedWrapper.Name == wrapperToUpdate.Name); Assert.IsTrue(updatedWrapper.ObjectAsByte == wrapperToUpdate.ObjectAsByte); Assert.IsTrue(updatedWrapper.Items.Count() == 4); mockWrapperSet.Verify(set => set.Add(It.IsAny <MyObjectWrapper>()), Times.Never); mockWrapperSet.Verify(set => set.Include(It.IsAny <string>()), Times.Once); mockContext.Verify(context => context.SaveChanges(), Times.Once); }