Example #1
0
 static ProcessDataEvent MatchProcessDataEvent(ProcessDataEvent expected)
 {
     return(Arg.Is <ProcessDataEvent>(actual =>
                                      expected.key == actual.key &&
                                      expected.dataType == actual.dataType &&
                                      expected.data == actual.data
                                      ));
 }
Example #2
0
        void HandleProcessData(ProcessDataEvent processData)
        {
            Action <ProcessDataEvent> callback;

            if (subscribers.TryGetValue(processData.key, out callback))
            {
                callback(processData);
            }
        }
Example #3
0
            public void PublishesEventToTransport()
            {
                var processKey = Guid.NewGuid();

                ProcessTracker.HandleProcessData(processKey, Messages.ProcessDataType.STDOUT, "This is STDOUT");

                var expectedProcessDataEvent = new ProcessDataEvent(processKey, ProcessDataType.STDOUT, "This is STDOUT");

                Transport.Received(1).PublishEventAsync <ProcessDataEvent>("processData", MatchProcessDataEvent(expectedProcessDataEvent));
            }
            public void IgnoresProcessDataForUnknownProcesses()
            {
                ProcessDataEvent actualProcessData = null;

                ProcessDataCallback = (data) => actualProcessData = data;

                ProcessDataEventGenerator(new ProcessDataEvent(Guid.NewGuid(), ProcessDataType.STDOUT, "This is STDOUT"));

                Assert.Null(actualProcessData);
            }
            public void DeliversProcessDataForAKnownProcess()
            {
                ProcessDataEvent actualProcessData = null;

                ProcessDataCallback = (data) => actualProcessData = data;

                ProcessDataEventGenerator(new ProcessDataEvent(KnownProcessKey, ProcessDataType.STDOUT, "This is STDOUT"));

                Assert.Equal(KnownProcessKey, actualProcessData.key);
                Assert.Equal(ProcessDataType.STDOUT, actualProcessData.dataType);
                Assert.Equal("This is STDOUT", actualProcessData.data);
            }
Example #6
0
        public void HandleProcessData(Guid key, ProcessDataType dataType, string data)
        {
            var dataEvent = new ProcessDataEvent(key, dataType, data);

            transport.PublishEventAsync("processData", dataEvent).GetAwaiter().GetResult();
        }