public Domain.CoffeeRoastingEvent Map(CoffeeRoastingEvent dbEvent) { return(new( Id <Domain.CoffeeRoastingEvent> .From(dbEvent.Id), dbEvent.Contacts.Select(c => c.Id).Select(id => Id <Contact> .From(id)), dbEvent.IsActive, LocalDate.FromDateTime(dbEvent.Date), LocalDate.FromDateTime(dbEvent.OrderByDate), Name <Domain.CoffeeRoastingEvent> .Create(dbEvent.Name), dbEvent.CoffeeRoastingEventCoffees.ToDictionary( ec => OrderReferenceLabel.Create(ec.Label), ec => new Coffee( Id <Coffee> .From(ec.Coffee.Id), Name <Coffee> .Create(ec.Coffee.Name), Description.Create(ec.Coffee.Description), UsdPrice.Create(ec.Coffee.Price), Ounces.Create(ec.Coffee.OzWeight))), dbEvent.Orders.Select(order => new Domain.Order( Id <Domain.Order> .From(order.Id), Id <Contact> .From(order.ContactId), OffsetDateTime.FromDateTimeOffset(order.CreatedTimestamp), order.OrderCoffees.ToDictionary( oc => Id <Coffee> .From(oc.CoffeeId), oc => OrderQuantity.Create(oc.Quantity)), new Domain.Invoice( Id <Domain.Invoice> .From(order.Invoice.Id), UsdInvoiceAmount.Create(order.Invoice.Amount), order.Invoice.IsPaid, order.Invoice.PaymentMethod), order.IsConfirmed)))); }
public void Customize(IFixture fixture) { var faker = new Faker(); fixture.Register(() => UsdInvoiceAmount.Create(faker.Random.Number(1, 1000))); }