コード例 #1
0
        public void LogTwoMessagesToQueueAndBeAbleToReadBothOfThem()
        {
            string path = @"FormatName:DIRECT=OS:" + CommonUtil.MessageQueuePath;

            MsmqSinkData sinkParams = new MsmqSinkData();
            sinkParams.QueuePath = path;

            MsmqSink sink = new MsmqSink();
            sink.Initialize(new TestLogSinkConfigurationView(sinkParams));

            CommonUtil.SendTestMessage(sink);

            using (MessageQueue mq = new MessageQueue(path))
            {
                Message msg = mq.Receive(new TimeSpan(0, 0, 1));
                mq.Close();
                msg.Formatter = new XmlMessageFormatter(new string[] {"System.String,mscorlib"});
                Assert.AreEqual(CommonUtil.FormattedMessage, msg.Body.ToString());
            }

            CommonUtil.SendTestMessage(sink);
            using (MessageQueue mq = new MessageQueue(path))
            {
                Message msg = mq.Receive(new TimeSpan(0, 0, 1));
                mq.Close();
                msg.Formatter = new XmlMessageFormatter(new string[] {"System.String,mscorlib"});
                Assert.AreEqual(CommonUtil.FormattedMessage, msg.Body.ToString());
            }
        }
コード例 #2
0
        public void MsmqSink()
        {
            string sinkName = "MsmqSink";
            MsmqSinkData sink = new MsmqSinkData();
            sink.Name = sinkName;

            SinkFromFactory(sink);
        }
コード例 #3
0
ファイル: MsmqSinkFixture.cs プロジェクト: bnantz/NCS-V1-1
        public void InvalidQueuePath()
        {
            string path = @"INVALID PATH";

            MsmqSinkData sinkParams = new MsmqSinkData("MsmqSink");
            sinkParams.QueuePath = path;
            MsmqSink sink = CreateSink(sinkParams);
            sink.SendMessage(new LogEntry());
        }
コード例 #4
0
ファイル: MsmqSinkFixture.cs プロジェクト: bnantz/NCS-V1-1
        public void LogMessageToMSMQ()
        {
            string path = @"FormatName:DIRECT=OS:" + CommonUtil.MessageQueuePath;

            MsmqSinkData sinkParams = new MsmqSinkData("MsmqSink");
            sinkParams.QueuePath = path;
            sinkParams.MessagePriority = MessagePriority.Low;
            MsmqSink sink = CreateSink(sinkParams);

            CommonUtil.SendTestMessage(sink);

            MessageQueue mq = new MessageQueue(path);
            mq.MessageReadPropertyFilter.Priority = true;
            Message msg = mq.Receive(new TimeSpan(0, 0, 1));
            msg.Formatter = new XmlMessageFormatter(new string[] {"System.String,mscorlib"});

            mq.Close();
            mq = null;
            Assert.AreEqual(MessagePriority.Low, msg.Priority);
            Assert.AreEqual(CommonUtil.FormattedMessage, msg.Body.ToString());
        }
        public void MsmqSinkDataTest()
        {
            string name = "testName";
            string queuePath = "testPath";
            string type = typeof(MsmqSink).AssemblyQualifiedName;

            MsmqSinkData data = new MsmqSinkData();
            data.Name = name;
            data.QueuePath = queuePath;
            data.TypeName = type;

            MsmqSinkNode node = new MsmqSinkNode(data);
            GeneratedApplicationNode.Nodes.Add(node);
            MsmqSinkData nodeData = (MsmqSinkData) node.SinkData;

            Assert.AreEqual(name, nodeData.Name);
            Assert.AreEqual(queuePath, nodeData.QueuePath);
            Assert.AreEqual(type, nodeData.TypeName);
        }
コード例 #6
0
ファイル: MsmqSinkFixture.cs プロジェクト: bnantz/NCS-V1-1
        public void QueueDoesNotExist()
        {
            // delete the queue
            CommonUtil.DeletePrivateTestQ();

            MsmqSinkData sinkParams = new MsmqSinkData("MsmqSink");
            sinkParams.QueuePath = CommonUtil.MessageQueuePath;
            MsmqSink sink = CreateSink(sinkParams);

            try
            {
                CommonUtil.SendTestMessage(sink);
            }
            finally
            {
                CommonUtil.CreatePrivateTestQ();
            }
        }
コード例 #7
0
ファイル: MsmqSinkFixture.cs プロジェクト: bnantz/NCS-V1-1
 private MsmqSink CreateSink(MsmqSinkData msmqSinkData)
 {
     MsmqSink msmqSink = new MsmqSink();
     msmqSink.Initialize(new TestLogSinkConfigurationView(msmqSinkData));
     return msmqSink;
 }
コード例 #8
0
ファイル: MsmqSinkNode.cs プロジェクト: bnantz/NCS-V1-1
 /// <summary>
 /// Creates node with specified configuration data.
 /// </summary>
 /// <param name="msmqSinkData">Configuration data.</param>
 public MsmqSinkNode(MsmqSinkData msmqSinkData)
     : base(msmqSinkData)
 {
     this.msmqSinkData = msmqSinkData;
 }