Beispiel #1
0
 /// <summary>
 /// Creates an expression translator that will be able to decode the results
 /// returned from the triple store selected for the query.
 /// </summary>
 /// <returns>An <see cref="IQueryFormatTranslator"/> that will be able to decode
 /// the results from the chosen triple store</returns>
 public IQueryFormatTranslator CreateExpressionTranslator()
 {
     switch (QueryType)
     {
     default:
         var translator = new LinqToSparqlExpTranslator <T>(new StringBuilder());
         translator.TypeTranslator = TypeTranslator;
         return(translator);
     }
 }
 public void ConstantTest_double()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     ConstantExpression ce = Expression.Constant(3.14); // string
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Constant(ce);
     string actualResult = sb.ToString();
     string expectedResult = "3.14^^xsdt:double";
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void ConstantTest_DateTime()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     ConstantExpression ce = Expression.Constant(new DateTime(2002, 03, 04, 05, 06, 07));
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Constant(ce);
     string actualResult = sb.ToString();
     string expectedResult = "\"2002-03-04T05:06:07+11:00\"^^xsdt:dateTime";
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void QuoteTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = Expression.Quote(Expression.Constant(5));
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Quote(e);
     string actualResult = sb.ToString();
     string expectedResult = "\"5\""; //  assumption - it should retain its XSDT type?
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void ParameterTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = Expression.Parameter(GetType(), "mi");
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Parameter(e);
     string actualResult = sb.ToString();
     string expectedResult = "mi"; //  not sure that any output should be expected
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void OrTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e =
         Expression.Or(EH.Member(GetProperty("BooleanTestProperty")),
                       Expression.Not(EH.Member(GetProperty("BooleanTestProperty"))));
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Or(e);
     string actualResult = sb.ToString();
     string expectedResult = "(?BooleanTestProperty)||(!(?BooleanTestProperty))";
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void NewTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = Expression.New(GetType());
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.New(e);
     string actualResult = sb.ToString();
     string expectedResult = "(?BooleanTestProperty)";
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void NewArrayInitTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = Expression.NewArrayInit(GetType(), new Expression[] { Expression.Constant(10) }); //  array of ten
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.NewArrayInit(e);
     string actualResult = sb.ToString();
     string expectedResult = "(?BooleanTestProperty)";
     Assert.AreEqual(expectedResult, actualResult);
 }
        public void TypeAsTest()
        {
            LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
            target.TypeTranslator = new XsdtTypeConverter();

            Expression e = Expression.TypeAs(Expression.Constant("3.14"), typeof (double));
            target.StringBuilder = new StringBuilder();
            target.TypeAs(e);
        }
 public void MethodCallTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression[] ea = new Expression[] { Expression.Constant(15) };
     Expression e = Expression.Call(GetType().GetMethod("IntTest"), ea);
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Call(e);
     string actualResult = sb.ToString();
     string expectedResult = "(mi.IntTest(15)";
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void MemberAccessTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = EH.Member(GetType().GetProperty("Ia"));
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.MemberAccess(e);
     string actualResult = sb.ToString();
     string expectedResult = "?Ia";
     Assert.AreEqual(expectedResult, actualResult);
 }
        public void ConvertCheckedTest()
        {
            LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
            target.TypeTranslator = new XsdtTypeConverter();

            Expression e = Expression.ConvertChecked(Expression.Constant(10), typeof (double));
            target.StringBuilder = new StringBuilder();
            target.ConvertChecked(e);
        }
        public void ConditionalTest()
        {
            LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
            target.TypeTranslator = new XsdtTypeConverter();

            Expression e = Expression.Condition(
                Expression.Equal(EH.Member(GetType().GetProperty("BooleanTestProperty")),
                              Expression.Constant(true)),
                Expression.Constant(10), Expression.Constant(15));
            target.StringBuilder = new StringBuilder();
            target.Conditional(e);
        }
 public void CoalesceTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     string testVal = "hello";
     string defaultVal = "world";
     Expression e = Expression.Coalesce(Expression.Constant(testVal), Expression.Constant(defaultVal));
     target.StringBuilder = new StringBuilder();
     target.Coalesce(e);
 }
        public void AndTest()
        {
            LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
            target.TypeTranslator = new XsdtTypeConverter();

            Expression e = Expression.And(
                EH.Member(GetType().GetProperty("BooleanTestProperty")),
                Expression.Constant(true));
            StringBuilder sb = new StringBuilder();
            target.StringBuilder = sb;
            target.And(e);
            string actualResult = sb.ToString();
            string expectedResult = "(?BooleanTestProperty)&&(True^^xsdt:boolean)";
            Assert.AreEqual(expectedResult, actualResult);
        }
 public void RShiftTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = Expression.RightShift(Expression.Constant(1), Expression.Constant(5));
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.RightShift(e);
     string actualResult = sb.ToString();
     string expectedResult = ""; //  shouldn'mi make it to here
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void SubtractTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = Expression.Subtract(EH.Member(GetType().GetProperty("IntTestProperty")), Expression.Constant(1));
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Subtract(e);
     string actualResult = sb.ToString();
     string expectedResult = "(?IntTestProperty)-(1)";
     Assert.AreEqual(expectedResult, actualResult);
 }
 public void MultiplyTest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = EH.CreateBinaryExpression(ExpressionType.Multiply, 10, 15);
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.Multiply(e);
     string actualResult = sb.ToString();
     string expectedResult = "(10)*(15)";
     Assert.AreEqual(expectedResult, actualResult);
 }
        public void XorTest()
        {
            LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
            target.TypeTranslator = new XsdtTypeConverter();

            Expression e = Expression.ExclusiveOr(Expression.Constant(10), Expression.Constant(8));
            target.StringBuilder = new StringBuilder();
            target.ExclusiveOr(e);
        }
 public void NETest()
 {
     LinqToSparqlExpTranslator<Track> target = new LinqToSparqlExpTranslator<Track>();
     target.TypeTranslator = new XsdtTypeConverter();
     Expression e = Expression.NotEqual(Expression.Constant(10), Expression.Constant(15));
     StringBuilder sb = new StringBuilder();
     target.StringBuilder = sb;
     target.NotEqual(e);
     string actualResult = sb.ToString();
     string expectedResult = "(10)!=(15)";
     Assert.AreEqual(expectedResult, actualResult);
 }