public void Test_NullableBooleanValue()
        {
            BooleanFilterDescriptor descriptor = new BooleanFilterDescriptor();

            descriptor.MemberAccess = new NullableValueMemberAccess();

            var model = new BooleanViewModel()
            {
                NullableValue = null
            };

            Assert.IsTrue(descriptor.PassesFilter(model));

            descriptor.Value = true;
            Assert.IsFalse(descriptor.PassesFilter(model));

            model.NullableValue = new Nullable <bool>(true);
            Assert.IsTrue(descriptor.PassesFilter(model));
        }
        public void Test_ConvertValue_FromString()
        {
            BooleanFilterDescriptor descriptor = new BooleanFilterDescriptor();

            descriptor.Value        = "True";
            descriptor.MemberAccess = new ValueMemberAccess();

            var model = new BooleanViewModel()
            {
                Value = true
            };

            Assert.IsTrue(descriptor.PassesFilter(model));

            descriptor.Value = "false";
            Assert.IsFalse(descriptor.PassesFilter(model));

            model.Value = false;
            Assert.IsTrue(descriptor.PassesFilter(model));
        }
            public object GetValue(object item)
            {
                BooleanViewModel model = item as BooleanViewModel;

                return(model.NullableValue);
            }