public void test_WHEN_neither_field_refs_nor_value_specified_THEN_expression_is_not_valid()
        {
            var xml = string.Format(
                "<DateRangesOverlap>" +
                "</DateRangesOverlap>");

            var analyzer = new ReDateRangesOverlapAnalyzer(XmlHelper.Get(xml), null);

            Assert.IsFalse(analyzer.IsValid());
        }
        public void test_WHEN_field_ref_not_specified_and_value_specified_THEN_expression_is_not_valid()
        {
            var xml = string.Format(
                "<DateRangesOverlap>" +
                "    <Value Type=\"DateTime\"><Now/></Value>" +
                "</DateRangesOverlap>");

            var analyzer = new ReDateRangesOverlapAnalyzer(XmlHelper.Get(xml), null);

            Assert.IsFalse(analyzer.IsValid());
        }
        public void test_WHEN_field_refs_specified_and_value_not_specified_THEN_expression_is_not_valid()
        {
            var xml = string.Format(
                "<DateRangesOverlap>" +
                "    <FieldRef Name=\"StartField\" />" +
                "    <FieldRef Name=\"StopField\" />" +
                "    <FieldRef Name=\"RecurrenceField\" />" +
                "</DateRangesOverlap>");

            var analyzer = new ReDateRangesOverlapAnalyzer(XmlHelper.Get(xml), null);

            Assert.IsFalse(analyzer.IsValid());
        }
        public void test_WHEN_field_refs_and_incorrect_text_value_specified_THEN_expression_is_not_valid()
        {
            var xml = string.Format(
                "<DateRangesOverlap>" +
                "    <FieldRef Name=\"StartField\" />" +
                "    <FieldRef Name=\"StopField\" />" +
                "    <FieldRef Name=\"RecurrenceField\" />" +
                "    <Value Type=\"DateTime\">test</Value>" +
                "</DateRangesOverlap>");

            var analyzer = new ReDateRangesOverlapAnalyzer(XmlHelper.Get(xml), new ReOperandBuilderFromCaml());

            Assert.IsFalse(analyzer.IsValid());
        }
        public void test_WHEN_xml_is_null_THEN_expression_is_not_valid()
        {
            var analyzer = new ReDateRangesOverlapAnalyzer(null, null);

            Assert.IsFalse(analyzer.IsValid());
        }