public void WhenPortIsFree_HasNoException() { // arrange MockDependents mockDependents = new MockDependents(); ISocketListenerRepository testunit = MakeUnitToBeTested(true, mockDependents); // act Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); Action bindSocketToPort = () => testunit.BindSocketToPort(listener, Configuration.MainframeConfirmationListeningPort); // assert bindSocketToPort.Should().NotThrow(); }
public ConfirmationLogicImpl(IEventLogRepository eventLogRepository, ISocketListenerRepository socketListenerRepository, IGenericQueueRepository internalMessagingLogic, IOrderConversionLogic conversionLogic, IUnitOfWork unitOfWork, IGenericSubscriptionQueueRepository subscriptionQueue) { _log = eventLogRepository; _socket = socketListenerRepository; this.genericeQueueRepository = internalMessagingLogic; this.genericSubscriptionQueue = subscriptionQueue; _conversionLogic = conversionLogic; _unitOfWork = unitOfWork; _socket.FileReceived += SocketFileReceived; _socket.ClosedPort += SocketPortClosed; _socket.OpeningPort += SocketOpeningPort; _socket.WaitingConnection += SocketWaitingConnection; _socket.BeginningFileReceipt += SocketBeginningFileReceipt; _socket.ErrorEncountered += SocketExceptionEncountered; subscriptionQueue.MessageReceived += SubscriptionQueue_MessageReceived; }
public OrderHistoryLogicImpl(IOrderHistoryHeaderRepsitory headerRepo, IPurchaseOrderRepository poRepo, IKPayInvoiceRepository kpayInvoiceRepository, ICatalogLogic catalogLogic, IOrderHistoryDetailRepository detailRepo, IUnitOfWork unitOfWork, IEventLogRepository log, IGenericQueueRepository queue, IOrderConversionLogic conversionLogic, ICustomerRepository customerRepository, ISocketListenerRepository socket, IGenericSubscriptionQueueRepository genericSubscriptionQueue) { _log = log; _queue = queue; _genericSubscriptionQueue = genericSubscriptionQueue; _socket = socket; _headerRepo = headerRepo; _detailRepo = detailRepo; _poRepo = poRepo; _kpayInvoiceRepository = kpayInvoiceRepository; _catalogLogic = catalogLogic; _unitOfWork = unitOfWork; _conversionLogic = conversionLogic; _keepListening = true; _customerRepository = customerRepository; _socket.FileReceived += SocketFileReceived; _socket.ClosedPort += SocketPortClosed; _socket.OpeningPort += SocketOpeningPort; _socket.WaitingConnection += SocketWaitingConnection; _socket.BeginningFileReceipt += SocketBeginningFileReceipt; _socket.ErrorEncountered += SocketExceptionEncountered; // subscribe to event to receive message through subscription _genericSubscriptionQueue.MessageReceived += GenericSubscriptionQueue_MessageReceived; }
public void WhenPortIsInUse_HasNoException() { // arrange MockDependents mockDependents = new MockDependents(); ISocketListenerRepository testunit = MakeUnitToBeTested(true, mockDependents); var slowClosinglistener = StartListener(Configuration.MainframeConfirmationListeningPort); // starts the port in use condition if (slowClosinglistener.IsBound == false) { throw new Exception("Test logic failure: failed to start contending listener."); } Task.Run(() => StopListenerAfterDelay(slowClosinglistener, 30000)); // keep the port in use condition // act Socket listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); Action bindSocketToPort = () => testunit.BindSocketToPort(listener, Configuration.MainframeConfirmationListeningPort); // assert bindSocketToPort.Should().NotThrow(); }