コード例 #1
0
        public void IsNullOrEmpty()
        {
            var query = from w in EktronQueryFactory.Queryable<Widget>()
                        where string.IsNullOrEmpty(w.Name)
                        select w;

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = new StringPropertyExpression("Name") == string.Empty;

            EkAssert.Equal(expectedTranslation, actualTranslation);
        }
コード例 #2
0
        public void Contains()
        {
            string expectedName = "bob";
            var query = from w in EktronQueryFactory.Queryable<Widget>()
                        where w.Name.Contains(expectedName)
                        select w;

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = new StringPropertyExpression("Name").Contains("bob", WordForms.Inflections);

            EkAssert.Equal(expectedTranslation, actualTranslation);
        }
コード例 #3
0
        public void SimpleCast_StringEktronExpressionTypeCastToString_IgnoresCast()
        {
            string expectedValue = "1";
            var query = from w in EktronQueryFactory.Queryable<CastTestWidget>(_idProvider)
                        where (string)w.StringTypeObjectId == expectedValue
                        select w;

            var propExpr = new StringPropertyExpression("StringTypeObjectId");

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = propExpr == expectedValue;

            Assert.True(actualTranslation is BinaryExpression);
            Assert.True(
                (actualTranslation as BinaryExpression).Left is StringPropertyExpression,
                "Left is not a StringPropertyExpression");
            EkAssert.Equal(expectedTranslation, actualTranslation);
        }
 public override void Visit(StringPropertyExpression expression)
 {
     _expressionString.AppendFormat(" STRIPE'{0}' ", expression.Name);
 }
コード例 #5
0
        public void SelectFromWhere_4Clauses()
        {
            string expectedName = "anything";
            string expectedName2 = "nothing";
            long expectedIdHigh = 10L;
            long expectedIdLow = 1L;
            var query = from w in EktronQueryFactory.Queryable<Widget>(_idProvider)
                        where w.Name == expectedName
                              && w.Id < expectedIdHigh
                              && w.Id > expectedIdLow
                              && w.Name == expectedName2
                        select w;

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = new StringPropertyExpression("Name")
                                      == expectedName
                                      & SearchContentProperty.Id < expectedIdHigh
                                      & SearchContentProperty.Id > expectedIdLow
                                      & new StringPropertyExpression("Name")
                                      == expectedName2;
            EkAssert.Equal(expectedTranslation, actualTranslation);
        }
コード例 #6
0
        public void SelectFromWhere_UndecoratedProperty()
        {
            string expectedValue = "anything";
            var query = from w in EktronQueryFactory.Queryable<Widget>(_idProvider)
                        where w.Name == expectedValue
                        select w;

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = new StringPropertyExpression("Name")
                                      == expectedValue;
            EkAssert.Equal(expectedTranslation, actualTranslation);
        }
コード例 #7
0
        public void SelectFromWhere_StringContains()
        {
            string expectedValue = "anything";
            var query = from w in EktronQueryFactory.Queryable<Widget>(_idProvider)
                        where w.Name.Contains(expectedValue)
                        select w;

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = new StringPropertyExpression("Name")
                .Contains(
                    expectedValue, WordForms.Inflections);
            EkAssert.Equal(expectedTranslation, actualTranslation);
        }
コード例 #8
0
        public void SelectFromWhere_NullComparisonConstantTurnsIntoIsNull()
        {
            string expectedValue = null;

            var query = from w in EktronQueryFactory.Queryable<Widget>(_idProvider)
                        where w.Name == expectedValue
                        select w;

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = new StringPropertyExpression("Name").IsNull();
            EkAssert.Equal(expectedTranslation, actualTranslation);
        }
コード例 #9
0
        public void SelectFromWhere_LogicalOr()
        {
            string expectedName = "anything";
            long expectedId = 1L;
            var query = from w in EktronQueryFactory.Queryable<Widget>(_idProvider)
                        where w.Name == expectedName || w.Id == expectedId
                        select w;

            var actualTranslation = TestHelper.GetTranslation(query);
            var expectedTranslation = new StringPropertyExpression("Name")
                                      == expectedName
                                      | SearchContentProperty.Id == expectedId;
            EkAssert.Equal(expectedTranslation, actualTranslation);
        }