[mapguide-commits] r8512 - in trunk/Tools/Maestro: Maestro/packages MaestroAPITests OSGeo.MapGuide.MaestroAPI

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Tue Jan 20 06:26:46 PST 2015


Author: jng
Date: 2015-01-20 06:26:46 -0800 (Tue, 20 Jan 2015)
New Revision: 8512

Removed:
   trunk/Tools/Maestro/MaestroAPITests/ExpressionTests.cs
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/Expression/
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/packages.config
Modified:
   trunk/Tools/Maestro/Maestro/packages/repositories.config
   trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj
   trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj
Log:
#2528: Remove FLEE-based expression engine. Doing feature queries with computed properties achieves the same effect, making these classes somewhat redundant.

Modified: trunk/Tools/Maestro/Maestro/packages/repositories.config
===================================================================
--- trunk/Tools/Maestro/Maestro/packages/repositories.config	2015-01-20 13:46:10 UTC (rev 8511)
+++ trunk/Tools/Maestro/Maestro/packages/repositories.config	2015-01-20 14:26:46 UTC (rev 8512)
@@ -10,10 +10,9 @@
   <repository path="..\..\MaestroAPITestRunner\packages.config" />
   <repository path="..\..\MaestroAPITests\packages.config" />
   <repository path="..\..\MpuCalc\packages.config" />
-  <repository path="..\..\OSGeo.MapGuide.MaestroAPI.Expressions\packages.config" />
+  <repository path="..\..\OSGeo.FDO.Expressions\packages.config" />
   <repository path="..\..\OSGeo.MapGuide.MaestroAPI.Local\packages.config" />
   <repository path="..\..\OSGeo.MapGuide.MaestroAPI.Tests\packages.config" />
-  <repository path="..\..\OSGeo.MapGuide.MaestroAPI\packages.config" />
   <repository path="..\..\OSGeo.MapGuide.ObjectModel.Tests\packages.config" />
   <repository path="..\packages.config" />
 </repositories>
\ No newline at end of file

