public void ReturnTrueIfStringStartsWithValue()
        {
            var e = new SystemEvent { Message = "Start of Message" };
            var extendedProperties = new FakeExtendedProperties { { "property", "Message" }, { "value", "Start" } };
            var filter = new StartsWithFilter(extendedProperties, Enumerable.Empty<ICreateFilterExpressions>());

            Assert.True(Filter.Compile(filter).Invoke(e));
        }
        public void CanHaveNullProperty()
        {
            var e = new SystemEvent { Message = null };
            var extendedProperties = new FakeExtendedProperties { { "property", "Message" }, { "value", "Start" } };
            var filter = new StartsWithFilter(extendedProperties, Enumerable.Empty<ICreateFilterExpressions>());

            Assert.False(Filter.Compile(filter).Invoke(e));
        }
        public void AlwaysCaseInsensitive()
        {
            var e = new SystemEvent { Message = "START of Message" };
            var extendedProperties = new FakeExtendedProperties { { "property", "Message" }, { "value", "Start" } };
            var filter = new StartsWithFilter(extendedProperties, Enumerable.Empty<ICreateFilterExpressions>());

            Assert.True(Filter.Compile(filter).Invoke(e));
        }
        public void NotCompositeExpression()
        {
            var filter = new StartsWithFilter(new FakeExtendedProperties(), Enumerable.Empty<ICreateFilterExpressions>());

            Assert.False(filter.CompositeExpression);
        }