diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample10_ClaimCheck.md b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample10_ClaimCheck.md index 13b0426762e7..633b1a91bad1 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample10_ClaimCheck.md +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample10_ClaimCheck.md @@ -30,7 +30,7 @@ var message = new ServiceBusMessage Finally, we send our message to our Service Bus queue. ```C# Snippet:ClaimCheckSendMessage -ServiceBusClient client = new("", credential); +await using ServiceBusClient client = new("", credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); await sender.SendMessageAsync(message); ``` diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample13_AdvancedConfiguration.md b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample13_AdvancedConfiguration.md index c65bb2b6092a..e408e1cbd7ae 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample13_AdvancedConfiguration.md +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample13_AdvancedConfiguration.md @@ -11,7 +11,7 @@ In the example shown below, the transport is configured to use web sockets and a ```C# Snippet:ServiceBusConfigureTransport string fullyQualifiedNamespace = ""; DefaultAzureCredential credential = new(); -ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions +await using ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions { TransportType = ServiceBusTransportType.AmqpWebSockets, WebProxy = new WebProxy("https://myproxyserver:80") @@ -62,7 +62,7 @@ static bool ValidateServerCertificate( return false; } -ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions +await using ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions { CertificateValidationCallback = ValidateServerCertificate }); @@ -75,7 +75,7 @@ The retry options are used to configure the retry policy for all operations when ```C# Snippet:ServiceBusConfigureRetryOptions string fullyQualifiedNamespace = ""; DefaultAzureCredential credential = new(); -ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions +await using ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions { RetryOptions = new ServiceBusRetryOptions { @@ -93,7 +93,7 @@ The [prefetch feature](https://learn.microsoft.com/azure/service-bus-messaging/s ```C# Snippet:ServiceBusConfigurePrefetchReceiver string fullyQualifiedNamespace = ""; DefaultAzureCredential credential = new(); -ServiceBusClient client = new(fullyQualifiedNamespace, credential); +await using ServiceBusClient client = new(fullyQualifiedNamespace, credential); ServiceBusReceiver receiver = client.CreateReceiver("", new ServiceBusReceiverOptions { PrefetchCount = 10 @@ -105,7 +105,7 @@ And when using the processor: ```C# Snippet:ServiceBusConfigurePrefetchProcessor string fullyQualifiedNamespace = ""; DefaultAzureCredential credential = new(); -ServiceBusClient client = new(fullyQualifiedNamespace, credential); +await using ServiceBusClient client = new(fullyQualifiedNamespace, credential); ServiceBusProcessor processor = client.CreateProcessor("", new ServiceBusProcessorOptions { PrefetchCount = 10 @@ -128,7 +128,7 @@ When using the `ServiceBusProcessor`: ```C# Snippet:ServiceBusProcessorLockLostHandler string fullyQualifiedNamespace = ""; DefaultAzureCredential credential = new(); -ServiceBusClient client = new(fullyQualifiedNamespace, credential); +await using ServiceBusClient client = new(fullyQualifiedNamespace, credential); // create a processor that we can use to process the messages await using ServiceBusProcessor processor = client.CreateProcessor(""); @@ -189,7 +189,7 @@ Here is what the code would look like when using the `ServiceBusSessionProcessor ```C# Snippet:ServiceBusSessionProcessorLockLostHandler string fullyQualifiedNamespace = ""; DefaultAzureCredential credential = new(); -var client = new ServiceBusClient(fullyQualifiedNamespace, credential); +await using var client = new ServiceBusClient(fullyQualifiedNamespace, credential); // create a processor that we can use to process the messages await using ServiceBusSessionProcessor processor = client.CreateSessionProcessor(""); diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample14_AMQPMessage.md b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample14_AMQPMessage.md index ebcaefa3a2df..f03d54c671fd 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample14_AMQPMessage.md +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample14_AMQPMessage.md @@ -30,7 +30,7 @@ else if (amqpMessage.Body.TryGetData(out IEnumerable> data) If you needed to send a value body, you could do the following: ```C# Snippet:ServiceBusSendValueBody -var client = new ServiceBusClient(fullyQualifiedNamespace, credential); +await using var client = new ServiceBusClient(fullyQualifiedNamespace, credential); ServiceBusSender sender = client.CreateSender(queueName); var message = new ServiceBusMessage(); @@ -43,7 +43,7 @@ await sender.SendMessageAsync(message); You can also set various properties on the AMQP message that are not exposed on the `ServiceBusMessage` type. These values are not granted special meaning by the Service Bus broker and therefore do not impact the Service Bus service behavior. However, since these are standard AMQP properties, they could impact the behavior of other message brokers that may receive these messages. ```C# Snippet:ServiceBusSetMiscellaneousProperties -var client = new ServiceBusClient(fullyQualifiedNamespace, credential); +await using var client = new ServiceBusClient(fullyQualifiedNamespace, credential); ServiceBusSender sender = client.CreateSender(queueName); var message = new ServiceBusMessage("message with AMQP properties set"); diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample16_CrossReceiverMessageSettlement.md b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample16_CrossReceiverMessageSettlement.md index 8018f13c5559..f96f440e74ed 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample16_CrossReceiverMessageSettlement.md +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/samples/Sample16_CrossReceiverMessageSettlement.md @@ -14,7 +14,7 @@ actually part of the AMQP message so it needs to stored separately from the AMQP ```C# Snippet:ServiceBusWriteReceivedMessage var credential = new DefaultAzureCredential(); -ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); +await using ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); ServiceBusSender sender = client1.CreateSender(queueName); ServiceBusMessage message = new("some message"); @@ -32,7 +32,7 @@ In order to rehydrate the message in another process, we would do the following: AmqpAnnotatedMessage amqpMessage = AmqpAnnotatedMessage.FromBytes(new BinaryData(amqpMessageBytes)); ServiceBusReceivedMessage rehydratedMessage = ServiceBusReceivedMessage.FromAmqpMessage(amqpMessage, new BinaryData(lockTokenBytes)); -var client2 = new ServiceBusClient(fullyQualifiedNamespace, credential); +await using var client2 = new ServiceBusClient(fullyQualifiedNamespace, credential); ServiceBusReceiver receiver2 = client2.CreateReceiver(queueName); await receiver2.CompleteMessageAsync(rehydratedMessage); ``` @@ -44,7 +44,7 @@ lock token. In the example below, we store off the lock token using its GUID byt string if that is easier for your scenario. ```C# Snippet:ServiceBusWriteReceivedMessageLockToken -ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); +await using ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); ServiceBusSender sender = client1.CreateSender(queueName); ServiceBusMessage message = new("some message"); @@ -62,7 +62,7 @@ In order to rehydrate the message in another process using the lock token, we wo ```C# Snippet:ServiceBusReadReceivedMessageLockToken ServiceBusReceivedMessage rehydratedMessage = ServiceBusModelFactory.ServiceBusReceivedMessage(lockTokenGuid: new Guid(lockTokenBytes.ToArray())); -ServiceBusClient client2 = new(fullyQualifiedNamespace, credential); +await using ServiceBusClient client2 = new(fullyQualifiedNamespace, credential); ServiceBusReceiver receiver2 = client2.CreateReceiver(queueName); await receiver2.CompleteMessageAsync(rehydratedMessage); ``` diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Client/ServiceBusClientLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Client/ServiceBusClientLiveTests.cs index d3c087b79ee3..7716bcec9d08 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Client/ServiceBusClientLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Client/ServiceBusClientLiveTests.cs @@ -228,7 +228,7 @@ public async Task GetChildClientFromClosedParentClientThrows(bool useSessions) { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: true, enableSession: useSessions)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); var sender = client.CreateSender(scope.QueueName); var message = ServiceBusTestUtilities.GetMessage(useSessions ? "sessionId" : null); @@ -272,7 +272,7 @@ public async Task GetChildClientFromParentSucceedsOnOpenConnection(bool useSessi { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: true, enableSession: useSessions)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); var sender = client.CreateSender(scope.QueueName); var message = ServiceBusTestUtilities.GetMessage(useSessions ? "sessionId" : null); @@ -311,7 +311,7 @@ public async Task AcceptNextSessionRespectsCancellation() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: true)) { - var client = CreateClient(60); + await using var client = CreateClient(60); var duration = TimeSpan.FromSeconds(5); using var cancellationTokenSource = new CancellationTokenSource(duration); @@ -335,7 +335,7 @@ public async Task CanAcceptBlankSession() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: true)) { - var client = CreateClient(); + await using var client = CreateClient(); var receiver = await client.AcceptSessionAsync(scope.QueueName, ""); Assert.AreEqual("", receiver.SessionId); } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeActivitySourceLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeActivitySourceLiveTests.cs index f8b18e74483c..0ddce09065ee 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeActivitySourceLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeActivitySourceLiveTests.cs @@ -36,7 +36,7 @@ public async Task SenderReceiverActivitiesDisabled(bool useSessions) await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: useSessions)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); string sessionId = null; if (useSessions) @@ -96,7 +96,7 @@ public async Task SenderReceiverActivities(bool useSessions) await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: useSessions)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); string sessionId = null; if (useSessions) @@ -356,7 +356,7 @@ public async Task SessionProcessorActivities() }); await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: true)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); await sender.SendMessagesAsync(messages); AssertSendActivities(sender, messages, listener); @@ -399,7 +399,7 @@ public async Task RuleManagerActivities() await using (var scope = await ServiceBusScope.CreateWithTopic(enablePartitioning: false, enableSession: false)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusRuleManager ruleManager = client.CreateRuleManager(scope.TopicName, scope.SubscriptionNames.First()); for (int i = 0; i < 100; i++) { diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeLiveTests.cs index 4ced1e068d60..86ce59f8f626 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/DiagnosticScopeLiveTests.cs @@ -38,7 +38,7 @@ public async Task SenderReceiverActivities(bool useSessions) { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: useSessions)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); string sessionId = null; if (useSessions) @@ -209,7 +209,7 @@ public async Task ProcessorActivities() }); await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: false)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); var messageCt = 2; var msgs = ServiceBusTestUtilities.GetMessages(messageCt); @@ -268,7 +268,7 @@ public async Task SessionProcessorActivities() }); await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: true)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); var messageCt = 2; var msgs = ServiceBusTestUtilities.GetMessages(messageCt, "sessionId"); @@ -312,7 +312,7 @@ public async Task RuleManagerActivities() { await using (var scope = await ServiceBusScope.CreateWithTopic(enablePartitioning: false, enableSession: false)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusRuleManager ruleManager = client.CreateRuleManager(scope.TopicName, scope.SubscriptionNames.First()); for (int i = 0; i < 100; i++) { diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/EventSourceLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/EventSourceLiveTests.cs index 6431e7886049..b7ed6eb831dd 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/EventSourceLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Diagnostics/EventSourceLiveTests.cs @@ -242,7 +242,7 @@ public async Task LogsTransactionEvents() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: false)) { - var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); ServiceBusSender sender = client.CreateSender(scope.QueueName); ServiceBusMessage message = ServiceBusTestUtilities.GetMessage(); diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/ProcessorLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/ProcessorLiveTests.cs index dca8fae14c7c..c83620f9d97b 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/ProcessorLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/ProcessorLiveTests.cs @@ -453,7 +453,8 @@ Task ProcessMessage(ProcessMessageEventArgs args) } await tcs.Task; - var receiver = CreateNoRetryClient().CreateReceiver(scope.QueueName); + await using var noRetryClient = CreateNoRetryClient(); + await using var receiver = noRetryClient.CreateReceiver(scope.QueueName); var receivedMessages = await receiver.ReceiveMessagesAsync(numMessages); // can't assert on the exact amount processed due to threads that // are already in flight when calling StopProcessingAsync, but we can at least verify that there are remaining messages diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/SessionProcessorLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/SessionProcessorLiveTests.cs index f75b783aa13a..f0733e3be262 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/SessionProcessorLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Processor/SessionProcessorLiveTests.cs @@ -485,7 +485,8 @@ public async Task ProcessConsumesAllMessages(int numThreads, bool autoComplete) PrefetchCount = 5 }; - await using ServiceBusSessionProcessor processor = CreateNoRetryClient().CreateSessionProcessor(scope.QueueName, options); + await using var noRetryClient = CreateNoRetryClient(); + await using ServiceBusSessionProcessor processor = noRetryClient.CreateSessionProcessor(scope.QueueName, options); processor.ProcessMessageAsync += ProcessMessage; processor.ProcessErrorAsync += SessionErrorHandler; @@ -531,7 +532,10 @@ async Task ProcessMessage(ProcessSessionMessageEventArgs args) if (!autoComplete) { Assert.That(async () => - await CreateNoRetryClient().AcceptNextSessionAsync(scope.QueueName), + { + await using var noRetryClient2 = CreateNoRetryClient(); + await noRetryClient2.AcceptNextSessionAsync(scope.QueueName); + }, Throws.Exception); } } @@ -957,7 +961,11 @@ Task ProcessMessage(ProcessSessionMessageEventArgs args) await tcs.Task; await processor.StopProcessingAsync(); Assert.That( - async () => await CreateNoRetryClient().AcceptNextSessionAsync(scope.QueueName), + async () => + { + await using var noRetryClient = CreateNoRetryClient(); + await noRetryClient.AcceptNextSessionAsync(scope.QueueName); + }, Throws.InstanceOf().And.Property(nameof(ServiceBusException.Reason)).EqualTo(ServiceBusFailureReason.ServiceTimeout)); } } @@ -1031,7 +1039,8 @@ Task ExceptionHandler(ProcessErrorEventArgs args) { try { - await CreateNoRetryClient().AcceptNextSessionAsync(scope.QueueName); + await using var noRetryClient = CreateNoRetryClient(); + await noRetryClient.AcceptNextSessionAsync(scope.QueueName); } catch (ServiceBusException ex) when (ex.Reason == ServiceBusFailureReason.ServiceTimeout || @@ -1811,9 +1820,13 @@ Task ProcessMessage(ProcessSessionMessageEventArgs args) Assert.IsFalse(processor.IsProcessing); Assert.That( - async () => await CreateNoRetryClient().AcceptSessionAsync( - scope.QueueName, - "sessionId"), + async () => + { + await using var noRetryClient = CreateNoRetryClient(); + await noRetryClient.AcceptSessionAsync( + scope.QueueName, + "sessionId"); + }, Throws.InstanceOf().And.Property(nameof(ServiceBusException.Reason)). EqualTo(ServiceBusFailureReason.SessionCannotBeLocked)); @@ -2425,7 +2438,11 @@ async Task ProcessMessage(ProcessSessionMessageEventArgs args) await processor.CloseAsync(); // verify all messages were completed - await AsyncAssert.ThrowsAsync(async () => await CreateNoRetryClient().AcceptNextSessionAsync(scope.QueueName)); + await AsyncAssert.ThrowsAsync(async () => + { + await using var noRetryClient = CreateNoRetryClient(); + await noRetryClient.AcceptNextSessionAsync(scope.QueueName); + }); } } @@ -2501,7 +2518,11 @@ async Task ProcessMessage(ProcessSessionMessageEventArgs args) await processor.CloseAsync(); // verify all messages were completed - await AsyncAssert.ThrowsAsync(async () => await CreateNoRetryClient().AcceptNextSessionAsync(scope.QueueName)); + await AsyncAssert.ThrowsAsync(async () => + { + await using var noRetryClient = CreateNoRetryClient(); + await noRetryClient.AcceptNextSessionAsync(scope.QueueName); + }); } } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Receiver/SessionReceiverLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Receiver/SessionReceiverLiveTests.cs index 459b23e910c2..c1de388eee32 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Receiver/SessionReceiverLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Receiver/SessionReceiverLiveTests.cs @@ -88,9 +88,12 @@ public async Task LockSameSessionShouldThrow() Assert.That( async () => - await CreateNoRetryClient().AcceptSessionAsync( - scope.QueueName, - sessionId), + { + await using var noRetryClient = CreateNoRetryClient(); + await noRetryClient.AcceptSessionAsync( + scope.QueueName, + sessionId); + }, Throws.InstanceOf().And.Property(nameof(ServiceBusException.Reason)).EqualTo(ServiceBusFailureReason.SessionCannotBeLocked)); } } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample02_MessageSettlement.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample02_MessageSettlement.cs index 69097255813d..bc7b377091f5 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample02_MessageSettlement.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample02_MessageSettlement.cs @@ -46,7 +46,9 @@ public async Task CompleteMessage() // complete the message, thereby deleting it from the service await receiver.CompleteMessageAsync(receivedMessage); #endregion - Assert.IsNull(await CreateNoRetryClient().CreateReceiver(queueName).ReceiveMessageAsync()); + await using var noRetryClient = CreateNoRetryClient(); + await using var receiver2 = noRetryClient.CreateReceiver(queueName); + Assert.IsNull(await receiver2.ReceiveMessageAsync()); } } @@ -78,7 +80,9 @@ public async Task AbandonMessage() // abandon the message, thereby releasing the lock and allowing it to be received again by this or other receivers await receiver.AbandonMessageAsync(receivedMessage); #endregion - Assert.IsNotNull(CreateNoRetryClient().CreateReceiver(queueName).ReceiveMessageAsync()); + await using var noRetryClient = CreateNoRetryClient(); + await using var receiver2 = noRetryClient.CreateReceiver(queueName); + Assert.IsNotNull(await receiver2.ReceiveMessageAsync()); } } @@ -201,7 +205,9 @@ public async Task RenewMessageLockAndComplete() // complete the message, thereby deleting it from the service await receiver.CompleteMessageAsync(receivedMessage); #endregion - Assert.IsNull(await CreateNoRetryClient().CreateReceiver(queueName).ReceiveMessageAsync()); + await using var noRetryClient = CreateNoRetryClient(); + await using var receiver2 = noRetryClient.CreateReceiver(queueName); + Assert.IsNull(await receiver2.ReceiveMessageAsync()); } } } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample10_ClaimCheck.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample10_ClaimCheck.cs index abdc20a6be01..edb3a00547a2 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample10_ClaimCheck.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample10_ClaimCheck.cs @@ -48,9 +48,9 @@ public async Task ClaimCheck() #region Snippet:ClaimCheckSendMessage #if SNIPPET - ServiceBusClient client = new("", credential); + await using ServiceBusClient client = new("", credential); #else - ServiceBusClient client = new(TestEnvironment.FullyQualifiedNamespace, credential); + await using ServiceBusClient client = new(TestEnvironment.FullyQualifiedNamespace, credential); #endif ServiceBusSender sender = client.CreateSender(scope.QueueName); await sender.SendMessageAsync(message); diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample11_CloudEvents.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample11_CloudEvents.cs index 719a771ed62d..d746a4fc0c49 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample11_CloudEvents.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample11_CloudEvents.cs @@ -70,7 +70,9 @@ public async Task RoundTripCloudEvent() Assert.AreEqual("Homer", receivedEmployee.Name); Assert.AreEqual("application/cloudevents+json", receivedMessage.ContentType); Assert.AreEqual(39, receivedEmployee.Age); - Assert.IsNull(await CreateNoRetryClient().CreateReceiver(queueName).ReceiveMessageAsync()); + await using var noRetryClient = CreateNoRetryClient(); + await using var receiver2 = noRetryClient.CreateReceiver(queueName); + Assert.IsNull(await receiver2.ReceiveMessageAsync()); } } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample13_AdvancedConfiguration.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample13_AdvancedConfiguration.cs index 1885dd6c4412..b87375fc8ae5 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample13_AdvancedConfiguration.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample13_AdvancedConfiguration.cs @@ -15,7 +15,7 @@ namespace Azure.Messaging.ServiceBus.Tests.Samples public class Sample13_AdvancedConfiguration : ServiceBusLiveTestBase { [Test] - public void ConfigureProxy() + public async Task ConfigureProxy() { #region Snippet:ServiceBusConfigureTransport #if SNIPPET @@ -25,7 +25,7 @@ public void ConfigureProxy() string fullyQualifiedNamespace = TestEnvironment.FullyQualifiedNamespace; var credential = TestEnvironment.Credential; #endif - ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions + await using ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions { TransportType = ServiceBusTransportType.AmqpWebSockets, WebProxy = new WebProxy("https://myproxyserver:80") @@ -36,7 +36,7 @@ public void ConfigureProxy() } [Test] - public void ConfigureRetryOptions() + public async Task ConfigureRetryOptions() { #region Snippet:ServiceBusConfigureRetryOptions #if SNIPPET @@ -46,7 +46,7 @@ public void ConfigureRetryOptions() string fullyQualifiedNamespace = TestEnvironment.FullyQualifiedNamespace; var credential = TestEnvironment.Credential; #endif - ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions + await using ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions { RetryOptions = new ServiceBusRetryOptions { @@ -59,7 +59,7 @@ public void ConfigureRetryOptions() } [Test] - public void ConfigureRemoteCertificateValidationCallback() + public async Task ConfigureRemoteCertificateValidationCallback() { #region Snippet:ServiceBusConfigureRemoteCertificateValidationCallback #if SNIPPET @@ -87,7 +87,7 @@ static bool ValidateServerCertificate( return false; } - ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions + await using ServiceBusClient client = new(fullyQualifiedNamespace, credential, new ServiceBusClientOptions { CertificateValidationCallback = ValidateServerCertificate }); @@ -95,7 +95,7 @@ static bool ValidateServerCertificate( } [Test] - public void ConfigurePrefetchReceiver() + public async Task ConfigurePrefetchReceiver() { #region Snippet:ServiceBusConfigurePrefetchReceiver #if SNIPPET @@ -105,7 +105,7 @@ public void ConfigurePrefetchReceiver() string fullyQualifiedNamespace = TestEnvironment.FullyQualifiedNamespace; var credential = TestEnvironment.Credential; #endif - ServiceBusClient client = new(fullyQualifiedNamespace, credential); + await using ServiceBusClient client = new(fullyQualifiedNamespace, credential); ServiceBusReceiver receiver = client.CreateReceiver("", new ServiceBusReceiverOptions { PrefetchCount = 10 @@ -116,7 +116,7 @@ public void ConfigurePrefetchReceiver() } [Test] - public void ConfigurePrefetchProcessor() + public async Task ConfigurePrefetchProcessor() { #region Snippet:ServiceBusConfigurePrefetchProcessor #if SNIPPET @@ -126,7 +126,7 @@ public void ConfigurePrefetchProcessor() string fullyQualifiedNamespace = TestEnvironment.FullyQualifiedNamespace; var credential = TestEnvironment.Credential; #endif - ServiceBusClient client = new(fullyQualifiedNamespace, credential); + await using ServiceBusClient client = new(fullyQualifiedNamespace, credential); ServiceBusProcessor processor = client.CreateProcessor("", new ServiceBusProcessorOptions { PrefetchCount = 10 @@ -148,7 +148,7 @@ public async Task ConfigureMessageLockLostHandler() string fullyQualifiedNamespace = TestEnvironment.FullyQualifiedNamespace; var credential = TestEnvironment.Credential; #endif - ServiceBusClient client = new(fullyQualifiedNamespace, credential); + await using ServiceBusClient client = new(fullyQualifiedNamespace, credential); // create a processor that we can use to process the messages await using ServiceBusProcessor processor = client.CreateProcessor(""); @@ -217,7 +217,7 @@ public async Task ConfigureSessionLockLostHandler() string fullyQualifiedNamespace = TestEnvironment.FullyQualifiedNamespace; var credential = TestEnvironment.Credential; #endif - var client = new ServiceBusClient(fullyQualifiedNamespace, credential); + await using var client = new ServiceBusClient(fullyQualifiedNamespace, credential); // create a processor that we can use to process the messages await using ServiceBusSessionProcessor processor = client.CreateSessionProcessor(""); diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample14_AMQPMessage.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample14_AMQPMessage.cs index 1cc4d6978d8e..7b7f7c227cfd 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample14_AMQPMessage.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample14_AMQPMessage.cs @@ -29,7 +29,7 @@ public async Task SendAndReceiveValueBody() #region Snippet:ServiceBusSendValueBody - var client = new ServiceBusClient(fullyQualifiedNamespace, credential); + await using var client = new ServiceBusClient(fullyQualifiedNamespace, credential); ServiceBusSender sender = client.CreateSender(queueName); var message = new ServiceBusMessage(); @@ -81,7 +81,7 @@ public async Task SetMiscellaneousProperties() #endif #region Snippet:ServiceBusSetMiscellaneousProperties - var client = new ServiceBusClient(fullyQualifiedNamespace, credential); + await using var client = new ServiceBusClient(fullyQualifiedNamespace, credential); ServiceBusSender sender = client.CreateSender(queueName); var message = new ServiceBusMessage("message with AMQP properties set"); diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample16_CrossReceiverMessageSettlement.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample16_CrossReceiverMessageSettlement.cs index cb2008970ed0..8cc3682815cc 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample16_CrossReceiverMessageSettlement.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Samples/Sample16_CrossReceiverMessageSettlement.cs @@ -25,7 +25,7 @@ public async Task RehydrateReceivedMessageUsingRawBytes() #else var credential = TestEnvironment.Credential; #endif - ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); + await using ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); ServiceBusSender sender = client1.CreateSender(queueName); ServiceBusMessage message = new("some message"); @@ -41,7 +41,7 @@ public async Task RehydrateReceivedMessageUsingRawBytes() AmqpAnnotatedMessage amqpMessage = AmqpAnnotatedMessage.FromBytes(new BinaryData(amqpMessageBytes)); ServiceBusReceivedMessage rehydratedMessage = ServiceBusReceivedMessage.FromAmqpMessage(amqpMessage, new BinaryData(lockTokenBytes)); - var client2 = new ServiceBusClient(fullyQualifiedNamespace, credential); + await using var client2 = new ServiceBusClient(fullyQualifiedNamespace, credential); ServiceBusReceiver receiver2 = client2.CreateReceiver(queueName); await receiver2.CompleteMessageAsync(rehydratedMessage); #endregion @@ -67,7 +67,7 @@ public async Task RehydrateReceivedMessageUsingLockToken() #region Snippet:ServiceBusWriteReceivedMessageLockToken - ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); + await using ServiceBusClient client1 = new(fullyQualifiedNamespace, credential); ServiceBusSender sender = client1.CreateSender(queueName); ServiceBusMessage message = new("some message"); @@ -82,7 +82,7 @@ public async Task RehydrateReceivedMessageUsingLockToken() ServiceBusReceivedMessage rehydratedMessage = ServiceBusModelFactory.ServiceBusReceivedMessage(lockTokenGuid: new Guid(lockTokenBytes.ToArray())); - ServiceBusClient client2 = new(fullyQualifiedNamespace, credential); + await using ServiceBusClient client2 = new(fullyQualifiedNamespace, credential); ServiceBusReceiver receiver2 = client2.CreateReceiver(queueName); await receiver2.CompleteMessageAsync(rehydratedMessage); #endregion diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Sender/SenderLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Sender/SenderLiveTests.cs index 0aeab78a94a6..913d06af1fbc 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Sender/SenderLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Sender/SenderLiveTests.cs @@ -18,7 +18,8 @@ public async Task SendConnStringWithSharedKey() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: false)) { - await using var sender = new ServiceBusClient(TestEnvironment.ServiceBusConnectionString).CreateSender(scope.QueueName); + await using var client = new ServiceBusClient(TestEnvironment.ServiceBusConnectionString); + await using var sender = client.CreateSender(scope.QueueName); await sender.SendMessageAsync(ServiceBusTestUtilities.GetMessage()); } } @@ -32,7 +33,8 @@ public async Task SendConnStringWithSignature() var audience = ServiceBusConnection.BuildConnectionResource(options.TransportType, TestEnvironment.FullyQualifiedNamespace, scope.QueueName); var connectionString = TestEnvironment.BuildConnectionStringWithSharedAccessSignature(scope.QueueName, audience); - await using var sender = new ServiceBusClient(connectionString, options).CreateSender(scope.QueueName); + await using var client = new ServiceBusClient(connectionString, options); + await using var sender = client.CreateSender(scope.QueueName); await sender.SendMessageAsync(ServiceBusTestUtilities.GetMessage()); } } @@ -187,7 +189,8 @@ public async Task ClientProperties() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: false)) { - await using var sender = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential).CreateSender(scope.QueueName); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var sender = client.CreateSender(scope.QueueName); Assert.AreEqual(scope.QueueName, sender.EntityPath); Assert.AreEqual(TestEnvironment.FullyQualifiedNamespace, sender.FullyQualifiedNamespace); } @@ -353,7 +356,8 @@ public async Task CreateSenderWithoutParentReference() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: false)) { - await using var sender = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential).CreateSender(scope.QueueName); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var sender = client.CreateSender(scope.QueueName); for (int i = 0; i < 10; i++) { await Task.Delay(1000); @@ -383,7 +387,8 @@ public async Task SendNonSessionMessageToSessionfulEntityShouldThrow() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: true)) { - await using var sender = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential).CreateSender(scope.QueueName); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var sender = client.CreateSender(scope.QueueName); Assert.That( async () => await sender.SendMessageAsync(ServiceBusTestUtilities.GetMessage()), Throws.InstanceOf()); @@ -395,10 +400,11 @@ public async Task CanSendReceivedMessage() { await using (var scope = await ServiceBusScope.CreateWithQueue(enablePartitioning: false, enableSession: false)) { - var client = new ServiceBusClient( + await using var client = new ServiceBusClient( TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); - await using var sender = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential).CreateSender(scope.QueueName); + await using var client2 = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var sender = client2.CreateSender(scope.QueueName); var messageCt = 10; IEnumerable messages = ServiceBusTestUtilities.GetMessages(messageCt); await sender.SendMessagesAsync(messages); @@ -564,7 +570,8 @@ public async Task SendConnStringWithCustomIdentifier() Identifier = "testIdent-abcdefg" }; - await using var sender = new ServiceBusClient(TestEnvironment.ServiceBusConnectionString).CreateSender(scope.QueueName, options); + await using var client = new ServiceBusClient(TestEnvironment.ServiceBusConnectionString); + await using var sender = client.CreateSender(scope.QueueName, options); await sender.SendMessageAsync(ServiceBusTestUtilities.GetMessage()); } } @@ -579,7 +586,8 @@ public async Task SendTokenWithCustomIdentifier() Identifier = "testIdent-abcdefg" }; - await using var sender = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential).CreateSender(scope.QueueName, options); + await using var client = new ServiceBusClient(TestEnvironment.FullyQualifiedNamespace, TestEnvironment.Credential); + await using var sender = client.CreateSender(scope.QueueName, options); await sender.SendMessageAsync(ServiceBusTestUtilities.GetMessage()); } } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Transactions/TransactionLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Transactions/TransactionLiveTests.cs index dfc13f67daa9..157bcaeb414e 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Transactions/TransactionLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Transactions/TransactionLiveTests.cs @@ -93,7 +93,10 @@ public async Task TransactionalSendMultipleSessionsRollback() } Assert.That( async () => - await CreateNoRetryClient().AcceptNextSessionAsync(scope.QueueName), Throws.InstanceOf() + { + await using var noRetryClient = CreateNoRetryClient(); + await noRetryClient.AcceptNextSessionAsync(scope.QueueName); + }, Throws.InstanceOf() .And.Property(nameof(ServiceBusException.Reason)) .EqualTo(ServiceBusFailureReason.ServiceTimeout)); };