yavsc/src/test/NonRegression/Database.cs

48 lines
1.3 KiB
C#
Raw Normal View History

2019-05-24 20:14:38 +01:00
using System;
2018-09-04 16:40:02 +02:00
using Xunit;
using Xunit.Abstractions;
namespace test.Mandatory
{
2019-01-05 02:51:04 +00:00
[Collection("Database")]
2021-01-04 00:11:27 +00:00
[Trait("regression", "non")]
2018-09-04 16:40:02 +02:00
[Trait("dev", "wip")]
2019-05-24 20:14:38 +01:00
public class Database: IClassFixture<ServerSideFixture>, IDisposable
2018-09-04 16:40:02 +02:00
{
2020-09-12 01:11:30 +01:00
readonly ServerSideFixture _serverFixture;
readonly ITestOutputHelper output;
2018-09-04 16:40:02 +02:00
public Database(ServerSideFixture serverFixture, ITestOutputHelper output)
{
this.output = output;
_serverFixture = serverFixture;
2021-01-02 00:41:54 +00:00
try {
2021-01-02 03:12:43 +00:00
if (_serverFixture.DbCreated)
2021-01-02 00:41:54 +00:00
_serverFixture.DropTestDb();
}
catch (Exception)
{
output.WriteLine("db not dropped");
}
output.WriteLine($"Startup.Testing.ConnectionStrings.DatabaseCtor is {Startup.Testing.ConnectionStrings.DatabaseCtor}");
2018-09-04 16:40:02 +02:00
}
/// <summary>
/// Assuming we're using an account that may create databases,
/// Install all our migrations in a fresh new database.
/// </summary>
[Fact]
public void InstallFromScratchUsingPoweredNpgsqlUser()
{
2021-01-02 00:41:54 +00:00
_serverFixture.EnsureTestDb();
2018-09-04 16:40:02 +02:00
_serverFixture.UpgradeDb();
}
2019-05-24 20:14:38 +01:00
public void Dispose()
{
2021-01-02 00:41:54 +00:00
_serverFixture.DropTestDb();
2019-05-24 20:14:38 +01:00
}
2018-09-04 16:40:02 +02:00
}
2019-01-05 02:51:04 +00:00
}