Make tests faster (#8737)
* Test changes * Make finding the test tile a little smarter
This commit is contained in:
@@ -10,16 +10,15 @@ namespace Content.IntegrationTests.Tests.Commands
|
||||
{
|
||||
[TestFixture]
|
||||
[TestOf(typeof(PardonCommand))]
|
||||
public sealed class PardonCommand : ContentIntegrationTest
|
||||
public sealed class PardonCommand
|
||||
{
|
||||
private static readonly TimeSpan MarginOfError = TimeSpan.FromMinutes(1);
|
||||
|
||||
[Test]
|
||||
public async Task PardonTest()
|
||||
{
|
||||
var (client, server) = await StartConnectedServerClientPair();
|
||||
|
||||
await Task.WhenAll(client.WaitIdleAsync(), server.WaitIdleAsync());
|
||||
await using var pairTracker = await PoolManager.GetServerClient(new (){Destructive = true});
|
||||
var server = pairTracker.Pair.Server;
|
||||
|
||||
var sPlayerManager = server.ResolveDependency<IPlayerManager>();
|
||||
var sConsole = server.ResolveDependency<IServerConsoleHost>();
|
||||
@@ -122,6 +121,7 @@ namespace Content.IntegrationTests.Tests.Commands
|
||||
// The list is still returned since that ignores pardons
|
||||
Assert.That(await sDatabase.GetServerBansAsync(null, clientId, null), Has.Count.EqualTo(1));
|
||||
});
|
||||
await pairTracker.CleanReturnAsync();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,7 +14,7 @@ namespace Content.IntegrationTests.Tests.Commands
|
||||
{
|
||||
[TestFixture]
|
||||
[TestOf(typeof(RejuvenateCommand))]
|
||||
public sealed class RejuvenateTest : ContentIntegrationTest
|
||||
public sealed class RejuvenateTest
|
||||
{
|
||||
private const string Prototypes = @"
|
||||
- type: entity
|
||||
@@ -33,8 +33,8 @@ namespace Content.IntegrationTests.Tests.Commands
|
||||
[Test]
|
||||
public async Task RejuvenateDeadTest()
|
||||
{
|
||||
var options = new ServerIntegrationOptions{ExtraPrototypes = Prototypes};
|
||||
var server = StartServer(options);
|
||||
await using var pairTracker = await PoolManager.GetServerClient(new PoolSettings{NoClient = true, ExtraPrototypes = Prototypes});
|
||||
var server = pairTracker.Pair.Server;
|
||||
|
||||
await server.WaitAssertion(() =>
|
||||
{
|
||||
@@ -78,6 +78,7 @@ namespace Content.IntegrationTests.Tests.Commands
|
||||
|
||||
Assert.That(damageable.TotalDamage, Is.EqualTo(FixedPoint2.Zero));
|
||||
});
|
||||
await pairTracker.CleanReturnAsync();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,33 +12,27 @@ namespace Content.IntegrationTests.Tests.Commands
|
||||
{
|
||||
[TestFixture]
|
||||
[TestOf(typeof(RestartRoundNowCommand))]
|
||||
public sealed class RestartRoundNowTest : ContentIntegrationTest
|
||||
public sealed class RestartRoundNowTest
|
||||
{
|
||||
[Test]
|
||||
[TestCase(true)]
|
||||
[TestCase(false)]
|
||||
public async Task RestartRoundAfterStart(bool lobbyEnabled)
|
||||
{
|
||||
var (_, server) = await StartConnectedServerClientPair(serverOptions: new ServerContentIntegrationOption
|
||||
{
|
||||
CVarOverrides =
|
||||
{
|
||||
[CCVars.GameMap.Name] = "saltern"
|
||||
}
|
||||
});
|
||||
|
||||
await server.WaitIdleAsync();
|
||||
await using var pairTracker = await PoolManager.GetServerClient(new PoolSettings(){Dirty = true});
|
||||
var server = pairTracker.Pair.Server;
|
||||
|
||||
var configManager = server.ResolveDependency<IConfigurationManager>();
|
||||
var entityManager = server.ResolveDependency<IEntityManager>();
|
||||
var gameTicker = entityManager.EntitySysManager.GetEntitySystem<GameTicker>();
|
||||
|
||||
await server.WaitRunTicks(30);
|
||||
await PoolManager.RunTicksSync(pairTracker.Pair, 5);
|
||||
|
||||
GameTick tickBeforeRestart = default;
|
||||
|
||||
server.Assert(() =>
|
||||
await server.WaitAssertion(() =>
|
||||
{
|
||||
Assert.That(configManager.GetCVar<bool>(CCVars.GameLobbyEnabled), Is.EqualTo(false));
|
||||
configManager.SetCVar(CCVars.GameLobbyEnabled, lobbyEnabled);
|
||||
|
||||
Assert.That(gameTicker.RunLevel, Is.EqualTo(GameRunLevel.InRound));
|
||||
@@ -54,17 +48,17 @@ namespace Content.IntegrationTests.Tests.Commands
|
||||
}
|
||||
});
|
||||
|
||||
await server.WaitIdleAsync();
|
||||
await server.WaitRunTicks(5);
|
||||
await PoolManager.RunTicksSync(pairTracker.Pair, 15);
|
||||
|
||||
server.Assert(() =>
|
||||
await server.WaitAssertion(() =>
|
||||
{
|
||||
var tickAfterRestart = entityManager.CurrentTick;
|
||||
|
||||
Assert.That(tickBeforeRestart < tickAfterRestart);
|
||||
});
|
||||
|
||||
await server.WaitRunTicks(60);
|
||||
await PoolManager.RunTicksSync(pairTracker.Pair, 5);
|
||||
await pairTracker.CleanReturnAsync();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user