Files
RobustToolbox/Robust.UnitTesting/Shared/Serialization/NetSerializableAttribute_Test.cs
Acruid 2183cd7ca1 Massive Namespace Cleanup (#1544)
* Removed the Interfaces folder.
* All objects inside the GameObjects subfolders are now in the GameObjects namespace.
* Added a Resharper DotSettings file to mark the GameObjects subfolders as not providing namespaces.
* Simplified Robust.client.Graphics namespace.
* Automated remove redundant using statements.
2021-02-10 23:27:19 -08:00

34 lines
983 B
C#

using System;
using NUnit.Framework;
using Robust.Shared.IoC;
using Robust.Shared.Reflection;
using Robust.Shared.Serialization;
namespace Robust.UnitTesting.Shared.Serialization
{
[TestFixture]
class NetSerializableAttribute_Test : RobustUnitTest
{
private IReflectionManager _reflection = default!;
[OneTimeSetUp]
public void TestFixtureSetup()
{
_reflection = IoCManager.Resolve<IReflectionManager>();
}
[Test]
public void AllNetSerializableObjectsHaveSerializableAttribute()
{
var types = _reflection.FindTypesWithAttribute<NetSerializableAttribute>();
foreach (var type in types)
{
Assert.IsTrue(Attribute.IsDefined(type, typeof(NetSerializableAttribute), true),
$"{type.FullName} has {nameof(NetSerializableAttribute)}, but not the required {nameof(SerializableAttribute)}.");
}
}
}
}