1
0

LogErrorTest.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. using Robust.Shared.Configuration;
  2. using Robust.Shared.Log;
  3. using Robust.UnitTesting;
  4. namespace Content.IntegrationTests.Tests;
  5. public sealed class LogErrorTest
  6. {
  7. /// <summary>
  8. /// This test ensures that error logs cause tests to fail.
  9. /// </summary>
  10. [Test]
  11. public async Task TestLogErrorCausesTestFailure()
  12. {
  13. await using var pair = await PoolManager.GetServerClient(new PoolSettings { Connected = true });
  14. var server = pair.Server;
  15. var client = pair.Client;
  16. var cfg = server.ResolveDependency<IConfigurationManager>();
  17. var logmill = server.ResolveDependency<ILogManager>().RootSawmill;
  18. // Default cvar is properly configured
  19. Assert.That(cfg.GetCVar(RTCVars.FailureLogLevel), Is.EqualTo(LogLevel.Error));
  20. // Warnings don't cause tests to fail.
  21. await server.WaitPost(() => logmill.Warning("test"));
  22. // But errors do
  23. await server.WaitPost(() => Assert.Throws<AssertionException>(() => logmill.Error("test")));
  24. await client.WaitPost(() => Assert.Throws<AssertionException>(() => logmill.Error("test")));
  25. await pair.CleanReturnAsync();
  26. }
  27. }