Skip to content

Commit dfdd556

Browse files
authored
Merge pull request #1137 from jithu7432/master
Add DI tests for `LightInject`, `StashBox`, `Lamar`
2 parents f4421b1 + 0992a83 commit dfdd556

7 files changed

+105
-10
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
using MediatR.DependencyInjectionTests.Abstractions;
2+
using MediatR.DependencyInjectionTests.Providers;
3+
4+
namespace MediatR.DependencyInjectionTests;
5+
6+
public class LamarDependencyInjectionTests()
7+
: BaseAssemblyResolutionTests(new LamarServiceProviderFixture());
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
using MediatR.DependencyInjectionTests.Abstractions;
2+
using MediatR.DependencyInjectionTests.Providers;
3+
4+
namespace MediatR.DependencyInjectionTests;
5+
6+
public class LightInjectDependencyInjectionTests()
7+
: BaseAssemblyResolutionTests(new LightInjectServiceProviderFixture());

test/MediatR.DependencyInjectionTests/MediatR.DependencyInjectionTests.csproj

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,21 @@
1515

1616

1717
<ItemGroup>
18-
<PackageReference Include="coverlet.collector" Version="6.0.0" />
19-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
20-
<PackageReference Include="Shouldly" Version="4.2.1" />
18+
<PackageReference Include="coverlet.collector" Version="6.0.0"/>
19+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.8.0"/>
20+
<PackageReference Include="Shouldly" Version="4.2.1"/>
2121
<PackageReference Include="System.Net.Http" Version="4.3.4" />
2222
<PackageReference Include="System.Text.RegularExpressions" Version="4.3.1" />
23-
<PackageReference Include="xunit" Version="2.5.3" />
24-
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3" />
25-
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
26-
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.0" />
27-
<PackageReference Include="Microsoft.Extensions.Diagnostics.Testing" Version="8.0.0" />
28-
<PackageReference Include="DryIoc.Microsoft.DependencyInjection" Version="6.2.0" />
29-
<PackageReference Include="Autofac.Extensions.DependencyInjection" Version="8.0.0" />
23+
<PackageReference Include="xunit" Version="2.5.3"/>
24+
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.3"/>
25+
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0"/>
26+
<PackageReference Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.2"/>
27+
<PackageReference Include="Microsoft.Extensions.Diagnostics.Testing" Version="8.0.0"/>
28+
<PackageReference Include="DryIoc.Microsoft.DependencyInjection" Version="6.2.0"/>
29+
<PackageReference Include="Autofac.Extensions.DependencyInjection" Version="8.0.0"/>
30+
<PackageReference Include="LightInject.Microsoft.DependencyInjection" Version="4.0.3" />
31+
<PackageReference Include="Stashbox.Extensions.DependencyInjection" Version="5.7.0" />
32+
<PackageReference Include="Lamar.Microsoft.DependencyInjection" Version="15.0.1" />
3033
</ItemGroup>
3134

3235
<ItemGroup>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
using Lamar;
2+
using MediatR.DependencyInjectionTests.Abstractions;
3+
using Microsoft.Extensions.DependencyInjection;
4+
5+
namespace MediatR.DependencyInjectionTests.Providers;
6+
7+
public class LamarServiceProviderFixture : BaseServiceProviderFixture
8+
{
9+
public override IServiceProvider Provider
10+
{
11+
get
12+
{
13+
var services = new ServiceCollection();
14+
services.AddFakeLogging();
15+
services.AddMediatR(x => x.RegisterServicesFromAssemblyContaining(typeof(Pong)));
16+
var c = new Container(services);
17+
return c.ServiceProvider;
18+
}
19+
}
20+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
using LightInject;
2+
using LightInject.Microsoft.DependencyInjection;
3+
using MediatR.DependencyInjectionTests.Abstractions;
4+
using Microsoft.Extensions.DependencyInjection;
5+
6+
namespace MediatR.DependencyInjectionTests.Providers;
7+
8+
public class LightInjectServiceProviderFixture : BaseServiceProviderFixture
9+
{
10+
public override IServiceProvider Provider
11+
{
12+
get
13+
{
14+
var services = new ServiceCollection();
15+
services.AddFakeLogging();
16+
services.AddMediatR(x => x.RegisterServicesFromAssemblyContaining(typeof(Pong)));
17+
18+
var container = new ServiceContainer(new ContainerOptions()
19+
{
20+
EnableMicrosoftCompatibility = true
21+
});
22+
return container.CreateServiceProvider(services);
23+
}
24+
}
25+
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
using MediatR.DependencyInjectionTests.Abstractions;
2+
using Microsoft.Extensions.DependencyInjection;
3+
using Stashbox;
4+
5+
namespace MediatR.DependencyInjectionTests.Providers;
6+
7+
public class StashBoxServiceProviderFixture : BaseServiceProviderFixture
8+
{
9+
public override IServiceProvider Provider
10+
{
11+
get
12+
{
13+
var services = new ServiceCollection();
14+
services.AddFakeLogging();
15+
services.AddMediatR(x => x.RegisterServicesFromAssemblyContaining(typeof(Pong)));
16+
17+
var container = new StashboxContainer();
18+
services.UseStashbox(container);
19+
container.Validate();
20+
21+
return services.BuildServiceProvider();
22+
}
23+
}
24+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
using MediatR.DependencyInjectionTests.Abstractions;
2+
using MediatR.DependencyInjectionTests.Providers;
3+
4+
namespace MediatR.DependencyInjectionTests;
5+
6+
public class StashBoxDependencyInjectionTests : BaseAssemblyResolutionTests
7+
{
8+
public StashBoxDependencyInjectionTests() : base(new StashBoxServiceProviderFixture()) { }
9+
}

0 commit comments

Comments
 (0)