Skip to content

Commit ecc8d7a

Browse files
committed
add ServiceCollectionExtensionsTests
1 parent c9695c7 commit ecc8d7a

File tree

2 files changed

+50
-1
lines changed

2 files changed

+50
-1
lines changed

src/GodelTech.Messaging.AzureServiceBus/DependencyInjection/ServiceCollectionExtensions.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
using GodelTech.Messaging.AzureServiceBus;
44
using Microsoft.Extensions.DependencyInjection;
55

6-
// ReSharper disable once CheckNamespace
76
namespace Microsoft.AspNetCore.Builder
87
{
98
/// <summary>
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using Azure.Messaging.ServiceBus;
4+
using Microsoft.AspNetCore.Builder;
5+
using Microsoft.Extensions.DependencyInjection;
6+
using Microsoft.Extensions.Options;
7+
using Xunit;
8+
9+
namespace GodelTech.Messaging.AzureServiceBus.Tests.DependencyInjection
10+
{
11+
public class ServiceCollectionExtensionsTests
12+
{
13+
[Fact]
14+
public void AddAzureServiceBusSender_Success()
15+
{
16+
// Arrange
17+
const string connectionString = "Endpoint=sb://test.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=YourAccessKey";
18+
var queues = new Dictionary<string, string>
19+
{
20+
{
21+
"InternalKey",
22+
"AzureServiceBusQueueName"
23+
}
24+
};
25+
Action<AzureServiceBusOptions> optionsAction = options =>
26+
{
27+
options.Queues = queues;
28+
};
29+
30+
var services = new ServiceCollection();
31+
32+
// Act
33+
services.AddAzureServiceBusSender(connectionString, optionsAction);
34+
35+
// Assert
36+
var provider = services.BuildServiceProvider();
37+
38+
var resultRequiredService = provider.GetRequiredService<ServiceBusClient>();
39+
Assert.NotNull(resultRequiredService);
40+
41+
var resultOptionsAction = provider.GetRequiredService<IOptions<AzureServiceBusOptions>>();
42+
Assert.NotNull(resultOptionsAction);
43+
Assert.NotNull(resultOptionsAction.Value);
44+
Assert.Equal(queues, resultOptionsAction.Value.Queues);
45+
46+
var resultAzureServiceBusSender = provider.GetRequiredService<AzureServiceBusSender>();
47+
Assert.NotNull(resultAzureServiceBusSender);
48+
}
49+
}
50+
}

0 commit comments

Comments
 (0)