Skip to content

Commit 5ccac25

Browse files
committed
Changes to tests
1 parent 1677c32 commit 5ccac25

3 files changed

Lines changed: 67 additions & 67 deletions

File tree

src/Platy.AdventureWorks.Repository/AdventureWorksRepositoryRegistration.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,11 @@ public static IServiceCollection AddAdventureWorkDatabase(this IServiceCollectio
2323
// Add the DbContext
2424
services.AddDbContext<AdventureWorksContext>((provider, options) =>
2525
{
26-
options.UseSqlServer(connectionString)
26+
options.UseSqlServer(connectionString, sqlOptions =>
27+
{
28+
sqlOptions.EnableRetryOnFailure(10, TimeSpan.FromSeconds(10), null);
29+
30+
})
2731
.AddInterceptors(provider.GetRequiredService<EventDispatchInterceptor>());
2832
});
2933

tests/Platy.AdventureWorks.Repository.Tests.Integration/AddressRepositoryTest.cs

Lines changed: 59 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -22,67 +22,63 @@ public AddressRepositoryTest(DatabaseFixture fixture)
2222
_serviceProvider = fixture.ServiceProvider;
2323
}
2424

25-
// [Fact]
26-
// public async Task GetAsync_ValidAddressId_ReturnsValidAddress()
27-
// {
28-
// // Arrange
29-
// var addressRepository = _serviceProvider.GetService<IAddressRepository>();
30-
//
31-
// // Act
32-
// var addressReadModel = await addressRepository!.GetAsync(123, CancellationToken.None);
33-
//
34-
// // Assert
35-
// addressReadModel.Value.Id.ShouldBe(123);
36-
// }
37-
//
38-
// [Fact]
39-
// private async Task CreateAsync_InvalidPostalCode_ReturnsValidationErrors()
40-
// {
41-
// // Arrange
42-
// var addressRepository = _serviceProvider.GetService<IAddressRepository>();
43-
// var readModel = await addressRepository!.GetAsync(1, CancellationToken.None);
44-
// var newModel = new AddressCreateModel
45-
// {
46-
// AddressLine1 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
47-
// AddressLine2 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
48-
// City = readModel.Value.City + "test" + Random.Shared.NextInt64(),
49-
// PostalCode = readModel.Value.PostalCode + "test" + Random.Shared.NextInt64(),
50-
// StateProvinceId = readModel.Value.StateProvinceId
51-
// };
52-
//
53-
// // Act
54-
// var addressReadModel = await addressRepository.CreateAsync(newModel, CancellationToken.None);
55-
//
56-
// // Assert
57-
// addressReadModel.IsInvalid().ShouldBe(true);
58-
// addressReadModel.ValidationErrors.Count().ShouldBe(1);
59-
// }
60-
//
61-
// [Fact]
62-
// private async Task CreateAsync_ValidAddressValues_ReturnsSuccess()
63-
// {
64-
// // Arrange
65-
// var addressRepository = _serviceProvider.GetService<IAddressRepository>();
66-
// var readModel = await addressRepository!.GetAsync(1, CancellationToken.None);
67-
// var newModel = new AddressCreateModel
68-
// {
69-
// AddressLine1 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
70-
// AddressLine2 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
71-
// City = readModel.Value.City + "test" + Random.Shared.NextInt64(),
72-
// PostalCode = readModel.Value.PostalCode,
73-
// StateProvinceId = readModel.Value.StateProvinceId
74-
// };
75-
//
76-
// // Act
77-
// var addressReadModel = await addressRepository.CreateAsync(newModel, CancellationToken.None);
78-
//
79-
// // Assert
80-
// addressReadModel.IsInvalid().ShouldBe(false);
81-
// addressReadModel.Errors.Count().ShouldBe(0);
82-
// addressReadModel.Value.AddressLine1.ShouldBe(newModel.AddressLine1);
83-
// }
84-
// addressReadModel.IsInvalid().ShouldBe(false);
85-
// addressReadModel.Errors.Count().ShouldBe(0);
86-
// addressReadModel.Value.AddressLine1.ShouldBe(newModel.AddressLine1);
87-
// }
25+
[Fact]
26+
public async Task GetAsync_ValidAddressId_ReturnsValidAddress()
27+
{
28+
// Arrange
29+
var addressRepository = _serviceProvider.GetService<IAddressRepository>();
30+
31+
// Act
32+
var addressReadModel = await addressRepository!.GetAsync(123, CancellationToken.None);
33+
34+
// Assert
35+
addressReadModel.Value.Id.ShouldBe(123);
36+
}
37+
38+
[Fact]
39+
private async Task CreateAsync_InvalidPostalCode_ReturnsValidationErrors()
40+
{
41+
// Arrange
42+
var addressRepository = _serviceProvider.GetService<IAddressRepository>();
43+
var readModel = await addressRepository!.GetAsync(1, CancellationToken.None);
44+
var newModel = new AddressCreateModel
45+
{
46+
AddressLine1 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
47+
AddressLine2 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
48+
City = readModel.Value.City + "test" + Random.Shared.NextInt64(),
49+
PostalCode = readModel.Value.PostalCode + "test" + Random.Shared.NextInt64(),
50+
StateProvinceId = readModel.Value.StateProvinceId
51+
};
52+
53+
// Act
54+
var addressReadModel = await addressRepository.CreateAsync(newModel, CancellationToken.None);
55+
56+
// Assert
57+
addressReadModel.IsInvalid().ShouldBe(true);
58+
addressReadModel.ValidationErrors.Count().ShouldBe(1);
59+
}
60+
61+
[Fact]
62+
private async Task CreateAsync_ValidAddressValues_ReturnsSuccess()
63+
{
64+
// Arrange
65+
var addressRepository = _serviceProvider.GetService<IAddressRepository>();
66+
var readModel = await addressRepository!.GetAsync(1, CancellationToken.None);
67+
var newModel = new AddressCreateModel
68+
{
69+
AddressLine1 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
70+
AddressLine2 = readModel.Value.AddressLine2 + "test" + Random.Shared.NextInt64(),
71+
City = readModel.Value.City + "test" + Random.Shared.NextInt64(),
72+
PostalCode = readModel.Value.PostalCode,
73+
StateProvinceId = readModel.Value.StateProvinceId
74+
};
75+
76+
// Act
77+
var addressReadModel = await addressRepository.CreateAsync(newModel, CancellationToken.None);
78+
79+
// Assert
80+
addressReadModel.IsInvalid().ShouldBe(false);
81+
addressReadModel.Errors.Count().ShouldBe(0);
82+
addressReadModel.Value.AddressLine1.ShouldBe(newModel.AddressLine1);
83+
}
8884
}

tests/Platy.AdventureWorks.Repository.Tests.Integration/DatabaseFixture.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ namespace Platy.AdventureWorks.Repository.Tests.Integration;
1010

1111
public class DatabaseFixture : IDisposable
1212
{
13-
private IFutureDockerImage? _msSqlImage;
14-
private MsSqlContainer? _msSqlContainer;
13+
// private IFutureDockerImage? _msSqlImage;
14+
// private MsSqlContainer? _msSqlContainer;
1515

1616
public DatabaseFixture()
1717
{
@@ -43,7 +43,7 @@ public DatabaseFixture()
4343
// .WithEnvironment("MSSQL_SA_PASSWORD", "Test123Test*")
4444
// .WithEnvironment("ACCEPT_EULA","Y")
4545
// .WithCleanUp(true)
46-
// .WithPortBinding(1433,1433)
46+
// .WithPortBinding(1433,1433)
4747
// .WithName("adventure-works-db")
4848
// .WithWaitStrategy(Wait.ForUnixContainer().UntilMessageIsLogged("Server is ready."))
4949
// .Build();

0 commit comments

Comments
 (0)