public void WhenParamNameAndMessageSpecified_ThenSetMessageAndParamName()
        {
            var sut = new ArgumentNullOrWhiteSpaceException(ParamName, Message);

            Assert.That(sut.Message, Is.EqualTo($"{Message} (Parameter 'myArg')"));
            Assert.That(sut.ParamName, Is.EqualTo(ParamName));
        }
        public void WhenParamNameSpecified_ThenSetMessageAndParamName()
        {
            var sut = new ArgumentNullOrWhiteSpaceException(ParamName);

            Assert.That(sut.Message, Is.EqualTo("Value cannot be null or whitespace. (Parameter 'myArg')"));
            Assert.That(sut.ParamName, Is.EqualTo(ParamName));
        }
        public void WhenSerialized_ThenDeserializeCorrectly()
        {
            var sut = new ArgumentNullOrWhiteSpaceException(ParamName, Message);

            var result = Serializer.SerializeAndDeserialize(sut);

            Assert.That(result.ParamName, Is.EqualTo(sut.ParamName));
            Assert.That(result.ToString(), Is.EqualTo(sut.ToString()));
        }
        public void WhenMessageAndInnerExSpecified_ThenSetMessageAndInnerEx()
        {
            var innerException = new Exception();

            var sut = new ArgumentNullOrWhiteSpaceException(Message, innerException);

            Assert.That(sut.Message, Is.EqualTo(Message));
            Assert.That(sut.InnerException, Is.SameAs(innerException));
        }
        public void WhenNoArgs_ThenSetMessageToDefault()
        {
            var sut = new ArgumentNullOrWhiteSpaceException();

            Assert.That(sut.Message, Is.EqualTo("Value cannot be null or whitespace."));
        }