Beispiel #1
0
        public void Ctor()
        {
            RegexMatchTimeoutException e;

            e = new RegexMatchTimeoutException();
            Assert.Empty(e.Input);
            Assert.Empty(e.Pattern);
            Assert.Equal(TimeSpan.FromTicks(-1), e.MatchTimeout);

            const string Message = "some message";

            e = new RegexMatchTimeoutException(Message);
            Assert.Equal(Message, e.Message);
            Assert.Empty(e.Input);
            Assert.Empty(e.Pattern);
            Assert.Equal(TimeSpan.FromTicks(-1), e.MatchTimeout);

            var inner = new FormatException();

            e = new RegexMatchTimeoutException(Message, inner);
            Assert.Equal(Message, e.Message);
            Assert.Same(inner, e.InnerException);
            Assert.Empty(e.Input);
            Assert.Empty(e.Pattern);
            Assert.Equal(TimeSpan.FromTicks(-1), e.MatchTimeout);

            const string Input   = "abcdef";
            const string Pattern = "(?:abcdef)*";
            TimeSpan     timeout = TimeSpan.FromSeconds(42);

            e = new RegexMatchTimeoutException(Input, Pattern, timeout);
            Assert.Equal(Input, e.Input);
            Assert.Equal(Pattern, e.Pattern);
            Assert.Equal(timeout, e.MatchTimeout);
        }
Beispiel #2
0
        public void ConstructorWithMessageWorks()
        {
            var ex = new RegexMatchTimeoutException("The message");

            Assert.True((object)ex is RegexMatchTimeoutException, "is RegexMatchTimeoutException");
            Assert.AreEqual(null, ex.InnerException, "InnerException");
            Assert.AreEqual("The message", ex.Message);
        }
Beispiel #3
0
        public void DefaultConstructorWorks()
        {
            var ex = new RegexMatchTimeoutException();

            Assert.True((object)ex is RegexMatchTimeoutException, "is RegexMatchTimeoutException");
            Assert.AreEqual(null, ex.InnerException, "InnerException");
            Assert.AreEqual(DefaultMessage1, ex.Message);
        }
Beispiel #4
0
        public void ConstructorWithMessageAndInnerExceptionWorks()
        {
            var inner = new Exception("a");
            var ex    = new RegexMatchTimeoutException("The message", inner);

            Assert.True((object)ex is RegexMatchTimeoutException, "is RegexMatchTimeoutException");
            Assert.True(ReferenceEquals(ex.InnerException, inner), "InnerException");
            Assert.AreEqual("The message", ex.Message);
        }
Beispiel #5
0
        public void TypePropertiesAreCorrect()
        {
            Assert.AreEqual("System.RegexMatchTimeoutException", typeof(RegexMatchTimeoutException).FullName, "Name");
            object d = new RegexMatchTimeoutException();

            Assert.True(d is RegexMatchTimeoutException, "is RegexMatchTimeoutException");
            Assert.True(d is TimeoutException, "is TimeoutException");
            Assert.True(d is SystemException, "is SystemException");
            Assert.True(d is Exception, "is Exception");
        }
Beispiel #6
0
        public void ConstructorWithExceptionDetailsWorks()
        {
            var ex = new RegexMatchTimeoutException("testInput", "testPattern", TimeSpan.FromSeconds(77));

            Assert.True((object)ex is RegexMatchTimeoutException, "is RegexMatchTimeoutException");
            Assert.AreEqual(null, ex.InnerException, "InnerException");
            Assert.AreEqual("testInput", ex.Input, "Input");
            Assert.AreEqual("testPattern", ex.Pattern, "Pattern");
            Assert.AreEqual(TimeSpan.FromSeconds(77), ex.MatchTimeout, "MatchTimeout");
            Assert.AreEqual(DefaultMessage2, ex.Message);
        }
Beispiel #7
0
        public void SerializationRoundtrip()
        {
            const string Input   = "abcdef";
            const string Pattern = "(?:abcdef)*";
            TimeSpan     timeout = TimeSpan.FromSeconds(42);
            var          e       = new RegexMatchTimeoutException(Input, Pattern, timeout);

            var bf = new BinaryFormatter();
            var s  = new MemoryStream();

            bf.Serialize(s, e);
            s.Position = 0;
            e          = (RegexMatchTimeoutException)bf.Deserialize(s);

            Assert.Equal(Input, e.Input);
            Assert.Equal(Pattern, e.Pattern);
            Assert.Equal(timeout, e.MatchTimeout);
        }
Beispiel #8
0
 public void RegexMatchTimeoutExceptionSerialization(RegexMatchTimeoutException ex)
 {
     BinaryFormatterHelpers.AssertRoundtrips(ex, e => e.Input, e => e.Pattern, e => e.MatchTimeout);
 }