public void Should_create_a_valid_filtering_string() { var filter = new SqlSubscriptionFilter(typeof(SomeEvent)); var result = filter.Serialize(); const string expected = @"[NServiceBus.EnclosedMessageTypes] LIKE '%NServiceBus.Azure.WindowsAzureServiceBus.Tests.Topology.MetaModel.SomeEvent%'"; Assert.That(result, Is.EqualTo(expected)); }
public async Task Should_not_create_create_a_duplicate_subscription__issue_811() { var nativeManager = NamespaceManager.CreateFromConnectionString(AzureServiceBusConnectionString.Value); var namespaceManager = new NamespaceManagerAdapterInternal(nativeManager); var topicForTest = $"{topicPath}_issue811"; try { if (!await nativeManager.TopicExistsAsync(topicForTest)) { await nativeManager.CreateTopicAsync(new TopicDescription(topicForTest)); } var subscriptionName = nameof(SomeEvent); await namespaceManager.CreateSubscription(new SubscriptionDescription(topicForTest, subscriptionName), new SqlSubscriptionFilter_UsedPriorToVersion9(typeof(SomeEvent)).Serialize()); var creator = new AzureServiceBusSubscriptionCreatorV6(new TopologySubscriptionSettings()); var metadata = new SubscriptionMetadataInternal { SubscriptionNameBasedOnEventWithNamespace = typeof(SomeEvent).FullName, Description = Guid.NewGuid().ToString() }; var properSqlFilter = new SqlSubscriptionFilter(typeof(SomeEvent)).Serialize(); await creator.Create(topicForTest, subscriptionName, metadata, properSqlFilter, namespaceManager); var foundSubcriptions = await nativeManager.GetSubscriptionsAsync(topicForTest); Assert.AreEqual(1, foundSubcriptions.Count()); } finally { await nativeManager.DeleteTopicAsync(topicForTest); } }