public void After_3_Resubmits_Should_Not_Be_Valid_To_Resend_Ack() { var target = new LoRaDevice("1231", "12312", new SingleDeviceConnectionManager(this.loRaDeviceClient.Object)); // 1st time target.SetFcntUp(12); // 1st resubmit target.SetFcntUp(12); Assert.True(target.ValidateConfirmResubmit(12)); // 2nd resubmit target.SetFcntUp(12); Assert.True(target.ValidateConfirmResubmit(12)); // 3rd resubmit target.SetFcntUp(12); Assert.True(target.ValidateConfirmResubmit(12)); // 4rd resubmit target.SetFcntUp(12); Assert.False(target.ValidateConfirmResubmit(12)); // new fcnt up target.SetFcntUp(13); Assert.False(target.ValidateConfirmResubmit(12), "Should not be valid to resubmit old fcntUp"); // resubmit new fcnt up target.SetFcntUp(13); Assert.True(target.ValidateConfirmResubmit(13)); Assert.False(target.ValidateConfirmResubmit(12), "Should not be valid to resubmit old fcntUp"); }