mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-02-15 03:30:53 +01:00
80 lines
2.4 KiB
C#
80 lines
2.4 KiB
C#
using System.Threading.Tasks;
|
|
using NUnit.Framework;
|
|
using Robust.Shared;
|
|
using Robust.Shared.GameObjects;
|
|
using Robust.Shared.Map;
|
|
using Robust.Shared.Maths;
|
|
|
|
namespace Robust.UnitTesting.Shared.Map
|
|
{
|
|
[TestFixture]
|
|
public sealed class GridContraction_Test : RobustIntegrationTest
|
|
{
|
|
[Test]
|
|
public async Task TestGridDeletes()
|
|
{
|
|
var server = StartServer();
|
|
await server.WaitIdleAsync();
|
|
|
|
var entManager = server.ResolveDependency<IEntityManager>();
|
|
var mapManager = server.ResolveDependency<IMapManager>();
|
|
|
|
await server.WaitAssertion(() =>
|
|
{
|
|
var mapId = mapManager.CreateMap();
|
|
var grid = mapManager.CreateGrid(mapId);
|
|
var gridEntity = grid.Owner;
|
|
|
|
for (var i = 0; i < 10; i++)
|
|
{
|
|
grid.SetTile(new Vector2i(i, 0), new Tile(1));
|
|
}
|
|
|
|
for (var i = 10; i >= 0; i--)
|
|
{
|
|
grid.SetTile(new Vector2i(i, 0), Tile.Empty);
|
|
}
|
|
|
|
Assert.That(entManager.Deleted(gridEntity));
|
|
});
|
|
}
|
|
|
|
[Test]
|
|
public async Task TestGridNoDeletes()
|
|
{
|
|
var options = new ServerIntegrationOptions()
|
|
{
|
|
CVarOverrides =
|
|
{
|
|
{
|
|
CVars.GameDeleteEmptyGrids.Name, "false"
|
|
}
|
|
}
|
|
};
|
|
var server = StartServer(options);
|
|
await server.WaitIdleAsync();
|
|
|
|
var entManager = server.ResolveDependency<IEntityManager>();
|
|
var mapManager = server.ResolveDependency<IMapManager>();
|
|
|
|
await server.WaitAssertion(() =>
|
|
{
|
|
var mapId = mapManager.CreateMap();
|
|
var grid = mapManager.CreateGrid(mapId);
|
|
|
|
for (var i = 0; i < 10; i++)
|
|
{
|
|
grid.SetTile(new Vector2i(i, 0), new Tile(1));
|
|
}
|
|
|
|
for (var i = 10; i >= 0; i--)
|
|
{
|
|
grid.SetTile(new Vector2i(i, 0), Tile.Empty);
|
|
}
|
|
|
|
Assert.That(!((!entManager.EntityExists(grid.Owner) ? EntityLifeStage.Deleted : entManager.GetComponent<MetaDataComponent>(grid.Owner).EntityLifeStage) >= EntityLifeStage.Deleted));
|
|
});
|
|
}
|
|
}
|
|
}
|