using NUnit.Framework; namespace Mirror.Tests.MessageTests { struct NoArgMethodMessage : NetworkMessage { public int someValue; // Weaver should ignore these methods because they have no args public void Serialize() { /* method with no arg */ } public void Deserialize() { /* method with no arg */ } } struct TwoArgMethodMessage : NetworkMessage { public int someValue; // Weaver should ignore these methods because they have two args public void Serialize(NetworkWriter writer, int AnotherValue) {} public void Deserialize(NetworkReader reader, int AnotherValue) {} } public class OverloadMethodTest { [Test] public void MethodsWithNoArgs() { const int value = 10; NoArgMethodMessage intMessage = new NoArgMethodMessage { someValue = value }; byte[] data = MessagePackingTest.PackToByteArray(intMessage); NoArgMethodMessage unpacked = MessagePackingTest.UnpackFromByteArray(data); Assert.That(unpacked.someValue, Is.EqualTo(value)); } [Test] public void MethodsWithTwoArgs() { const int value = 10; TwoArgMethodMessage intMessage = new TwoArgMethodMessage { someValue = value }; byte[] data = MessagePackingTest.PackToByteArray(intMessage); TwoArgMethodMessage unpacked = MessagePackingTest.UnpackFromByteArray(data); Assert.That(unpacked.someValue, Is.EqualTo(value)); } } }