1
0

EuiManagerTest.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. using System.Linq;
  2. using Content.Server.Administration.UI;
  3. using Content.Server.EUI;
  4. using Robust.Server.Player;
  5. namespace Content.IntegrationTests.Tests.Cleanup;
  6. public sealed class EuiManagerTest
  7. {
  8. [Test]
  9. public async Task EuiManagerRecycleWithOpenWindowTest()
  10. {
  11. // Even though we are using the server EUI here, we actually want to see if the client EUIManager crashes
  12. for (var i = 0; i < 2; i++)
  13. {
  14. await using var pair = await PoolManager.GetServerClient(new PoolSettings
  15. {
  16. Connected = true,
  17. Dirty = true
  18. });
  19. var server = pair.Server;
  20. var sPlayerManager = server.ResolveDependency<IPlayerManager>();
  21. var eui = server.ResolveDependency<EuiManager>();
  22. await server.WaitAssertion(() =>
  23. {
  24. var clientSession = sPlayerManager.Sessions.Single();
  25. var ui = new AdminAnnounceEui();
  26. eui.OpenEui(ui, clientSession);
  27. });
  28. await pair.CleanReturnAsync();
  29. }
  30. }
  31. }