Exemple #1
0
        public async Task Should_return_correctly_configured_sender()
        {
            var pool       = new MessageSenderPool(new ServiceBusConnectionStringBuilder(connectionString), null, null);
            var connection = new ServiceBusConnection(connectionString);

            try
            {
                // unfortunately it is not possible to assert the token provider
                var nonSendViaSender = pool.GetMessageSender("dest1", (null, null));
                var sendViaSender    = pool.GetMessageSender("dest2", (connection, "via"));

                Assert.AreEqual("dest1", nonSendViaSender.Path);
                Assert.IsNull(nonSendViaSender.TransferDestinationPath);
                Assert.IsNull(nonSendViaSender.ViaEntityPath);
                Assert.IsTrue(nonSendViaSender.OwnsConnection);

                Assert.AreEqual("via", sendViaSender.ViaEntityPath);
                Assert.AreEqual("via", sendViaSender.Path);
                Assert.AreEqual("dest2", sendViaSender.TransferDestinationPath);
                Assert.IsFalse(sendViaSender.OwnsConnection);
            }
            finally
            {
                await pool.Close();

                await connection.CloseAsync();
            }
        }
Exemple #2
0
        public async Task Should_get_cached_sender_per_destination_for_send_via()
        {
            var pool       = new MessageSenderPool(new ServiceBusConnectionStringBuilder(connectionString), null, null);
            var connection = new ServiceBusConnection(connectionString);

            try
            {
                var firstMessageSenderDest1 = pool.GetMessageSender("dest1", (connection, "via"));
                pool.ReturnMessageSender(firstMessageSenderDest1);

                var firstMessageSenderDest2 = pool.GetMessageSender("dest2", (connection, "via"));
                pool.ReturnMessageSender(firstMessageSenderDest2);

                var secondMessageSenderDest1 = pool.GetMessageSender("dest1", (connection, "via"));
                var secondMessageSenderDest2 = pool.GetMessageSender("dest2", (connection, "via"));

                Assert.AreSame(firstMessageSenderDest1, secondMessageSenderDest1);
                Assert.AreSame(firstMessageSenderDest2, secondMessageSenderDest2);
                Assert.AreNotSame(firstMessageSenderDest1, firstMessageSenderDest2);
                Assert.AreNotSame(secondMessageSenderDest1, secondMessageSenderDest2);
            }
            finally
            {
                await pool.Close();

                await connection.CloseAsync();
            }
        }
Exemple #3
0
        public async Task Should_get_cached_sender_per_destination()
        {
            var pool = new MessageSenderPool(new ServiceBusClient(connectionString));

            try
            {
                var firstMessageSenderDest1 = pool.GetMessageSender("dest1", null);
                pool.ReturnMessageSender(firstMessageSenderDest1, null);

                var firstMessageSenderDest2 = pool.GetMessageSender("dest2", null);
                pool.ReturnMessageSender(firstMessageSenderDest2, null);

                var secondMessageSenderDest1 = pool.GetMessageSender("dest1", null);
                var secondMessageSenderDest2 = pool.GetMessageSender("dest2", null);

                Assert.AreSame(firstMessageSenderDest1, secondMessageSenderDest1);
                Assert.AreSame(firstMessageSenderDest2, secondMessageSenderDest2);
                Assert.AreNotSame(firstMessageSenderDest1, firstMessageSenderDest2);
                Assert.AreNotSame(secondMessageSenderDest1, secondMessageSenderDest2);
            }
            finally
            {
                await pool.Close();
            }
        }
        public void Should_get_cached_sender()
        {
            var pool = new MessageSenderPool(new ServiceBusConnectionStringBuilder("Endpoint=sb://fake.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=fake="), null);

            var firstMessageSender = pool.GetMessageSender("dest", (null, null));

            pool.ReturnMessageSender(firstMessageSender);

            var secondMessageSender = pool.GetMessageSender("dest", (null, null));

            Assert.AreEqual(firstMessageSender, secondMessageSender);
        }