public override void Dispatch(INetworkMessageReceiver receiver, IMessageParameters parameters) { Throw<ArgumentNullException>.If.IsNull(receiver) ?.Now(nameof(receiver), $"{nameof(INetworkMessageReceiver)} parameter is null in {this.GetType().Name}"); Throw<ArgumentNullException>.If.IsNull(parameters) ?.Now(nameof(parameters), $"{nameof(IMessageParameters)} parameter is null in {this.GetType().Name}"); receiver.OnNetworkMessageReceive(this, parameters); }
public static void Test_Dispatch_Null_Parameters() { //arrange Mock<PacketPayload> packet = new Mock<PacketPayload>(MockBehavior.Strict); RequestMessage message = new RequestMessage(packet.Object); Mock<INetworkMessageReceiver> receiever = new Mock<INetworkMessageReceiver>(MockBehavior.Strict); //Sets up the method that should be called so it doesn't throw. //Also rigs it up so that the two mocks above should be the values provided. receiever.Setup((actual) => actual.OnNetworkMessageReceive(message, null)); //assert //Exception should be thrown for null. Assert.Throws<ArgumentNullException>(() => message.Dispatch(receiever.Object, null)); }