public void Sort_Only_Query_No_Where()
        {
            // Arrange
            var db = new DataMapper(System.Data.SqlClient.SqlClientFactory.Instance, "Data Source=a;Initial Catalog=a;User Id=a;Password=a;");
            AutoQueryBuilder<Person> builder = new AutoQueryBuilder<Person>(db, false);

            // Act
            builder.OrderBy(p => p.ID).OrderBy(p => p.Name);

            // Assert
            builder.GenerateQueries();
            string generatedSql = builder.QueryQueue.First().QueryText;

            Assert.IsTrue(generatedSql.Contains("SELECT [ID],[Name],[Age],[BirthDate],[IsHappy] "));
            Assert.IsTrue(generatedSql.Contains("FROM PersonTable"));
            Assert.IsFalse(generatedSql.Contains("WHERE"));
            Assert.IsTrue(generatedSql.Contains("ORDER BY [ID],[Name]"));
        }
        public void Complex_Where_Query_No_Sort()
        {
            // Arrange
            var db = new DataMapper(System.Data.SqlClient.SqlClientFactory.Instance, "Data Source=a;Initial Catalog=a;User Id=a;Password=a;");
            AutoQueryBuilder<Person> builder = new AutoQueryBuilder<Person>(db, false);

            // Act
            builder.Where(p => p.Age > 16 && p.Name.StartsWith("J"));
            
            // Assert
            builder.GenerateQueries();
            string generatedSql = builder.QueryQueue.First().QueryText;

            Assert.IsTrue(generatedSql.Contains("SELECT [ID],[Name],[Age],[BirthDate],[IsHappy] "));
            Assert.IsTrue(generatedSql.Contains("FROM PersonTable"));
            Assert.IsTrue(generatedSql.Contains("(([Age] > @P0 AND [Name] LIKE @P1 + '%'))"));
            Assert.IsFalse(generatedSql.Contains("ORDER BY"));
        }
Beispiel #3
0
        public void Sort_Only_Query_No_Where()
        {
            // Arrange
            var db = new DataMapper(System.Data.SqlClient.SqlClientFactory.Instance, "Data Source=a;Initial Catalog=a;User Id=a;Password=a;");
            AutoQueryBuilder <Person> builder = new AutoQueryBuilder <Person>(db, false);

            // Act
            builder.OrderBy(p => p.ID).OrderBy(p => p.Name);

            // Assert
            builder.GenerateQueries();
            string generatedSql = builder.QueryQueue.First().QueryText;

            Assert.IsTrue(generatedSql.Contains("SELECT [ID],[Name],[Age],[BirthDate],[IsHappy] "));
            Assert.IsTrue(generatedSql.Contains("FROM PersonTable"));
            Assert.IsFalse(generatedSql.Contains("WHERE"));
            Assert.IsTrue(generatedSql.Contains("ORDER BY [ID],[Name]"));
        }
Beispiel #4
0
        public void Complex_Where_Query_No_Sort()
        {
            // Arrange
            var db = new DataMapper(System.Data.SqlClient.SqlClientFactory.Instance, "Data Source=a;Initial Catalog=a;User Id=a;Password=a;");
            AutoQueryBuilder <Person> builder = new AutoQueryBuilder <Person>(db, false);

            // Act
            builder.Where(p => p.Age > 16 && p.Name.StartsWith("J"));

            // Assert
            builder.GenerateQueries();
            string generatedSql = builder.QueryQueue.First().QueryText;

            Assert.IsTrue(generatedSql.Contains("SELECT [ID],[Name],[Age],[BirthDate],[IsHappy] "));
            Assert.IsTrue(generatedSql.Contains("FROM PersonTable"));
            Assert.IsTrue(generatedSql.Contains("(([Age] > @P0 AND [Name] LIKE @P1 + '%'))"));
            Assert.IsFalse(generatedSql.Contains("ORDER BY"));
        }
        public void Where_Sort_Query_Should_Use_AltName()
        {
            // Arrange
            var db = new DataMapper(System.Data.SqlClient.SqlClientFactory.Instance, "Data Source=a;Initial Catalog=a;User Id=a;Password=a;");
            AutoQueryBuilder<Order> builder = new AutoQueryBuilder<Order>(db, true);
            
            // Act
            builder
                .Where(o => o.OrderItems[0].ID > 0)
                .OrderBy(o => o.OrderItems[0].ID);

            // Assert
            builder.GenerateQueries();
            string generatedSql = builder.QueryQueue.First().QueryText;

            Assert.IsTrue(generatedSql.Contains("SELECT [ID],[OrderName],[OrderItemID],[ItemDescription],[Price],[AmountPaid] "));
            Assert.IsTrue(generatedSql.Contains("FROM Order"));
            Assert.IsTrue(generatedSql.Contains("([OrderItemID] > @P0)"));
            Assert.IsTrue(generatedSql.Contains("ORDER BY [OrderItemID]"));
        }
Beispiel #6
0
        public void Where_Sort_Query_Should_Use_AltName()
        {
            // Arrange
            var db = new DataMapper(System.Data.SqlClient.SqlClientFactory.Instance, "Data Source=a;Initial Catalog=a;User Id=a;Password=a;");
            AutoQueryBuilder <Order> builder = new AutoQueryBuilder <Order>(db, true);

            // Act
            builder
            .Where(o => o.OrderItems[0].ID > 0)
            .OrderBy(o => o.OrderItems[0].ID);

            // Assert
            builder.GenerateQueries();
            string generatedSql = builder.QueryQueue.First().QueryText;

            Assert.IsTrue(generatedSql.Contains("SELECT [ID],[OrderName],[OrderItemID],[ItemDescription],[Price],[AmountPaid] "));
            Assert.IsTrue(generatedSql.Contains("FROM Order"));
            Assert.IsTrue(generatedSql.Contains("([OrderItemID] > @P0)"));
            Assert.IsTrue(generatedSql.Contains("ORDER BY [OrderItemID]"));
        }