public void PaymentValueModelToDtoToModelTest() { //given var model = new PaymentValue { GrossValue = 12 }; //when var result = Mapper.Map <PaymentValue>(Mapper.Map <CashManager.Data.DTO.PaymentValue>(model)); //then Assert.Equal(model.Id, result.Id); Assert.Equal(model.GrossValue, result.GrossValue); }
public void SimpleReferenceReadingTest() { //given var repo = LiteDbHelper.CreateMemoryDb(); var stock1 = new Stock(); var stock2 = new Stock(); var parentCategory = new Category { Name = "parent" }; var category = new Category { Parent = parentCategory, Name = "child" }; var paymentValue = new PaymentValue { GrossValue = 123.45m }; var tags = new List <Tag> { new Tag { Name = "a" }, new Tag { Name = "b" } }; var positions = new List <Position> { new Position { Category = category, Value = paymentValue, Title = "test", Tags = tags } }; var transaction = new Transaction { UserStock = stock1, ExternalStock = stock2, Positions = positions, BookDate = DateTime.Today, TransactionSourceCreationDate = DateTime.Today }; //when repo.Database.Upsert(transaction); repo.Database.UpsertBulk(new [] { category, parentCategory }); repo.Database.UpsertBulk(new [] { stock1, stock2 }); repo.Database.UpsertBulk(tags.ToArray()); repo.Database.UpsertBulk(positions.ToArray()); //then var actual = repo.Database.GetCollection <Transaction>() .Include(x => x.ExternalStock) .Include(x => x.UserStock) .Include(x => x.Type) .Include(x => x.Positions) .Include($"$.{POSITIONS_NAME}[*].{TAGS_NAME}[*]") .Include($"$.{POSITIONS_NAME}[*].{CATEGORY_NAME}") .Include($"$.{POSITIONS_NAME}[*].{CATEGORY_NAME}.{PARENT_NAME}") .FindAll() .First(); Assert.StrictEqual(transaction, actual); Assert.Equal(transaction.ExternalStock, actual.ExternalStock); Assert.Equal(transaction.ExternalStock.Name, actual.ExternalStock.Name); Assert.Equal(transaction.ExternalStock.IsUserStock, actual.ExternalStock.IsUserStock); Assert.Equal(transaction.UserStock, actual.UserStock); Assert.Equal(transaction.UserStock.Name, actual.UserStock.Name); Assert.Equal(transaction.UserStock.IsUserStock, actual.UserStock.IsUserStock); Assert.Equal(transaction.Positions.First().Category, actual.Positions.First().Category); Assert.Equal(transaction.Positions.First().Category.Name, actual.Positions.First().Category.Name); Assert.Equal(transaction.Positions.First().Category.Parent, actual.Positions.First().Category.Parent); Assert.Equal(transaction.Positions.First().Tags, actual.Positions.First().Tags); Assert.Equal(transaction.Positions.First(), actual.Positions.First()); Assert.Equal(transaction.Positions.First().Value, actual.Positions.First().Value); Assert.Equal(transaction.Positions.First().Value.GrossValue, actual.Positions.First().Value.GrossValue); Assert.Equal(transaction.Positions.First().Category.Parent, actual.Positions.First().Category.Parent); Assert.Equal(transaction.Positions.First().Category.Parent.Name, actual.Positions.First().Category.Parent.Name); Assert.Equal(transaction.Positions.First().Category.Parent.Parent, actual.Positions.First().Category.Parent.Parent); }