Ejemplo n.º 1
0
        public async Task CreatesQueueIfDoesNotAlreadyExist()
        {
            var existingQueueName = "existing-queue-name";
            var queues            = StubNamespaceQueues(existingQueueName);
            var creationObject    = StubNamespaceCreationMethods(queues);

            var newQueueName = "unknown-queue-name";
            await _commandQueueClient.CreateQueueIfNotExists(newQueueName);

            A.CallTo(() => creationObject.CreateAsync(A <CancellationToken> .Ignored, A <bool> .Ignored))
            .MustHaveHappenedOnceExactly();
        }
        public async Task CreatesQueueIfDoesNotExist()
        {
            var uniqueQueueName = $"test-{Guid.NewGuid()}";

            await _commandQueueClient.CreateQueueIfNotExists(uniqueQueueName);

            var queues = await _serviceBusNamespace.Queues.ListAsync();

            var createdQueue = queues.FirstOrDefault(q => q.Name.Equals(uniqueQueueName, StringComparison.Ordinal));

            Assert.IsNotNull(createdQueue, $"Unable to verify that [QueueName={uniqueQueueName}] was successfully created.");

            // Cleanup
            await _serviceBusNamespace.Queues.DeleteByNameAsync(uniqueQueueName);

            queues = await _serviceBusNamespace.Queues.ListAsync();

            createdQueue = queues.FirstOrDefault(q => q.Name.Equals(uniqueQueueName, StringComparison.Ordinal));

            Assert.IsNull(createdQueue, $"Queue was created successfully, but deletion failed. Manual deletion required: [QueueName={uniqueQueueName}]");
        }