Exemplo n.º 1
0
 private string GetOrderByFieldName(OrderCriteriaField orderOrderCriteriaField)
 {
     if (Fields.ContainsKey(orderOrderCriteriaField.PropertyName))
     {
         var queryField = Fields[orderOrderCriteriaField.PropertyName];
         return(queryField.FieldName);
     }
     return(orderOrderCriteriaField.FieldName);
 }
Exemplo n.º 2
0
        public void TestField_ToString()
        {
            //---------------Set up test pack-------------------
            string             name = "TestProp";
            OrderCriteriaField orderCriteriaField = new OrderCriteriaField(name, SortDirection.Descending);
            //---------------Execute Test ----------------------
            string fieldAsString = orderCriteriaField.ToString();

            //---------------Test Result -----------------------
            Assert.AreEqual(name + " DESC", fieldAsString);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 3
0
        public void TestField_FromString_ThroughRelationship()
        {
            //---------------Set up test pack-------------------

            //---------------Execute Test ----------------------
            OrderCriteriaField orderCriteriaField = OrderCriteriaField.FromString("MyRelationship.TestProp");

            //---------------Test Result -----------------------
            Assert.AreEqual("TestProp", orderCriteriaField.PropertyName);
            Assert.AreEqual(new Source("MyRelationship"), orderCriteriaField.Source);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 4
0
        public void Test_Field_FullName_NoSource()
        {
            //---------------Set up test pack-------------------
            string             orderBy = "Surname";
            OrderCriteriaField orderCriteriaOrderCriteriaField = OrderCriteriaField.FromString(orderBy + " ASC");
            //---------------Execute Test ----------------------
            string fullName = orderCriteriaOrderCriteriaField.FullName;

            //---------------Test Result -----------------------
            Assert.AreEqual(orderBy, fullName);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 5
0
        public void TestAdd_Field()
        {
            //---------------Set up test pack-------------------
            OrderCriteriaField orderCriteriaField = new OrderCriteriaField("TestProp", SortDirection.Descending);
            //---------------Execute Test ----------------------
            IOrderCriteria orderCriteria = new OrderCriteria().Add(orderCriteriaField);
            //---------------Test Result -----------------------
            Assert.AreEqual(1, orderCriteria.Fields.Count);
            Assert.Contains(orderCriteriaField, orderCriteria.Fields);

            //---------------Tear Down -------------------------
        }
Exemplo n.º 6
0
        public void TestField_Source()
        {
            //---------------Set up test pack-------------------

            //---------------Execute Test ----------------------
            OrderCriteriaField orderCriteriaField = new OrderCriteriaField("TestProp", SortDirection.Descending);
            Source             source             = new Source(TestUtil.GetRandomString());

            orderCriteriaField.Source = source;
            //---------------Test Result -----------------------
            Assert.AreEqual(source, orderCriteriaField.Source);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 7
0
        public void TestField_Constructor()
        {
            //---------------Set up test pack-------------------

            //---------------Execute Test ----------------------
            string             name = "TestProp";
            OrderCriteriaField orderCriteriaField = new OrderCriteriaField(name, SortDirection.Descending);

            //---------------Test Result -----------------------
            Assert.AreEqual(name, orderCriteriaField.PropertyName);
            Assert.AreEqual(SortDirection.Descending, orderCriteriaField.SortDirection);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 8
0
        public void TestAdd_Field()
        {
            //---------------Set up test pack-------------------
            OrderCriteriaField orderCriteriaField = new OrderCriteriaField("TestProp", SortDirection.Descending);
            //---------------Execute Test ----------------------
            IOrderCriteria orderCriteria = new OrderCriteria().Add(orderCriteriaField);

            //---------------Test Result -----------------------
            Assert.AreEqual(1, orderCriteria.Fields.Count);
            Assert.Contains(orderCriteriaField, orderCriteria.Fields);

            //---------------Tear Down -------------------------
        }
Exemplo n.º 9
0
        public void TestField_FromString()
        {
            //---------------Set up test pack-------------------

            //---------------Execute Test ----------------------
            OrderCriteriaField orderCriteriaField = OrderCriteriaField.FromString("TestProp dEsc");

            //---------------Test Result -----------------------
            Assert.AreEqual("TestProp", orderCriteriaField.FieldName);
            Assert.AreEqual(SortDirection.Descending, orderCriteriaField.SortDirection);
            Assert.IsNull(orderCriteriaField.Source);

            //---------------Tear Down -------------------------
        }
Exemplo n.º 10
0
        public void TestField_FromString_WithSource()
        {
            //---------------Set up test pack-------------------

            //---------------Execute Test ----------------------
            OrderCriteriaField orderCriteriaField = OrderCriteriaField.FromString("MyRelationship.TestProp dEsc");

            //---------------Test Result -----------------------
            Assert.AreEqual(new Source("MyRelationship"), orderCriteriaField.Source);
            Assert.AreEqual("TestProp", orderCriteriaField.PropertyName);
            Assert.AreEqual(SortDirection.Descending, orderCriteriaField.SortDirection);

            //---------------Tear Down -------------------------
        }
Exemplo n.º 11
0
        public void TestField_ToStringSource()
        {
            //---------------Set up test pack-------------------
            string             name = "TestProp";
            OrderCriteriaField orderCriteriaField = new OrderCriteriaField(name, SortDirection.Descending);
            string             source             = Guid.NewGuid().ToString("N");

            orderCriteriaField.Source = new Source(source);
            //---------------Execute Test ----------------------
            string fieldAsString = orderCriteriaField.ToString();

            //---------------Test Result -----------------------
            Assert.AreEqual(string.Format("{0}.{1} DESC", source, name), fieldAsString);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 12
0
        public void TestField_FromString_ThroughRelationship_TwoLevelsDeep()
        {
            //---------------Set up test pack-------------------

            //---------------Execute Test ----------------------
            OrderCriteriaField orderCriteriaField = OrderCriteriaField.FromString("MyRelationship.MySecondRelationship.TestProp");

            //---------------Test Result -----------------------
            Assert.AreEqual("TestProp", orderCriteriaField.PropertyName);
            Source source = orderCriteriaField.Source;

            Assert.AreEqual(new Source("MyRelationship"), source);
            Assert.AreEqual(1, source.Joins.Count);
            Assert.AreSame(source, source.Joins[0].FromSource);
            Assert.AreEqual(new Source("MySecondRelationship"), source.Joins[0].ToSource);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 13
0
        public void TestField_Compare_ThroughRelationship_TwoLevels()
        {
            //---------------Set up test pack-------------------
            new Engine(); //TO Load ClassDefs
            new Car();    //TO Load ClassDefs
            ContactPerson      contactPerson1     = ContactPerson.CreateSavedContactPerson("ZZZZ");
            ContactPerson      contactPerson2     = ContactPerson.CreateSavedContactPerson("AAAA");
            Car                car1               = Car.CreateSavedCar("2", contactPerson1);
            Car                car2               = Car.CreateSavedCar("5", contactPerson2);
            Engine             car1engine1        = Engine.CreateSavedEngine(car1, "20");
            Engine             car2engine1        = Engine.CreateSavedEngine(car2, "50");
            OrderCriteriaField orderCriteriaField = OrderCriteriaField.FromString("Engine.Car.Owner.Surname");

            //---------------Execute Test ----------------------
            int comparisonResult = orderCriteriaField.Compare(car1engine1, car2engine1);

            //---------------Test Result -----------------------
            Assert.Greater(comparisonResult, 0, "engine1 should be greater as its car's regno is greater");
            //---------------Tear Down -------------------------
        }
Exemplo n.º 14
0
        public void TestSetOrderCriteria_AddsJoinToSource()
        {
            //---------------Set up test pack-------------------
            var          selectQuery = new SelectQuery();
            const string sourceName  = "mysource";

            selectQuery.Source = new Source(sourceName);
            var orderSource        = new Source(sourceName);
            var expectedSourceName = TestUtil.GetRandomString();

            orderSource.JoinToSource(new Source(expectedSourceName));
            var orderOrderCriteriaField = new OrderCriteriaField("testfield", "testfield", orderSource, SortDirection.Ascending);
            var orderCriteria           = new OrderCriteria().Add(orderOrderCriteriaField);

            //---------------Execute Test ----------------------
            selectQuery.OrderCriteria = orderCriteria;
            //---------------Test Result -----------------------
            Assert.AreEqual(1, selectQuery.Source.Joins.Count);
            Assert.AreEqual(selectQuery.Source, selectQuery.Source.Joins[0].FromSource);
            Assert.AreEqual(expectedSourceName, selectQuery.Source.Joins[0].ToSource.Name);
        }
Exemplo n.º 15
0
        public void TestField_Compare_ThroughRelationship()
        {
            //---------------Set up test pack-------------------
            Car car1 = new Car();

            car1.CarRegNo = "5";
            Car car2 = new Car();

            car2.CarRegNo = "2";

            Engine engine1 = new Engine();

            engine1.CarID    = car1.CarID;
            engine1.EngineNo = "20";

            Engine engine2 = new Engine();

            engine2.CarID    = car2.CarID;
            engine2.EngineNo = "50";

            ITransactionCommitter committer = BORegistry.DataAccessor.CreateTransactionCommitter();

            committer.AddBusinessObject(car1);
            committer.AddBusinessObject(car2);
            committer.AddBusinessObject(engine1);
            committer.AddBusinessObject(engine2);
            committer.CommitTransaction();

            OrderCriteriaField orderCriteriaField = OrderCriteriaField.FromString("Engine.Car.CarRegNo");

            //---------------Assert PreConditions---------------
            //---------------Execute Test ----------------------
            int comparisonResult = orderCriteriaField.Compare(engine1, engine2);

            //---------------Test Result -----------------------
            Assert.Greater(comparisonResult, 0, "engine1 should be greater as its car's regno is greater");
            //---------------Tear Down -------------------------
        }
Exemplo n.º 16
0
        private void AppendOrderByField(StringBuilder orderByClause, OrderCriteriaField orderOrderCriteriaField)
        {
            string direction = orderOrderCriteriaField.SortDirection == SortDirection.Ascending ? "ASC" : "DESC";

            string tableAndFieldName;

            if (orderOrderCriteriaField.Source != null)
            {
                tableAndFieldName = this.Aliases[orderOrderCriteriaField.Source.ChildSourceLeaf.ToString()] + "." + DelimitFieldName(orderOrderCriteriaField.FieldName);
            }
            else
            {
                if (Fields.ContainsKey(orderOrderCriteriaField.PropertyName))
                {
                    var queryField = Fields[orderOrderCriteriaField.PropertyName];
                    tableAndFieldName = String.Format("{0}{1}", queryField.Source != null ? this.Aliases[queryField.Source.ToString()] + "." : "", DelimitFieldName(queryField.FieldName));
                }
                else
                {
                    tableAndFieldName = this.Aliases[Source.ToString()] + "." + DelimitFieldName(orderOrderCriteriaField.FieldName);
                }
            }
            StringUtilities.AppendMessage(orderByClause, tableAndFieldName + " " + direction, ", ");
        }
Exemplo n.º 17
0
        public void TestSetOrderCriteria_AddsJoinToSource()
        {
            //---------------Set up test pack-------------------
            var selectQuery = new SelectQuery();
            const string sourceName = "mysource";
            selectQuery.Source = new Source(sourceName);
            var orderSource = new Source(sourceName);
            var expectedSourceName = TestUtil.GetRandomString();
            orderSource.JoinToSource(new Source(expectedSourceName));
            var orderOrderCriteriaField = new OrderCriteriaField("testfield", "testfield", orderSource, SortDirection.Ascending);
            var orderCriteria = new OrderCriteria().Add(orderOrderCriteriaField);

            //---------------Execute Test ----------------------
            selectQuery.OrderCriteria = orderCriteria;
            //---------------Test Result -----------------------
            Assert.AreEqual(1, selectQuery.Source.Joins.Count);
            Assert.AreEqual(selectQuery.Source, selectQuery.Source.Joins[0].FromSource);
            Assert.AreEqual(expectedSourceName, selectQuery.Source.Joins[0].ToSource.Name);
        }
Exemplo n.º 18
0
 public void TestField_ToStringSource()
 {
     //---------------Set up test pack-------------------
     string name = "TestProp";
     OrderCriteriaField orderCriteriaField = new OrderCriteriaField(name, SortDirection.Descending);
     string source = Guid.NewGuid().ToString("N");
     orderCriteriaField.Source = new Source(source);
     //---------------Execute Test ----------------------
     string fieldAsString = orderCriteriaField.ToString();
     //---------------Test Result -----------------------
     Assert.AreEqual(string.Format("{0}.{1} DESC", source, name), fieldAsString);
     //---------------Tear Down -------------------------
 }
Exemplo n.º 19
0
        public void TestField_Constructor()
        {
            //---------------Set up test pack-------------------

            //---------------Execute Test ----------------------
            string name = "TestProp";
            OrderCriteriaField orderCriteriaField = new OrderCriteriaField(name, SortDirection.Descending);

            //---------------Test Result -----------------------
            Assert.AreEqual(name, orderCriteriaField.PropertyName);
            Assert.AreEqual(SortDirection.Descending, orderCriteriaField.SortDirection);
            //---------------Tear Down -------------------------
        }
Exemplo n.º 20
0
 public void TestField_ToString()
 {
     //---------------Set up test pack-------------------
     string name = "TestProp";
     OrderCriteriaField orderCriteriaField = new OrderCriteriaField(name, SortDirection.Descending);
     //---------------Execute Test ----------------------
     string fieldAsString = orderCriteriaField.ToString();
     //---------------Test Result -----------------------
     Assert.AreEqual(name + " DESC", fieldAsString);
     //---------------Tear Down -------------------------
 }
Exemplo n.º 21
0
 private string GetOrderByFieldName(OrderCriteriaField orderOrderCriteriaField)
 {
     if (Fields.ContainsKey(orderOrderCriteriaField.PropertyName))
     {
         var queryField = Fields[orderOrderCriteriaField.PropertyName];
         return queryField.FieldName;
     }
     return orderOrderCriteriaField.FieldName;
 }
Exemplo n.º 22
0
        private void AppendOrderByField(StringBuilder orderByClause, OrderCriteriaField orderOrderCriteriaField)
        {
            string direction = orderOrderCriteriaField.SortDirection == SortDirection.Ascending ? "ASC" : "DESC";

            string tableAndFieldName;
            if (orderOrderCriteriaField.Source != null)
            {
                tableAndFieldName = this.Aliases[orderOrderCriteriaField.Source.ChildSourceLeaf.ToString()] + "." + DelimitFieldName(orderOrderCriteriaField.FieldName); 
            }
            else
            {
                if (Fields.ContainsKey(orderOrderCriteriaField.PropertyName))
                {
                    var queryField = Fields[orderOrderCriteriaField.PropertyName];
                    tableAndFieldName = String.Format("{0}{1}", queryField.Source != null ? this.Aliases[queryField.Source.ToString()] + "." : "", DelimitFieldName(queryField.FieldName)); 
                } else
                {
                    tableAndFieldName = this.Aliases[Source.ToString()] + "." + DelimitFieldName(orderOrderCriteriaField.FieldName);
                }
            }
            StringUtilities.AppendMessage(orderByClause, tableAndFieldName + " " + direction, ", ");
        }
Exemplo n.º 23
0
 public void TestField_Source()
 {
     //---------------Set up test pack-------------------
     
     //---------------Execute Test ----------------------
     OrderCriteriaField orderCriteriaField = new OrderCriteriaField("TestProp", SortDirection.Descending);
     Source source = new Source(TestUtil.GetRandomString());
     orderCriteriaField.Source = source;
     //---------------Test Result -----------------------
     Assert.AreEqual(source, orderCriteriaField.Source);
     //---------------Tear Down -------------------------
 }