From c3f4a22088a507965ef5d8d08a9bd6a02b9eab02 Mon Sep 17 00:00:00 2001 From: jolov Date: Fri, 19 Apr 2024 07:54:21 -0700 Subject: [PATCH 1/3] Respect SupportsOrdering property --- sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md | 2 ++ sdk/servicebus/Azure.Messaging.ServiceBus/assets.json | 2 +- .../src/Administration/CreateTopicOptions.cs | 4 +++- .../src/Administration/TopicProperties.cs | 1 + .../Administration/ServiceBusManagementClientLiveTests.cs | 1 + 5 files changed, 8 insertions(+), 2 deletions(-) diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md b/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md index 66891f6753eff..189dba794c1c7 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md @@ -8,6 +8,8 @@ ### Bugs Fixed +- Fixed issue where the `SupportsOrdering` property was not being respected when set on `CreateTopicOptions`. + ### Other Changes ## 7.17.5 (2024-04-09) diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json b/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json index 4a8c80d32c2cd..d5c4f3130382b 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/servicebus/Azure.Messaging.ServiceBus", - "Tag": "net/servicebus/Azure.Messaging.ServiceBus_36f6f28db7" + "Tag": "net/servicebus/Azure.Messaging.ServiceBus_b889cb8410" } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/CreateTopicOptions.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/CreateTopicOptions.cs index 421ce7d2522a1..b85406192bca0 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/CreateTopicOptions.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/CreateTopicOptions.cs @@ -45,6 +45,7 @@ public CreateTopicOptions(TopicProperties topic) Status = topic.Status; EnablePartitioning = topic.EnablePartitioning; MaxMessageSizeInKilobytes = topic.MaxMessageSizeInKilobytes; + SupportOrdering = topic.SupportOrdering; if (topic.UserMetadata != null) { UserMetadata = topic.UserMetadata; @@ -233,7 +234,8 @@ public bool Equals(CreateTopicOptions other) && (AuthorizationRules != null && otherOptions.AuthorizationRules != null || AuthorizationRules == null && otherOptions.AuthorizationRules == null) && (AuthorizationRules == null || AuthorizationRules.Equals(otherOptions.AuthorizationRules)) - && MaxMessageSizeInKilobytes.Equals(other.MaxMessageSizeInKilobytes)) + && MaxMessageSizeInKilobytes.Equals(other.MaxMessageSizeInKilobytes) + && SupportOrdering == otherOptions.SupportOrdering) { return true; } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/TopicProperties.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/TopicProperties.cs index 651ef0583a5d4..632f17eacb55e 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/TopicProperties.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/src/Administration/TopicProperties.cs @@ -45,6 +45,7 @@ internal TopicProperties(CreateTopicOptions options) Status = options.Status; EnableBatchedOperations = options.EnableBatchedOperations; EnablePartitioning = options.EnablePartitioning; + SupportOrdering = options.SupportOrdering; if (options.UserMetadata != null) { UserMetadata = options.UserMetadata; diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs index 063a6d189edf9..8702573db9eb5 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs @@ -240,6 +240,7 @@ public async Task BasicTopicCrudOperations(bool premium) MaxSizeInMegabytes = 1024, RequiresDuplicateDetection = true, UserMetadata = nameof(BasicTopicCrudOperations), + SupportOrdering = true }; if (CanSetMaxMessageSize(premium)) From d405aca026a2ffd6aaeeace72b50d5b84d0ed5e4 Mon Sep 17 00:00:00 2001 From: jolov Date: Fri, 19 Apr 2024 07:55:07 -0700 Subject: [PATCH 2/3] typo --- sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md b/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md index 189dba794c1c7..8bafcf303c133 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/CHANGELOG.md @@ -8,7 +8,7 @@ ### Bugs Fixed -- Fixed issue where the `SupportsOrdering` property was not being respected when set on `CreateTopicOptions`. +- Fixed issue where the `SupportOrdering` property was not being respected when set on `CreateTopicOptions`. ### Other Changes From afed48265fdd3d8b553c78b6cd57893a15bdb75c Mon Sep 17 00:00:00 2001 From: jolov Date: Fri, 19 Apr 2024 07:57:27 -0700 Subject: [PATCH 3/3] Add test cases --- sdk/servicebus/Azure.Messaging.ServiceBus/assets.json | 2 +- .../ServiceBusManagementClientLiveTests.cs | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json b/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json index d5c4f3130382b..30f5014ed11a0 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "net", "TagPrefix": "net/servicebus/Azure.Messaging.ServiceBus", - "Tag": "net/servicebus/Azure.Messaging.ServiceBus_b889cb8410" + "Tag": "net/servicebus/Azure.Messaging.ServiceBus_2c5f4fe7c3" } diff --git a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs index 8702573db9eb5..88465ef4effab 100644 --- a/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs +++ b/sdk/servicebus/Azure.Messaging.ServiceBus/tests/Administration/ServiceBusManagementClientLiveTests.cs @@ -223,9 +223,11 @@ await client.GetQueueAsync(queueOptions.Name), } [RecordedTest] - [TestCase(false)] - [TestCase(true)] - public async Task BasicTopicCrudOperations(bool premium) + [TestCase(false, false)] + [TestCase(false, true)] + [TestCase(true, false)] + [TestCase(true, true)] + public async Task BasicTopicCrudOperations(bool premium, bool supportOrdering) { var topicName = nameof(BasicTopicCrudOperations).ToLower() + Recording.Random.NewGuid().ToString("D").Substring(0, 8); var client = CreateClient(premium); @@ -240,7 +242,7 @@ public async Task BasicTopicCrudOperations(bool premium) MaxSizeInMegabytes = 1024, RequiresDuplicateDetection = true, UserMetadata = nameof(BasicTopicCrudOperations), - SupportOrdering = true + SupportOrdering = supportOrdering }; if (CanSetMaxMessageSize(premium))