예제 #1
0
        internal static RemoteOperatorTestWrapperRealSockets ArrangeLocalOperatorTestWrapperRealSockets(
            string address = "127.0.0.1:22222")
        {
            var recorder = new ApplicationCacheRecorder();
            var sockets  = new List <SocketTesterWrapper>();
            var remoteTraceMonitorСonsistent = new RemoteTraceMonitorСonsistentTester(recorder);
            var socketFactoryCounter         = 0;

            Func <AddressFamily, SocketType, ProtocolType, ISocket> socketFactory = (family, type, arg3) =>
            {
                socketFactoryCounter++;
                var socket = new SocketTesterWrapper(family, type, arg3, $"{socketFactoryCounter}");
                socket.Accepted += OnAccepted;
                sockets.Add(socket);
                return(socket);
            };

            void OnAccepted(SocketTesterWrapper wrapper)
            {
                sockets.Add(wrapper);
            }

            var apiOperator = CreateLocalOperator(socketFactory, recorder, remoteTraceMonitorСonsistent, address);

            return(new RemoteOperatorTestWrapperRealSockets(sockets, apiOperator, recorder, remoteTraceMonitorСonsistent));
        }
예제 #2
0
 public RemoteOperatorTestWrapperRealSockets(IReadOnlyList <SocketTesterWrapper> sockets, IApiOperator @operator, ApplicationCacheRecorder recorder, RemoteTraceMonitorСonsistentTester remoteTraceMonitorСonsistentTester)
 {
     Sockets  = sockets;
     Operator = @operator;
     Recorder = recorder;
     _remoteTraceMonitorСonsistentTester = remoteTraceMonitorСonsistentTester;
 }