Deleted: trunk/Tools/Maestro/MaestroAPITests/ExpressionTests.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/ExpressionTests.cs	2015-01-20 13:46:10 UTC (rev 8511)
+++ trunk/Tools/Maestro/MaestroAPITests/ExpressionTests.cs	2015-01-20 14:26:46 UTC (rev 8512)
@@ -1,1050 +0,0 @@
-#region Disclaimer / License
-
-// Copyright (C) 2010, Jackie Ng
-// http://trac.osgeo.org/mapguide/wiki/maestro, jumpinjackie at gmail.com
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License, or (at your option) any later version.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
-//
-
-#endregion Disclaimer / License
-
-using NUnit.Framework;
-using OSGeo.MapGuide.MaestroAPI.Exceptions;
-using OSGeo.MapGuide.MaestroAPI.Expression;
-using OSGeo.MapGuide.MaestroAPI.Http;
-using System;
-using System.Diagnostics;
-using System.IO;
-using System.Text;
-using System.Threading;
-
-namespace MaestroAPITests
-{
-    // Test data schema (for reference in these unit tests)
-    //
-    // ID (int32) | Name(string) | URL(string)
-    //
-    // 1 | Foobar | http://foobar.com
-    // 2 | snafu  | (null)
-    // 2 | (null) | (null)
-
-    [TestFixture]
-    public class ExpressionTests
-    {
-        [TestFixtureSetUp]
-        public void Setup()
-        {
-            if (TestControl.IgnoreExpressionTests)
-                Assert.Ignore("Skipping ExpressionTests because TestControl.IgnoreExpressionTests = true");
-        }
-
-        [Test]
-        public void TestMismatch()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.Catch<ExpressionException>(() => exprReader.Evaluate<bool>("CurrentDate()"));
-            Assert.Catch<ExpressionException>(() => exprReader.Evaluate<bool>("'Foobar'"));
-            Assert.Catch<ExpressionException>(() => exprReader.Evaluate<bool>("Power(2, 4)"));
-            Assert.Catch<ExpressionException>(() => exprReader.Evaluate<string>("Foobar"));
-
-            var dt = exprReader.Evaluate<DateTime>("CurrentDate()");
-            var str = exprReader.Evaluate<string>("'Foobar'");
-            var num = exprReader.Evaluate<int>("Power(2, 4)");
-            var num2 = exprReader.Evaluate<float>("Power(2, 4)");
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestCurrentDateAndAddMonths()
-        {
-            //TODO: Know how to calculate diffs between 2 DateTimes in months?
-
-            var dtNow = DateTime.Now;
-
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            Thread.Sleep(50);
-
-            var dt1 = exprReader.Evaluate("CurrentDate()");
-            Assert.NotNull(dt1);
-            Trace.WriteLine("dt1: " + dt1.ToString());
-            Assert.AreEqual(typeof(DateTime), dt1.GetType());
-            Assert.IsTrue((DateTime)dt1 > dtNow);
-
-            var fut1 = exprReader.Evaluate("AddMonths(CurrentDate(), 3)");
-            Assert.NotNull(fut1);
-            Trace.WriteLine("fut1: " + fut1.ToString());
-
-            var past1 = exprReader.Evaluate("AddMonths(CurrentDate(), -3)");
-            Assert.NotNull(past1);
-            Trace.WriteLine("past1: " + past1.ToString());
-
-            Thread.Sleep(50);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var dt2 = exprReader.Evaluate("CurrentDate()");
-            Assert.NotNull(dt2);
-            Trace.WriteLine("dt2: " + dt2.ToString());
-            Assert.AreEqual(typeof(DateTime), dt2.GetType());
-            Assert.IsTrue((DateTime)dt2 > (DateTime)dt1);
-
-            var fut2 = exprReader.Evaluate("AddMonths(CurrentDate(), 3)");
-            Assert.NotNull(fut2);
-            Trace.WriteLine("fut2: " + fut2.ToString());
-
-            var past2 = exprReader.Evaluate("AddMonths(CurrentDate(), -3)");
-            Assert.NotNull(past2);
-            Trace.WriteLine("past2: " + past2.ToString());
-
-            Thread.Sleep(50);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var dt3 = exprReader.Evaluate("CurrentDate()");
-            Assert.NotNull(dt3);
-            Trace.WriteLine("dt2: " + dt3.ToString());
-            Assert.AreEqual(typeof(DateTime), dt3.GetType());
-            Assert.IsTrue((DateTime)dt3 > (DateTime)dt2);
-
-            var fut3 = exprReader.Evaluate("AddMonths(CurrentDate(), 3)");
-            Assert.NotNull(fut3);
-            Trace.WriteLine("fut3: " + fut3.ToString());
-
-            var past3 = exprReader.Evaluate("AddMonths(CurrentDate(), -3)");
-            Assert.NotNull(past3);
-            Trace.WriteLine("past3: " + past3.ToString());
-
-            Thread.Sleep(50);
-
-            Assert.IsFalse(exprReader.ReadNext()); //end of stream
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestNullValue()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            Assert.IsTrue(!exprReader.IsNull("URL"));
-
-            var url = exprReader["URL"];
-            var value = exprReader.Evaluate("NullValue(URL, 'http://www.snafu.com')");
-            Assert.NotNull(url);
-            Assert.NotNull(value);
-            Assert.AreEqual(url.ToString(), value.ToString());
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var value2 = exprReader.Evaluate("NullValue(URL, 'http://www.foo.com')");
-            Assert.NotNull(value2);
-            Assert.AreEqual("http://www.foo.com", value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var value3 = exprReader.Evaluate("NullValue(URL, 'http://www.bar.com')");
-            Assert.NotNull(value3);
-            Assert.AreEqual("http://www.bar.com", value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathAbs()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = (int)exprReader["ID"];
-            var value = Convert.ToInt32(exprReader.Evaluate("Abs(-ID)"));
-
-            Assert.AreEqual(orig, value);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = (int)exprReader["ID"];
-            var value2 = Convert.ToInt32(exprReader.Evaluate("Abs(-ID)"));
-
-            Assert.AreEqual(orig2, value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig3 = (int)exprReader["ID"];
-            var value3 = Convert.ToInt32(exprReader.Evaluate("Abs(-ID)"));
-
-            Assert.AreEqual(orig3, value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathAcos()
-        {
-            //The numbers in this sample are way too large for Acos() so trim them down to size
-
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = (int)exprReader["ID"];
-            var value = Convert.ToDouble(exprReader.Evaluate("Acos(ID * 0.1)"));
-
-            Assert.AreEqual(Math.Acos(orig * 0.1), value);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = (int)exprReader["ID"];
-            var value2 = Convert.ToDouble(exprReader.Evaluate("Acos(ID * 0.1)"));
-
-            Assert.AreEqual(Math.Acos(orig2 * 0.1), value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig3 = (int)exprReader["ID"];
-            var value3 = Convert.ToDouble(exprReader.Evaluate("Acos(ID * 0.1)"));
-
-            Assert.AreEqual(Math.Acos(orig3 * 0.1), value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathAsin()
-        {
-            //The numbers in this sample are way too large for Asin() so trim them down to size
-
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = (int)exprReader["ID"];
-            var value = Convert.ToDouble(exprReader.Evaluate("Asin(ID * 0.1)"));
-
-            Assert.AreEqual(Math.Asin(orig * 0.1), value);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = (int)exprReader["ID"];
-            var value2 = Convert.ToDouble(exprReader.Evaluate("Asin(ID * 0.1)"));
-
-            Assert.AreEqual(Math.Asin(orig2 * 0.1), value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig3 = (int)exprReader["ID"];
-            var value3 = Convert.ToDouble(exprReader.Evaluate("Asin(ID * 0.1)"));
-
-            Assert.AreEqual(Math.Asin(orig3 * 0.1), value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathAtan2()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathCos()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = (int)exprReader["ID"];
-            var value = Convert.ToDouble(exprReader.Evaluate("Cos(ID)"));
-
-            Assert.AreEqual(Math.Cos(orig), value);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = (int)exprReader["ID"];
-            var value2 = Convert.ToDouble(exprReader.Evaluate("Cos(ID)"));
-
-            Assert.AreEqual(Math.Cos(orig2), value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig3 = (int)exprReader["ID"];
-            var value3 = Convert.ToDouble(exprReader.Evaluate("Cos(ID)"));
-
-            Assert.AreEqual(Math.Cos(orig3), value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathExp()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = (int)exprReader["ID"];
-            var value = Convert.ToDouble(exprReader.Evaluate("Exp(ID)"));
-
-            Assert.AreEqual(Math.Exp(orig), value);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = (int)exprReader["ID"];
-            var value2 = Convert.ToDouble(exprReader.Evaluate("Exp(ID)"));
-
-            Assert.AreEqual(Math.Exp(orig2), value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig3 = (int)exprReader["ID"];
-            var value3 = Convert.ToDouble(exprReader.Evaluate("Exp(ID)"));
-
-            Assert.AreEqual(Math.Exp(orig3), value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathLn()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = (int)exprReader["ID"];
-            var value = Convert.ToDouble(exprReader.Evaluate("Ln(ID)"));
-
-            Assert.AreEqual(Math.Log(orig), value);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = (int)exprReader["ID"];
-            var value2 = Convert.ToDouble(exprReader.Evaluate("Ln(ID)"));
-
-            Assert.AreEqual(Math.Log(orig2), value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig3 = (int)exprReader["ID"];
-            var value3 = Convert.ToDouble(exprReader.Evaluate("Ln(ID)"));
-
-            Assert.AreEqual(Math.Log(orig3), value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathLog()
-        {
-        }
-
-        public void TestMathMod()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestMathPower()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = (int)exprReader["ID"];
-            var value = Convert.ToDouble(exprReader.Evaluate("Power(ID, 2)"));
-
-            Assert.AreEqual(Math.Pow(orig, 2), value);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = (int)exprReader["ID"];
-            var value2 = Convert.ToDouble(exprReader.Evaluate("Power(ID, 4)"));
-
-            Assert.AreEqual(Math.Pow(orig2, 4), value2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig3 = (int)exprReader["ID"];
-            var value3 = Convert.ToDouble(exprReader.Evaluate("Power(ID, 8)"));
-
-            Assert.AreEqual(Math.Pow(orig3, 8), value3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathRemainder()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathSin()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathSqrt()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathTan()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathCeil()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathFloor()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathRound()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathSign()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestMathTrunc()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        [Test]
-        public void TestConcat()
-        {
-            //Test nested and variadic forms of Concat()
-
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig = exprReader["Name"].ToString();
-            var value = exprReader.Evaluate("Concat(Concat(Name, 'Foo'), 'Bar')");
-            var valueV = exprReader.Evaluate("Concat(Name, 'Foo', 'Bar', 'Snafu')");
-            Assert.AreEqual(orig + "FooBar", value);
-            Assert.AreEqual(orig + "FooBarSnafu", valueV);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var orig2 = exprReader["Name"].ToString();
-            var value2 = exprReader.Evaluate("Concat(Concat(Name, 'Foo'), 'Bar')");
-            var valueV2 = exprReader.Evaluate("Concat(Name, 'Foo', 'Bar', 'Snafu')");
-            Assert.AreEqual(orig2 + "FooBar", value2);
-            Assert.AreEqual(orig2 + "FooBarSnafu", valueV2);
-
-            Assert.IsTrue(exprReader.ReadNext());
-
-            var value3 = exprReader.Evaluate("Concat(Concat(Name, 'Foo'), 'Bar')");
-            var valueV3 = exprReader.Evaluate("Concat(Name, 'Foo', 'Bar', 'Snafu')");
-            Assert.AreEqual("FooBar", value3);
-            Assert.AreEqual("FooBarSnafu", valueV3);
-
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestInstr()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestLength()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestLower()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestLpad()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestLtrim()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestRpad()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestRtrim()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestSoundex()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestSubstr()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestTranslate()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestTrim()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-
-        public void TestUpper()
-        {
-            //Simulate post-#708 SELECTFEATURES output and test our expression engine reader
-            var bytes = Encoding.UTF8.GetBytes(Properties.Resources.SelectFeatureSample);
-            var reader = new XmlFeatureReader(new MemoryStream(bytes));
-            Assert.NotNull(reader.ClassDefinition);
-            Assert.AreEqual(3, reader.FieldCount);
-            Assert.AreEqual(3, reader.ClassDefinition.Properties.Count);
-            Assert.NotNull(reader.ClassDefinition.FindProperty("ID"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("Name"));
-            Assert.NotNull(reader.ClassDefinition.FindProperty("URL"));
-
-            var exprReader = new ExpressionFeatureReader(reader);
-
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsTrue(exprReader.ReadNext());
-            Assert.IsFalse(exprReader.ReadNext());
-
-            exprReader.Close();
-        }
-    }
-}
\ No newline at end of file

Modified: trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj
===================================================================
--- trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj	2015-01-20 13:46:10 UTC (rev 8511)
+++ trunk/Tools/Maestro/MaestroAPITests/MaestroAPITests.csproj	2015-01-20 14:26:46 UTC (rev 8512)
@@ -82,7 +82,6 @@
       <Link>SignedAssemblyInfo.cs</Link>
     </Compile>
     <Compile Include="ConnectionTestBase.cs" />
-    <Compile Include="ExpressionTests.cs" />
     <Compile Include="FeatureReaderTests.cs" />
     <Compile Include="HttpConnectionTests.cs" />
     <Compile Include="HttpSiteTests.cs" />

Modified: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj	2015-01-20 13:46:10 UTC (rev 8511)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/OSGeo.MapGuide.MaestroAPI.csproj	2015-01-20 14:26:46 UTC (rev 8512)
@@ -61,10 +61,6 @@
     <Prefer32Bit>false</Prefer32Bit>
   </PropertyGroup>
   <ItemGroup>
-    <Reference Include="Ciloci.Flee, Version=0.9.27.0, Culture=neutral, PublicKeyToken=fc11e355737f8b7f, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\Maestro\packages\fleesharp.0.9.27-pre\lib\net40\Ciloci.Flee.dll</HintPath>
-    </Reference>
     <Reference Include="NetTopologySuite.Merged, Version=1.8.0.0, Culture=neutral, PublicKeyToken=f580a05016ebada1, processorArchitecture=MSIL">
       <SpecificVersion>False</SpecificVersion>
       <HintPath>..\Thirdparty\NTS\NetTopologySuite.Merged.dll</HintPath>
@@ -115,11 +111,6 @@
     <Compile Include="Exceptions\SerializationException.cs" />
     <Compile Include="Exceptions\UnsupportedResourceTypeException.cs" />
     <Compile Include="Exceptions\UnsupportedServiceTypeException.cs" />
-    <Compile Include="Expression\ExpressionEngine.cs" />
-    <Compile Include="Expression\ExpressionFeatureReader.cs" />
-    <Compile Include="Expression\FdoFunctionNamespace.cs" />
-    <Compile Include="Expression\MgFunctionNamespace.cs" />
-    <Compile Include="Expression\NsDoc.cs" />
     <Compile Include="ExtensionMethods.cs" />
     <Compile Include="Feature\ClrFdoTypeMap.cs" />
     <Compile Include="Feature\FeatureBase.cs" />
@@ -245,7 +236,6 @@
     <Compile Include="XmlValidator.cs" />
   </ItemGroup>
   <ItemGroup>
-    <None Include="packages.config" />
     <None Include="Schemas\ApplicationDefinition-1.0.0.xsd">
     </None>
     <None Include="Schemas\ApplicationDefinitionInfo-1.0.0.xsd">

Deleted: trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/packages.config
===================================================================
--- trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/packages.config	2015-01-20 13:46:10 UTC (rev 8511)
+++ trunk/Tools/Maestro/OSGeo.MapGuide.MaestroAPI/packages.config	2015-01-20 14:26:46 UTC (rev 8512)
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<packages>
-  <package id="fleesharp" version="0.9.27-pre" targetFramework="net40-Client" />
-</packages>
\ No newline at end of file



More information about the mapguide-commits mailing list