[Adapdev-commits] Adapdev/src/Adapdev.Data.Tests/Sql DeleteQueryTest.cs,NONE,1.1 InsertQueryTest.cs,
Status: Beta
Brought to you by:
intesar66
From: Sean M. <int...@us...> - 2006-03-15 04:34:26
|
Update of /cvsroot/adapdev/Adapdev/src/Adapdev.Data.Tests/Sql In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16961/src/Adapdev.Data.Tests/Sql Modified Files: SelectQueryTest.cs Added Files: DeleteQueryTest.cs InsertQueryTest.cs SqlServerCriteriaTest.cs UpdateQueryTest.cs Log Message: --- NEW FILE: InsertQueryTest.cs --- using System; using System.Collections; using Adapdev.Data.Sql; using NUnit.Framework; namespace Adapdev.Data.Tests.Sql { /// <summary> /// Summary description for InsertQueryTest. /// </summary> /// [TestFixture] public class InsertQueryTest { private DbType _dbType = DbType.ACCESS; private string AddValues() { IInsertQuery query = QueryFactory.CreateInsertQuery(this._dbType); query.SetTable("someTable"); query.Add("dateColumn", new DateTime(2006,3,3,10,10,10,10)); query.Add("stringColumn", "some text"); query.Add("numericColumn", 12); return query.Statement; } private string AddNullValues() { IInsertQuery query = QueryFactory.CreateInsertQuery(this._dbType); query.SetTable("someTable"); query.AddNull("someColumn"); query.AddNull("someColumn2"); return query.Statement; } private string AddParameterValues() { IInsertQuery query = QueryFactory.CreateInsertQuery(this._dbType); query.SetTable("someTable"); query.Add("someColumn"); query.Add("someColumn2"); return query.Statement; } [Test] public void SqlServer() { this._dbType = DbType.SQLSERVER; Assert.AreEqual("INSERT INTO [someTable] ( [dateColumn], [stringColumn], [numericColumn] ) VALUES ( '3/3/2006 10:10:10 AM', 'some text', 12 ) ", this.AddValues(), "AddValues failed."); Assert.AreEqual("INSERT INTO [someTable] ( [someColumn], [someColumn2] ) VALUES ( NULL, NULL ) ", this.AddNullValues(), "AddNullValues failed."); Assert.AreEqual("INSERT INTO [someTable] ( [someColumn], [someColumn2] ) VALUES ( @someColumn, @someColumn2 ) ", this.AddParameterValues(), "AddParameterValues failed."); } } } Index: SelectQueryTest.cs =================================================================== RCS file: /cvsroot/adapdev/Adapdev/src/Adapdev.Data.Tests/Sql/SelectQueryTest.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** SelectQueryTest.cs 21 Jan 2006 19:42:48 -0000 1.2 --- SelectQueryTest.cs 15 Mar 2006 04:34:19 -0000 1.3 *************** *** 1,3 **** --- 1,4 ---- using System; + using System.Collections; using Adapdev.Data.Sql; using NUnit.Framework; *************** *** 12,55 **** public class SelectQueryTest { ! [Test] ! public void CriteriaProperty() { ! ISelectQuery query = QueryFactory.CreateSelectQuery(DbType.SQLSERVER, DbProviderType.SQLSERVER); ! query.SetTable("SomeTable"); ! query.Add("someColumn"); ! ICriteria criteria = query.CreateCriteria(); ! criteria.AddEqualTo("someColumn", "1"); ! query.SetCriteria(criteria); ! Assert.IsNotNull(query.Criteria); ! Console.WriteLine(query.GetText()); } ! [Test] ! public void EmptyCriteria() { ! ISelectQuery query = QueryFactory.CreateSelectQuery(DbType.SQLSERVER); ! query.SetTable("Test"); ! query.Add("column"); ! query.SetCriteria(query.CreateCriteria()); ! Console.WriteLine(query.GetText()); } ! [Test] ! public void PopulatedCriteria() { ! ISelectQuery query = QueryFactory.CreateSelectQuery(DbType.SQLSERVER); ! query.SetTable("Test"); ! query.Add("column"); ! ICriteria criteria = query.CreateCriteria(); ! criteria.AddIsNull("column2"); ! query.SetCriteria(criteria); ! Console.WriteLine(query.GetText()); } } } --- 13,250 ---- public class SelectQueryTest { ! private DbType _dbType = DbType.ORACLE; ! ! ! private string SelectAll() { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddAll(); ! return query.Statement; ! } ! private string SelectColumns() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.Add("column1"); ! query.Add("column2"); ! return query.Statement; ! } ! private string SelectColumnsWithTable() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.Add("table2", "column2"); ! query.Add("column2"); ! return query.Statement; ! } ! private string SelectColumnsWithTableAndAlias() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.Add("column1"); ! query.AddColumnAlias("table2", "column2", "alias2"); ! query.AddColumnAlias("column3", "alias3"); ! ! return query.Statement; } ! private string SelectColumnCount() { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddCount("column"); ! return query.Statement; } ! private string SelectCountAll() { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddCountAll(); ! return query.Statement; ! } ! private string SelectGroupBy() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddAll(); ! query.AddGroupBy("column1"); ! ! return query.Statement; ! } ! ! private string SelectOrderByASC() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddAll(); ! query.AddOrderBy("column1"); ! ! return query.Statement; ! } ! ! private string SelectOrderByDESC() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddAll(); ! query.AddOrderBy("column1"); ! query.OrderBy = OrderBy.DESCENDING; ! ! return query.Statement; ! } ! ! private string SelectOrderByASCAndDESC() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddAll(); ! query.AddOrderBy("column1", OrderBy.DESCENDING); ! query.AddOrderBy("column2", OrderBy.ASCENDING); ! query.OrderBy = OrderBy.DESCENDING; ! ! return query.Statement; ! } ! ! ! private string SelectOrderByTableColumnASC() ! { ! ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); ! query.SetTable("sometable"); ! query.AddAll(); ! query.AddOrderBy("table1", "column1"); ! ! return query.Statement; } + + private string SelectOrderByTableColumnDESC() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddOrderBy("table1", "column1"); + query.OrderBy = OrderBy.DESCENDING; + + return query.Statement; + } + + private string SelectOrderByColumns() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddOrderByColumns("column1", "column2", "column3"); + + return query.Statement; + } + + private string SelectOrderByAndGroupBy() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddOrderBy("table1", "column1"); + query.OrderBy = OrderBy.DESCENDING; + query.AddGroupBy("column2"); + + return query.Statement; + } + + private string SelectJoin() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddJoin("table2", "column1", "column2", JoinType.INNER); + + return query.Statement; + } + + private string SelectJoinOuter() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddJoin("table2", "column1", "column2", JoinType.OUTER); + + return query.Statement; + } + + private string SelectJoinLeft() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddJoin("table2", "column1", "column2", JoinType.LEFT); + + return query.Statement; + } + + private string SelectJoinRight() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddJoin("table2", "column1", "column2", JoinType.RIGHT); + + return query.Statement; + } + + + private string SelectJoinManyToMany() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.AddJoin("table2", "column1", "column2", "table3", "column3", "table4", "column4", JoinType.INNER); + + return query.Statement; + } + + private string SelectSetLimit() + { + ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); + query.SetTable("sometable"); + query.AddAll(); + query.SetLimit(100); + + return query.Statement; + } + + + [Test] + public void SqlServer() + { + this._dbType = DbType.SQLSERVER; + + Assert.AreEqual("SELECT * FROM [sometable]", this.SelectAll(), "SelectAll failed"); + Assert.AreEqual("SELECT [column1], [column2] FROM [sometable]", this.SelectColumns(), "SelectColumns failed"); + Assert.AreEqual("SELECT [table2].[column2], [column2] FROM [sometable]", this.SelectColumnsWithTable(), "SelectColumnsWithTable failed"); + Assert.AreEqual("SELECT [column1], [table2].[column2] AS alias2, [column3] AS alias3 FROM [sometable]", this.SelectColumnsWithTableAndAlias(), "SelectColumnsWithTableAndAlias failed"); + Assert.AreEqual("SELECT COUNT([column]) FROM [sometable]", this.SelectColumnCount(), "SelectColumnCount failed"); + Assert.AreEqual("SELECT COUNT(*) FROM [sometable]", this.SelectCountAll(), "SelectCountAll failed"); + Assert.AreEqual("SELECT * FROM [sometable] GROUP BY [column1]", this.SelectGroupBy(), "SelectGroupBy failed"); + Assert.AreEqual("SELECT * FROM [sometable] ORDER BY [column1] ASC ", this.SelectOrderByASC(), "SelectOrderByASC failed"); + Assert.AreEqual("SELECT * FROM [sometable] ORDER BY [column1] DESC ", this.SelectOrderByDESC(), "SelectOrderByDESC failed"); + Assert.AreEqual("SELECT * FROM [sometable] ORDER BY [column1] DESC , [column2] ASC ", this.SelectOrderByASCAndDESC(), "SelectOrderByASCAndDESC failed"); + Assert.AreEqual("SELECT * FROM [sometable] ORDER BY [table1].[column1] ASC ", this.SelectOrderByTableColumnASC(), "SelectOrderByTableColumnASC failed"); + Assert.AreEqual("SELECT * FROM [sometable] ORDER BY [table1].[column1] DESC ", this.SelectOrderByTableColumnDESC(), "SelectOrderByTableColumnDESC failed"); + Assert.AreEqual("SELECT * FROM [sometable] ORDER BY [column1], [column2], [column3] ASC ", this.SelectOrderByColumns(), "SelectOrderByColumns failed"); + Assert.AreEqual("SELECT * FROM [sometable] GROUP BY [column2] ORDER BY [table1].[column1] DESC ", this.SelectOrderByAndGroupBy(), "SelectOrderByAndGroupBy failed"); + Assert.AreEqual("SELECT * FROM [sometable] INNER JOIN [table2] ON [sometable].[column1] = [table2].[column2] ", this.SelectJoin(), "SelectJoin failed"); + Assert.AreEqual("SELECT * FROM [sometable] INNER JOIN [table2] ON [sometable].[column1] = [table2].[column2] INNER JOIN [table4] ON [table3].[column3] = [table4].[column4] ", this.SelectJoinManyToMany(), "SelectJoinManyToMany failed"); + Assert.AreEqual("SELECT * FROM [sometable] FULL OUTER JOIN [table2] ON [sometable].[column1] = [table2].[column2] ", this.SelectJoinOuter(), "SelectJoinOuter failed"); + Assert.AreEqual("SELECT * FROM [sometable] LEFT OUTER JOIN [table2] ON [sometable].[column1] = [table2].[column2] ", this.SelectJoinLeft(), "SelectJoinLeft failed"); + Assert.AreEqual("SELECT * FROM [sometable] RIGHT OUTER JOIN [table2] ON [sometable].[column1] = [table2].[column2] ", this.SelectJoinRight(), "SelectJoinRight failed"); + Console.WriteLine(this.SelectGroupBy()); + } + } } --- NEW FILE: DeleteQueryTest.cs --- using System; using System.Collections; using Adapdev.Data.Sql; using NUnit.Framework; namespace Adapdev.Data.Tests.Sql { /// <summary> /// Summary description for DeleteQueryTest. /// </summary> /// [TestFixture] public class DeleteQueryTest { private DbType _dbType = DbType.ACCESS; private string Delete() { IDeleteQuery query = QueryFactory.CreateDeleteQuery(this._dbType); query.SetTable("someTable"); return query.Statement; } [Test] public void SqlServer() { this._dbType = DbType.SQLSERVER; Assert.AreEqual("DELETE FROM [someTable]", this.Delete(), "Delete failed."); } } } --- NEW FILE: UpdateQueryTest.cs --- using System; using System.Collections; using Adapdev.Data.Sql; using NUnit.Framework; namespace Adapdev.Data.Tests.Sql { /// <summary> /// Summary description for UpdateQueryTest. /// </summary> /// [TestFixture] public class UpdateQueryTest { private DbType _dbType = DbType.SQLSERVER; private string AddValues() { IUpdateQuery query = QueryFactory.CreateUpdateQuery(this._dbType); query.SetTable("someTable"); query.Add("dateColumn", new DateTime(2006,3,3,10,10,10,10)); query.Add("stringColumn", "some text"); query.Add("numericColumn", 12); return query.Statement; } private string AddNullValues() { IUpdateQuery query = QueryFactory.CreateUpdateQuery(this._dbType); query.SetTable("someTable"); query.AddNull("someColumn"); query.AddNull("someColumn2"); return query.Statement; } private string AddParameterValues() { IUpdateQuery query = QueryFactory.CreateUpdateQuery(this._dbType); query.SetTable("someTable"); query.Add("someColumn"); query.Add("someColumn2"); return query.Statement; } [Test] public void SqlServer() { this._dbType = DbType.SQLSERVER; Assert.AreEqual("UPDATE [someTable] SET [dateColumn] = '3/3/2006 10:10:10 AM', [stringColumn] = 'some text', [numericColumn] = 12", this.AddValues(), "AddValues failed."); Assert.AreEqual("UPDATE [someTable] SET [someColumn] = NULL, [someColumn2] = NULL", this.AddNullValues(), "AddNullValues failed."); Assert.AreEqual("UPDATE [someTable] SET [someColumn] = @someColumn, [someColumn2] = @someColumn2", this.AddParameterValues(), "AddParameterValues failed."); } } } --- NEW FILE: SqlServerCriteriaTest.cs --- using System; using System.Collections; using Adapdev.Data.Sql; using NUnit.Framework; namespace Adapdev.Data.Tests.Sql { /// <summary> /// Summary description for SqlServerCriteriaTest. /// </summary> /// [TestFixture] public class SqlServerCriteriaTest { private DbType _dbType = DbType.SQLSERVER; [Test] public void AddAnd() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddBetween("column1", 1, 5); criteria.AddAnd(); criteria.AddGreaterThan("column2", 2); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] BETWEEN 1 AND 5 AND [column2] > 2 ", criteria.GetText()); } [Test] public void AddOr() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddBetween("column1", 1, 5); criteria.AddOr(); criteria.AddGreaterThan("column2", 2); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] BETWEEN 1 AND 5 OR [column2] > 2 ", criteria.GetText()); } [Test] public void AddBetweenNumbers() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddBetween("column1", 1, 5); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] BETWEEN 1 AND 5 ", criteria.GetText()); } [Test] public void AddBetweenDates() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddBetween("column1", new DateTime(2006,3,3,10,10,10,10), new DateTime(2006,4,3,10,10,10,10)); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] BETWEEN '3/3/2006 10:10:10 AM' AND '4/3/2006 10:10:10 AM' ", criteria.GetText()); } [Test] public void AddNotBetweenNumbers() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotBetween("column1", 1, 5); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] NOT BETWEEN 1 AND 5 ", criteria.GetText()); } [Test] public void AddEqualToNumber() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddEqualTo("column1", 1); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] = 1 ", criteria.GetText()); } [Test] public void AddEqualToDate() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddEqualTo("column1", new DateTime(2006,3,3,10,10,10,10)); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] = '3/3/2006 10:10:10 AM' ", criteria.GetText()); } [Test] public void AddEqualToText() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddEqualTo("column1", "some text"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] = 'some text' ", criteria.GetText()); } [Test] public void AddNotEqualToText() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotEqualTo("column1", "some text"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] <> 'some text' ", criteria.GetText()); } [Test] public void AddEqualToWithTableNumber() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddEqualTo("table1", "column1", 1); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [table1].[column1] = 1 ", criteria.GetText()); } [Test] public void AddEqualToWithTableDate() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddEqualTo("table1", "column1", new DateTime(2006,3,3,10,10,10,10)); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [table1].[column1] = '3/3/2006 10:10:10 AM' ", criteria.GetText()); } [Test] public void AddEqualToWithTableText() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddEqualTo("table1", "column1", "some text"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [table1].[column1] = 'some text' ", criteria.GetText()); } [Test] public void AddEqualToWithParameter() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddEqualTo("column1"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] = @column1 ", criteria.GetText()); } [Test] public void AddExists() { ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); query.SetTable("someTable"); query.Add("column1"); ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddExists(query); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE EXISTS (SELECT [column1] FROM [someTable]) ", criteria.GetText()); } [Test] public void AddNotExists() { ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); query.SetTable("someTable"); query.Add("column1"); ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotExists(query); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE NOT EXISTS (SELECT [column1] FROM [someTable]) ", criteria.GetText()); } [Test] public void AddGreaterThan() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddGreaterThan("column1", 1); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] > 1 ", criteria.GetText()); } [Test] public void AddGreaterThanOrEqualTo() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddGreaterThanOrEqualTo("column1", 1); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] >= 1 ", criteria.GetText()); } [Test] public void AddInUsingSubquery() { ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); query.SetTable("someTable"); query.Add("column1"); ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddIn("column1", query); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] IN (SELECT [column1] FROM [someTable]) ", criteria.GetText()); } [Test] public void AddNotInUsingSubquery() { ISelectQuery query = QueryFactory.CreateSelectQuery(this._dbType); query.SetTable("someTable"); query.Add("column1"); ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotIn("column1", query); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] NOT IN (SELECT [column1] FROM [someTable]) ", criteria.GetText()); } [Test] public void AddInUsingCollection() { ArrayList al = new ArrayList(); al.Add(1); al.Add(2); al.Add(3); ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddIn("column1", al); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] IN (1, 2, 3) ", criteria.GetText()); } [Test] public void AddNotInUsingCollection() { ArrayList al = new ArrayList(); al.Add(1); al.Add(2); al.Add(3); ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotIn("column1", al); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] NOT IN (1, 2, 3)", criteria.GetText()); } [Test] public void AddIsNull() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddIsNull("column1"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] IS NULL ", criteria.GetText()); } [Test] public void AddNotNull() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotNull("column1"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] IS NOT NULL ", criteria.GetText()); } [Test] public void AddAndCriteria() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotNull("column1"); ICriteria criteria2 = CriteriaFactory.CreateCriteria(this._dbType); criteria2.AddNotNull("column1"); criteria2.AddAndCriteria(criteria); Console.WriteLine(criteria2.GetText()); Assert.AreEqual(" WHERE [column1] IS NOT NULL AND ( [column1] IS NOT NULL ) ", criteria2.GetText()); } [Test] public void AddOrCriteria() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotNull("column1"); ICriteria criteria2 = CriteriaFactory.CreateCriteria(this._dbType); criteria2.AddNotNull("column1"); criteria2.AddOrCriteria(criteria); Console.WriteLine(criteria2.GetText()); Assert.AreEqual(" WHERE [column1] IS NOT NULL OR ( [column1] IS NOT NULL ) ", criteria2.GetText()); } [Test] public void AddSql() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotNull("column1"); criteria.AddSql("SELECT * FROM table2"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] IS NOT NULL SELECT * FROM table2 ", criteria.GetText()); } [Test] public void AddLessThan() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddLessThan("column1", 1); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] < 1 ", criteria.GetText()); } [Test] public void AddLessThanOrEqualTo() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddLessThanOrEqualTo("column1", 1); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] <= 1 ", criteria.GetText()); } [Test] public void AddLike() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddLike("column1", "%country"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] LIKE '%country' ", criteria.GetText()); } [Test] public void AddNotLike() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddNotLike("column1", "%country"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [column1] NOT LIKE '%country' ", criteria.GetText()); } [Test] public void AddLikeWithTable() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddLike("table1", "column1", "%country"); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [table1].[column1] LIKE '%country' ", criteria.GetText()); } [Test] public void AddAndWithCriteria() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddLike("table1", "column1", "%country"); ICriteria criteria2 = CriteriaFactory.CreateCriteria(this._dbType); criteria2.AddEqualTo("column2", 2); criteria.AddAndCriteria(criteria2); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [table1].[column1] LIKE '%country' AND ([column2] = 2) ", criteria.GetText()); } [Test] public void AddOrWithCriteria() { ICriteria criteria = CriteriaFactory.CreateCriteria(this._dbType); criteria.AddLike("table1", "column1", "%country"); ICriteria criteria2 = CriteriaFactory.CreateCriteria(this._dbType); criteria2.AddEqualTo("column2", 2); criteria.AddOrCriteria(criteria2); Console.WriteLine(criteria.GetText()); Assert.AreEqual(" WHERE [table1].[column1] LIKE '%country' OR ([column2] = 2) ", criteria.GetText()); } [Test] public void CriteriaProperty() { ISelectQuery query = QueryFactory.CreateSelectQuery(DbType.SQLSERVER, DbProviderType.SQLSERVER); query.SetTable("SomeTable"); query.Add("someColumn"); ICriteria criteria = query.CreateCriteria(); criteria.AddEqualTo("someColumn", "1"); query.SetCriteria(criteria); Assert.IsNotNull(query.Criteria); Console.WriteLine(query.GetText()); } [Test] public void EmptyCriteria() { ISelectQuery query = QueryFactory.CreateSelectQuery(DbType.SQLSERVER); query.SetTable("Test"); query.Add("column"); query.SetCriteria(query.CreateCriteria()); Console.WriteLine(query.GetText()); } [Test] public void PopulatedCriteria() { ISelectQuery query = QueryFactory.CreateSelectQuery(DbType.SQLSERVER); query.SetTable("Test"); query.Add("column"); ICriteria criteria = query.CreateCriteria(); criteria.AddIsNull("column2"); query.SetCriteria(criteria); Console.WriteLine(query.GetText()); } } } |