public static SlotCabinetRegistration BuildFor(SlotCabinet slotCabinet, bool addRegisterEvent = true, Action <SlotCabinetRegistration> customize = null) { var slotCabinetRegistration = new SlotCabinetRegistration { MacAddress = Utils.SampleMacAddress(), SasVersion = "SasVersion", SlotCabinetId = slotCabinet.SlotCabinetId, RegistrationDateTime = SliceFixture.GetSystemDateTime(), }; customize?.Invoke(slotCabinetRegistration); slotCabinet.SlotCabinetRegistrations.Add(slotCabinetRegistration); if (addRegisterEvent) { //auto add a register cabinet event on new cabinet registration addition var slotCabinetEvent = SlotCabinetEventBuilderNew.BuildFor(slotCabinetRegistration, sce => { sce.EventTypeId = (int)SlotEventType.RegisterCabinet; }); slotCabinetRegistration.SlotCabinetEvents.Add(slotCabinetEvent); } return(slotCabinetRegistration); }
public static SlotCabinetPeriodicHealth BuildFor(SlotCabinetRegistration registration, Action <SlotCabinetPeriodicHealth> customize = null) { var periodicHealth = new SlotCabinetPeriodicHealth { SlotCabinetRegistrationId = registration.SlotCabinetRegistrationId, RecordDateTime = SliceFixture.GetSystemDateTime(), }; customize?.Invoke(periodicHealth); return(periodicHealth); }
public static SlotCabinetEvent BuildFor(SlotCabinetRegistration registration, Action <SlotCabinetEvent> customize = null) { var eventSequenceId = Guid.NewGuid(); var slotCabinetEvent = new SlotCabinetEvent { EventSequenceId = eventSequenceId, SlotCabinetRegistrationId = registration.SlotCabinetRegistrationId, ProcessSequenceId = Guid.NewGuid(), EventDateTime = SliceFixture.GetSystemDateTime(), EventTypeId = (int)SlotEventType.Unknown }; customize?.Invoke(slotCabinetEvent); registration.SlotCabinetEvents.Add(slotCabinetEvent); return(slotCabinetEvent); }
public static TicketPrintedAuditHistory BuildFor(SlotCabinetEventTicketPrinted ticket, Action <TicketPrintedAuditHistory> customize = null) { var nextNumber = Utils.GetNextNaturalNumber(); var ticketPrintedAuditHistory = new TicketPrintedAuditHistory { EventSequenceId = ticket.EventSequenceId, TicketStatusId = TicketPrintedStatusEnum.Valid, AuditActionId = TicketPrintedAuditActionEnum.None, UserId = Guid.NewGuid().ToString(), //TODO: Get UnitTest UserId? Comment = $"Comment{nextNumber}", AuditDateTime = SliceFixture.GetSystemDateTime() }; customize?.Invoke(ticketPrintedAuditHistory); ticket.TicketsPrintedAuditHistory.Add(ticketPrintedAuditHistory); return(ticketPrintedAuditHistory); }
public static SlotCabinetEventTicketPrinted BuildFor(SlotCabinetEvent slotCabinetEvent, int ticketNumber, Action <SlotCabinetEventTicketPrinted> customizeTicket = null) { var slotCabinetEventTicketPrinted = new SlotCabinetEventTicketPrinted { Amount = (uint)Utils.GetRandomTicketAmount(), SystemId = (byte)ticketNumber, ValidationNumber = "100", TicketNumber = (ushort)ticketNumber, TicketType = (byte)ticketNumber, PoolId = (ushort)ticketNumber, PrintedDateTime = SliceFixture.GetSystemDateTime(), ExpirationDateTime = SliceFixture.GetSystemDateTime().AddDays(2), EventSequenceId = slotCabinetEvent.EventSequenceId, }; customizeTicket?.Invoke(slotCabinetEventTicketPrinted); //update ticket hash slotCabinetEventTicketPrinted.TicketHash = null;//slotCabinetEventTicketPrinted.GenerateTicketHashCode(slotCabinetEvent.SlotCabinetRegistrationId); return(slotCabinetEventTicketPrinted); }