1
0

ReagentDataTest.cs 1.0 KB

123456789101112131415161718192021222324252627282930
  1. using Content.IntegrationTests.Tests.Interaction;
  2. using Content.Shared.Chemistry.Reagent;
  3. using Robust.Shared.Reflection;
  4. using Robust.Shared.Serialization;
  5. using Robust.Shared.Utility;
  6. namespace Content.IntegrationTests.Tests.Chemistry;
  7. [TestFixture]
  8. [TestOf(typeof(ReagentData))]
  9. public sealed class ReagentDataTest : InteractionTest
  10. {
  11. [Test]
  12. public async Task ReagentDataIsSerializable()
  13. {
  14. await using var pair = await PoolManager.GetServerClient();
  15. var reflection = pair.Server.ResolveDependency<IReflectionManager>();
  16. Assert.Multiple(() =>
  17. {
  18. foreach (var instance in reflection.GetAllChildren(typeof(ReagentData)))
  19. {
  20. Assert.That(instance.HasCustomAttribute<NetSerializableAttribute>(), $"{instance} must have the NetSerializable attribute.");
  21. Assert.That(instance.HasCustomAttribute<SerializableAttribute>(), $"{instance} must have the serializable attribute.");
  22. }
  23. });
  24. await pair.CleanReturnAsync();
  25. }
  26. }