You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by gb...@apache.org on 2006/10/17 20:05:39 UTC
svn commit: r464983 [1/3] - in
/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests:
BaseTest.cs DynamicPrependTest.cs DynamicTest.cs Generics/StatementTest.cs
ResultMapTest.cs StatementTest.cs
Author: gbayon
Date: Tue Oct 17 11:05:38 2006
New Revision: 464983
URL: http://svn.apache.org/viewvc?view=rev&rev=464983
Log:
Cleaning tests
Modified:
ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/BaseTest.cs
ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicPrependTest.cs
ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicTest.cs
ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs
ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/ResultMapTest.cs
ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/StatementTest.cs
Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/BaseTest.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/BaseTest.cs?view=diff&rev=464983&r1=464982&r2=464983
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/BaseTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/BaseTest.cs Tue Oct 17 11:05:38 2006
@@ -17,35 +17,35 @@
using System.Collections.Specialized;
-[assembly : log4net.Config.XmlConfigurator(Watch=true)]
+[assembly: log4net.Config.XmlConfigurator(Watch = true)]
namespace IBatisNet.DataMapper.Test.NUnit.SqlMapTests
{
- public delegate string KeyConvert(string key);
+ public delegate string KeyConvert(string key);
- /// <summary>
- /// Summary description for BaseTest.
- /// </summary>
- [TestFixture]
- public abstract class BaseTest
- {
- /// <summary>
- /// The sqlMap
- /// </summary>
- protected static ISqlMapper sqlMap = null;
- private static readonly ILog _logger = LogManager.GetLogger( System.Reflection.MethodBase.GetCurrentMethod().DeclaringType );
-
- protected static string ScriptDirectory = null;
-
- protected static KeyConvert ConvertKey = null;
-
- /// <summary>
- /// Constructor
- /// </summary>
- static BaseTest()
- {
+ /// <summary>
+ /// Summary description for BaseTest.
+ /// </summary>
+ [TestFixture]
+ public abstract class BaseTest
+ {
+ /// <summary>
+ /// The sqlMap
+ /// </summary>
+ protected static ISqlMapper sqlMap = null;
+ private static readonly ILog _logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
+
+ protected static string ScriptDirectory = null;
+
+ protected static KeyConvert ConvertKey = null;
+
+ /// <summary>
+ /// Constructor
+ /// </summary>
+ static BaseTest()
+ {
#if dotnet2
- ScriptDirectory = Path.Combine(Path.Combine(Path.Combine(Path.Combine(Resources.ApplicationBase, ".."), ".."), "Scripts"),
+ ScriptDirectory = Path.Combine(Path.Combine(Path.Combine(Path.Combine(Resources.ApplicationBase, ".."), ".."), "Scripts"),
ConfigurationManager.AppSettings["database"]) + Path.DirectorySeparatorChar;
#else
ScriptDirectory = Path.Combine(Path.Combine(Path.Combine(Path.Combine(Resources.ApplicationBase, ".."), ".."), "Scripts"),
@@ -53,18 +53,18 @@
#endif
}
- /// <summary>
- /// Initialize an sqlMap
- /// </summary>
- [TestFixtureSetUp]
- protected virtual void SetUpFixture()
- {
- //DateTime start = DateTime.Now;
+ /// <summary>
+ /// Initialize an sqlMap
+ /// </summary>
+ [TestFixtureSetUp]
+ protected virtual void SetUpFixture()
+ {
+ //DateTime start = DateTime.Now;
- DomSqlMapBuilder builder = new DomSqlMapBuilder();
+ DomSqlMapBuilder builder = new DomSqlMapBuilder();
#if dotnet2
NameValueCollection properties = new NameValueCollection();
- properties.Add("collection2Namespace","IBatisNet.DataMapper.Test.Domain.LineItemCollection2, IBatisNet.DataMapper.Test");
+ properties.Add("collection2Namespace", "IBatisNet.DataMapper.Test.Domain.LineItemCollection2, IBatisNet.DataMapper.Test");
properties.Add("nullableInt", "int?");
builder.Properties = properties;
@@ -81,7 +81,7 @@
{
sqlMap = builder.Configure(fileName);
}
- catch(Exception ex)
+ catch (Exception ex)
{
Exception e = ex;
while (e != null)
@@ -89,197 +89,209 @@
Console.WriteLine(e.Message);
Console.WriteLine(e.StackTrace.ToString());
e = e.InnerException;
-
+
}
- throw;
+ throw;
+ }
+
+ if (sqlMap.DataSource.DbProvider.Name.IndexOf("PostgreSql") >= 0)
+ {
+ BaseTest.ConvertKey = new KeyConvert(Lower);
+ }
+ else if (sqlMap.DataSource.DbProvider.Name.IndexOf("oracle") >= 0)
+ {
+ BaseTest.ConvertKey = new KeyConvert(Upper);
+ }
+ else
+ {
+ BaseTest.ConvertKey = new KeyConvert(Normal);
}
- if ( sqlMap.DataSource.DbProvider.Name.IndexOf("PostgreSql")>=0)
- {
- BaseTest.ConvertKey = new KeyConvert(Lower);
- }
- else if ( sqlMap.DataSource.DbProvider.Name.IndexOf("oracle")>=0)
- {
- BaseTest.ConvertKey = new KeyConvert(Upper);
- }
- else
- {
- BaseTest.ConvertKey = new KeyConvert(Normal);
- }
-
-// string loadTime = DateTime.Now.Subtract(start).ToString();
-// Console.WriteLine("Loading configuration time :"+loadTime);
- }
-
- /// <summary>
- /// Dispose the SqlMap
- /// </summary>
- [TestFixtureTearDown]
- protected virtual void TearDownFixture()
- {
- sqlMap = null;
- }
-
-// [SetUp]
-// public virtual void SetUp()
-// {
-// }
-//
-// [TearDown]
-// public virtual void TearDown()
-// {
-// }
-
- protected static string Normal(string key)
- {
- return key;
- }
-
- protected static string Upper(string key)
- {
- return key.ToUpper();
- }
-
- protected static string Lower(string key)
- {
- return key.ToLower();
- }
-
- /// <summary>
- /// Configure the SqlMap
- /// </summary>
- /// <remarks>
- /// Must verify ConfigureHandler signature.
- /// </remarks>
- /// <param name="obj">
- /// The reconfigured sqlMap.
- /// </param>
- protected static void Configure(object obj)
- {
- sqlMap = null;//(SqlMapper) obj;
- }
-
- /// <summary>
- /// Run a sql batch for the datasource.
- /// </summary>
- /// <param name="datasource">The datasource.</param>
- /// <param name="script">The sql batch</param>
- protected static void InitScript(IDataSource datasource, string script)
- {
- InitScript(datasource, script, true);
- }
-
- /// <summary>
- /// Run a sql batch for the datasource.
- /// </summary>
- /// <param name="datasource">The datasource.</param>
- /// <param name="script">The sql batch</param>
- /// <param name="doParse">parse out the statements in the sql script file.</param>
+ // string loadTime = DateTime.Now.Subtract(start).ToString();
+ // Console.WriteLine("Loading configuration time :"+loadTime);
+ }
+
+ /// <summary>
+ /// Dispose the SqlMap
+ /// </summary>
+ [TestFixtureTearDown]
+ protected virtual void TearDownFixture()
+ {
+ sqlMap = null;
+ }
+
+ // [SetUp]
+ // public virtual void SetUp()
+ // {
+ // }
+ //
+ // [TearDown]
+ // public virtual void TearDown()
+ // {
+ // }
+
+ protected static string Normal(string key)
+ {
+ return key;
+ }
+
+ protected static string Upper(string key)
+ {
+ return key.ToUpper();
+ }
+
+ protected static string Lower(string key)
+ {
+ return key.ToLower();
+ }
+
+ /// <summary>
+ /// Configure the SqlMap
+ /// </summary>
+ /// <remarks>
+ /// Must verify ConfigureHandler signature.
+ /// </remarks>
+ /// <param name="obj">
+ /// The reconfigured sqlMap.
+ /// </param>
+ protected static void Configure(object obj)
+ {
+ sqlMap = null;//(SqlMapper) obj;
+ }
+
+ /// <summary>
+ /// Run a sql batch for the datasource.
+ /// </summary>
+ /// <param name="datasource">The datasource.</param>
+ /// <param name="script">The sql batch</param>
+ protected static void InitScript(IDataSource datasource, string script)
+ {
+ InitScript(datasource, script, true);
+ }
+
+ /// <summary>
+ /// Run a sql batch for the datasource.
+ /// </summary>
+ /// <param name="datasource">The datasource.</param>
+ /// <param name="script">The sql batch</param>
+ /// <param name="doParse">parse out the statements in the sql script file.</param>
protected static void InitScript(IDataSource datasource, string script, bool doParse)
- {
- ScriptRunner runner = new ScriptRunner();
+ {
+ ScriptRunner runner = new ScriptRunner();
+
+ runner.RunScript(datasource, script, doParse);
+ }
- runner.RunScript(datasource, script, doParse);
- }
+ /// <summary>
+ /// Create a new account with id = 6
+ /// </summary>
+ /// <returns>An account</returns>
+ protected Account NewAccount6()
+ {
+ Account account = new Account();
+ account.Id = 6;
+ account.FirstName = "Calamity";
+ account.LastName = "Jane";
+ account.EmailAddress = "no_email@provided.com";
+ return account;
+ }
+
+ /// <summary>
+ /// Verify that the input account is equal to the account(id=1).
+ /// </summary>
+ /// <param name="account">An account object</param>
+ protected void AssertGilles(Account account)
+ {
+ Assert.AreEqual(5, account.Id, "account.Id");
+ Assert.AreEqual("Gilles", account.FirstName, "account.FirstName");
+ Assert.AreEqual("Bayon", account.LastName, "account.LastName");
+ Assert.AreEqual("gilles.bayon@nospam.org", account.EmailAddress, "account.EmailAddress");
+ }
+
+ /// <summary>
+ /// Verify that the input account is equal to the account(id=1).
+ /// </summary>
+ /// <param name="account">An account object</param>
+ protected void AssertAccount1(Account account)
+ {
+ Assert.AreEqual(1, account.Id, "account.Id");
+ Assert.AreEqual("Joe", account.FirstName, "account.FirstName");
+ Assert.AreEqual("Dalton", account.LastName, "account.LastName");
+ Assert.AreEqual("Joe.Dalton@somewhere.com", account.EmailAddress, "account.EmailAddress");
+ }
- /// <summary>
- /// Create a new account with id = 6
- /// </summary>
- /// <returns>An account</returns>
- protected Account NewAccount6()
- {
- Account account = new Account();
- account.Id = 6;
- account.FirstName = "Calamity";
- account.LastName = "Jane";
- account.EmailAddress = "no_email@provided.com";
- return account;
- }
-
- /// <summary>
- /// Verify that the input account is equal to the account(id=1).
- /// </summary>
- /// <param name="account">An account object</param>
- protected void AssertAccount1(Account account)
- {
- Assert.AreEqual(1, account.Id, "account.Id");
- Assert.AreEqual("Joe", account.FirstName, "account.FirstName");
- Assert.AreEqual("Dalton", account.LastName, "account.LastName");
- Assert.AreEqual("Joe.Dalton@somewhere.com", account.EmailAddress, "account.EmailAddress");
- }
-
- /// <summary>
- /// Verify that the input account is equal to the account(id=1).
- /// </summary>
- /// <param name="account">An account as hashtable</param>
- protected void AssertAccount1AsHashtable(Hashtable account)
- {
- Assert.AreEqual(1, (int) account["Id"], "account.Id");
- Assert.AreEqual("Joe", (string) account["FirstName"], "account.FirstName");
- Assert.AreEqual("Dalton", (string) account["LastName"], "account.LastName");
- Assert.AreEqual("Joe.Dalton@somewhere.com", (string) account["EmailAddress"], "account.EmailAddress");
- }
-
- /// <summary>
- /// Verify that the input account is equal to the account(id=1).
- /// </summary>
- /// <param name="account">An account as hashtable</param>
- protected void AssertAccount1AsHashtableForResultClass(Hashtable account)
- {
- Assert.AreEqual(1, (int) account[BaseTest.ConvertKey("Id")], "account.Id");
- Assert.AreEqual("Joe", (string) account[BaseTest.ConvertKey("FirstName")], "account.FirstName");
- Assert.AreEqual("Dalton", (string) account[BaseTest.ConvertKey("LastName")], "account.LastName");
- Assert.AreEqual("Joe.Dalton@somewhere.com", (string) account[BaseTest.ConvertKey("EmailAddress")], "account.EmailAddress");
- }
-
- /// <summary>
- /// Verify that the input account is equal to the account(id=6).
- /// </summary>
- /// <param name="account">An account object</param>
- protected void AssertAccount6(Account account)
- {
- Assert.AreEqual(6, account.Id, "account.Id");
- Assert.AreEqual("Calamity", account.FirstName, "account.FirstName");
- Assert.AreEqual("Jane", account.LastName, "account.LastName");
- Assert.IsNull(account.EmailAddress, "account.EmailAddress");
- }
-
- /// <summary>
- /// Verify that the input order is equal to the order(id=1).
- /// </summary>
- /// <param name="order">An order object.</param>
- protected void AssertOrder1(Order order)
- {
- DateTime date = new DateTime(2003, 2, 15, 8, 15, 00);
-
- Assert.AreEqual(1, order.Id, "order.Id");
- Assert.AreEqual(date.ToString(), order.Date.ToString(), "order.Date");
- Assert.AreEqual("VISA", order.CardType, "order.CardType");
- Assert.AreEqual("999999999999", order.CardNumber, "order.CardNumber");
- Assert.AreEqual("05/03", order.CardExpiry, "order.CardExpiry");
- Assert.AreEqual("11 This Street", order.Street, "order.Street");
- Assert.AreEqual("Victoria", order.City, "order.City");
- Assert.AreEqual("BC", order.Province, "order.Id");
- Assert.AreEqual("C4B 4F4", order.PostalCode, "order.PostalCode");
- }
-
- /// <summary>
- /// Verify that the input order is equal to the order(id=1).
- /// </summary>
- /// <param name="order">An order as hashtable.</param>
- protected void AssertOrder1AsHashtable(Hashtable order)
- {
- DateTime date = new DateTime(2003, 2, 15, 8, 15, 00);
-
- Assert.AreEqual(1, (int) order["Id"], "order.Id");
- Assert.AreEqual(date.ToString(), ((DateTime) order["Date"]).ToString(), "order.Date");
- Assert.AreEqual("VISA", (string) order["CardType"], "order.CardType");
- Assert.AreEqual("999999999999", (string) order["CardNumber"], "order.CardNumber");
- Assert.AreEqual("05/03", (string) order["CardExpiry"], "order.CardExpiry");
- Assert.AreEqual("11 This Street", (string) order["Street"], "order.Street");
- Assert.AreEqual("Victoria", (string) order["City"], "order.City");
- Assert.AreEqual("BC", (string) order["Province"], "order.Id");
- Assert.AreEqual("C4B 4F4", (string) order["PostalCode"], "order.PostalCode");
- }
- }
+ /// <summary>
+ /// Verify that the input account is equal to the account(id=1).
+ /// </summary>
+ /// <param name="account">An account as hashtable</param>
+ protected void AssertAccount1AsHashtable(Hashtable account)
+ {
+ Assert.AreEqual(1, (int)account["Id"], "account.Id");
+ Assert.AreEqual("Joe", (string)account["FirstName"], "account.FirstName");
+ Assert.AreEqual("Dalton", (string)account["LastName"], "account.LastName");
+ Assert.AreEqual("Joe.Dalton@somewhere.com", (string)account["EmailAddress"], "account.EmailAddress");
+ }
+
+ /// <summary>
+ /// Verify that the input account is equal to the account(id=1).
+ /// </summary>
+ /// <param name="account">An account as hashtable</param>
+ protected void AssertAccount1AsHashtableForResultClass(Hashtable account)
+ {
+ Assert.AreEqual(1, (int)account[BaseTest.ConvertKey("Id")], "account.Id");
+ Assert.AreEqual("Joe", (string)account[BaseTest.ConvertKey("FirstName")], "account.FirstName");
+ Assert.AreEqual("Dalton", (string)account[BaseTest.ConvertKey("LastName")], "account.LastName");
+ Assert.AreEqual("Joe.Dalton@somewhere.com", (string)account[BaseTest.ConvertKey("EmailAddress")], "account.EmailAddress");
+ }
+
+ /// <summary>
+ /// Verify that the input account is equal to the account(id=6).
+ /// </summary>
+ /// <param name="account">An account object</param>
+ protected void AssertAccount6(Account account)
+ {
+ Assert.AreEqual(6, account.Id, "account.Id");
+ Assert.AreEqual("Calamity", account.FirstName, "account.FirstName");
+ Assert.AreEqual("Jane", account.LastName, "account.LastName");
+ Assert.IsNull(account.EmailAddress, "account.EmailAddress");
+ }
+
+ /// <summary>
+ /// Verify that the input order is equal to the order(id=1).
+ /// </summary>
+ /// <param name="order">An order object.</param>
+ protected void AssertOrder1(Order order)
+ {
+ DateTime date = new DateTime(2003, 2, 15, 8, 15, 00);
+
+ Assert.AreEqual(1, order.Id, "order.Id");
+ Assert.AreEqual(date.ToString(), order.Date.ToString(), "order.Date");
+ Assert.AreEqual("VISA", order.CardType, "order.CardType");
+ Assert.AreEqual("999999999999", order.CardNumber, "order.CardNumber");
+ Assert.AreEqual("05/03", order.CardExpiry, "order.CardExpiry");
+ Assert.AreEqual("11 This Street", order.Street, "order.Street");
+ Assert.AreEqual("Victoria", order.City, "order.City");
+ Assert.AreEqual("BC", order.Province, "order.Id");
+ Assert.AreEqual("C4B 4F4", order.PostalCode, "order.PostalCode");
+ }
+
+ /// <summary>
+ /// Verify that the input order is equal to the order(id=1).
+ /// </summary>
+ /// <param name="order">An order as hashtable.</param>
+ protected void AssertOrder1AsHashtable(Hashtable order)
+ {
+ DateTime date = new DateTime(2003, 2, 15, 8, 15, 00);
+
+ Assert.AreEqual(1, (int)order["Id"], "order.Id");
+ Assert.AreEqual(date.ToString(), ((DateTime)order["Date"]).ToString(), "order.Date");
+ Assert.AreEqual("VISA", (string)order["CardType"], "order.CardType");
+ Assert.AreEqual("999999999999", (string)order["CardNumber"], "order.CardNumber");
+ Assert.AreEqual("05/03", (string)order["CardExpiry"], "order.CardExpiry");
+ Assert.AreEqual("11 This Street", (string)order["Street"], "order.Street");
+ Assert.AreEqual("Victoria", (string)order["City"], "order.City");
+ Assert.AreEqual("BC", (string)order["Province"], "order.Id");
+ Assert.AreEqual("C4B 4F4", (string)order["PostalCode"], "order.PostalCode");
+ }
+ }
}
Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicPrependTest.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicPrependTest.cs?view=diff&rev=464983&r1=464982&r2=464983
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicPrependTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicPrependTest.cs Tue Oct 17 11:05:38 2006
@@ -11,464 +11,464 @@
namespace IBatisNet.DataMapper.Test.NUnit.SqlMapTests
{
- /// <summary>
- /// Summary description for DynamicPrependTest.
- /// </summary>
- [TestFixture]
- public class DynamicPrependTest : BaseTest
- {
- #region SetUp & TearDown
-
- /// <summary>
- /// SetUp
- /// </summary>
- [SetUp]
- public void Init()
- {
- InitScript( sqlMap.DataSource, ScriptDirectory + "account-init.sql" );
- InitScript( sqlMap.DataSource, ScriptDirectory + "account-procedure.sql", false );
- InitScript( sqlMap.DataSource, ScriptDirectory + "category-init.sql" );
- InitScript( sqlMap.DataSource, ScriptDirectory + "order-init.sql" );
- InitScript( sqlMap.DataSource, ScriptDirectory + "line-item-init.sql" );
- InitScript( sqlMap.DataSource, ScriptDirectory + "other-init.sql" );
- }
-
- /// <summary>
- /// TearDown
- /// </summary>
- [TearDown]
- public void Dispose()
- { /* ... */ }
-
- #endregion
-
- #region Dynamic Prepend tests
-
- /// <summary>
- /// Test Dynamic With Prepend (1)
- /// </summary>
- [Test]
- public void TestDynamicJIRA168()
- {
- Query query = new Query();
- Account account = new Account();
- account.Id = 1;
- query.DataObject = account;
-
- account = (Account) sqlMap.QueryForObject("DynamicJIRA168", query);
-
- AssertAccount1(account);
- }
-
- /// <summary>
- /// Test Iterate With Prepend (1)
- /// </summary>
- [Test]
- public void TestIterateWithPrepend1()
- {
- IList parameters = new ArrayList();
- parameters.Add(1);
- parameters.Add(2);
- parameters.Add(3);
-
- IList list = sqlMap.QueryForList("DynamicIterateWithPrepend1", parameters);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(3, list.Count);
- }
-
- /// <summary>
- /// Test Iterate With Prepend (2)
- /// </summary>
- [Test]
- public void TestIterateWithPrepend2()
- {
- IList parameters = new ArrayList();
- parameters.Add(1);
- parameters.Add(2);
- parameters.Add(3);
-
- IList list = sqlMap.QueryForList("DynamicIterateWithPrepend2", parameters);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(3, list.Count);
- }
-
- /// <summary>
- /// Test Iterate With Prepend (3)
- /// </summary>
- [Test]
- public void TestIterateWithPrepend3()
- {
- IList parameters = new ArrayList();
- parameters.Add(1);
- parameters.Add(2);
- parameters.Add(3);
-
- IList list = sqlMap.QueryForList("DynamicIterateWithPrepend3", parameters);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(3, list.Count);
- }
-
- /// <summary>
- /// Test Dynamic With Prepend (1)
- /// </summary>
- [Test]
- public void TestDynamicWithPrepend1()
- {
- Account account = new Account();
- account.Id = 1;
-
- account = (Account) sqlMap.QueryForObject("DynamicWithPrepend", account);
-
- AssertAccount1(account);
- }
-
- /// <summary>
- /// Test Dynamic With Prepend (2)
- /// </summary>
- [Test]
- public void TestDynamicWithPrepend2()
- {
- Account account = new Account();
- account.Id = 1;
- account.FirstName = "Joe";
-
- account = (Account) sqlMap.QueryForObject("DynamicWithPrepend", account);
- AssertAccount1(account);
-
- }
-
- /// <summary>
- /// Test Dynamic With Prepend (3)
- /// </summary>
- [Test]
- public void TestDynamicWithPrepend3()
- {
- Account account = new Account();
- account.Id = 1;
- account.FirstName = "Joe";
- account.LastName = "Dalton";
-
- account = (Account) sqlMap.QueryForObject("DynamicWithPrepend", account);
- AssertAccount1(account);
- }
-
- /// <summary>
- /// Test Dynamic With Prepend (4)
- /// </summary>
- [Test]
- public void TestDynamicWithPrepend4()
- {
- IList list = sqlMap.QueryForList("DynamicWithPrepend", null);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test Iterate With Two Prepends
- /// </summary>
- [Test]
- public void TestIterateWithTwoPrepends()
- {
- Account account = new Account();
- account.Id = 1;
- account.FirstName = "Joe";
-
- account = sqlMap.QueryForObject("DynamicWithPrepend", account) as Account;
- Assert.IsNotNull(account);
- AssertAccount1(account);
-
- IList list = sqlMap.QueryForList("DynamicWithTwoDynamicElements", account);
- AssertAccount1((Account) list[0]);
- }
-
- /// <summary>
- /// Test Complex Dynamic
- /// </summary>
- [Test]
- public void TestComplexDynamic()
- {
- Account account = new Account();
- account.Id = 1;
- account.FirstName = "Joe";
- account.LastName = "Dalton";
-
- IList list = sqlMap.QueryForList("ComplexDynamicStatement", account);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test GetAccounts Dynamic
- /// </summary>
- /// <remarks>
- /// Bug Fix http://sourceforge.net/forum/message.php?msg_id=2646964
- /// </remarks>
- [Test]
- public void TestGetAccountsDynamic()
- {
- Hashtable map = new Hashtable();
- map.Add("MaximumAllowed",100);
-
- map.Add("FirstName","Joe");
- map.Add("LastName","Dalton");
- map.Add("EmailAddress","Joe.Dalton@somewhere.com");
-
- IList list = sqlMap.QueryForList("GetAccountsDynamic", map);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsEqual with HashTable
- /// </summary>
- /// <remarks>
- /// Bug Fix https://sourceforge.net/forum/message.php?msg_id=2840259
- /// </remarks>
- [Test]
- public void TestDynamicSelectByIntLong()
- {
- Hashtable search = new Hashtable();
- search.Add("year", 0);
- search.Add("areaid", 0);
-
- IList list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
-
- Assert.AreEqual(2, list.Count);
- Assert.AreEqual(1, (list[0] as Other).Int);
- Assert.AreEqual(8888888, (list[0] as Other).Long);
- Assert.AreEqual(false, (list[0] as Other).Bool);
-
- Assert.AreEqual(2, (list[1] as Other).Int);
- Assert.AreEqual(9999999999, (list[1] as Other).Long);
- Assert.AreEqual(true, (list[1] as Other).Bool);
-
- //----------------------
- search.Clear();
- search.Add("year", 1);
- search.Add("areaid", 0);
-
- list= null;
- list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
-
- Assert.AreEqual(1, list.Count);
- //----------------------
- search.Clear();
- search.Add("year", 0);
- search.Add("areaid", 9999999999);
-
- list= null;
- list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
-
- Assert.AreEqual(1, list.Count);
- Assert.AreEqual(2, (list[0] as Other).Int);
- //----------------------
- search.Clear();
- search.Add("year", 2);
- search.Add("areaid", 9999999999);
-
- list= null;
- list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
-
- Assert.AreEqual(1, list.Count);
- Assert.AreEqual(2, (list[0] as Other).Int);
- Assert.AreEqual(9999999999, (list[0] as Other).Long);
- Assert.AreEqual(true, (list[0] as Other).Bool);
- }
-
- /// <summary>
- /// Test Dynamic With GUID
- /// </summary>
- [Test]
- public void TestDynamicWithGUID()
- {
- Category category = new Category();
- category.Name = "toto";
- category.Guid = Guid.Empty;
-
- int key = (int)sqlMap.Insert("InsertCategory", category);
-
- category = new Category();
- category.Name = "titi";
- category.Guid = Guid.NewGuid();
-
- Category categoryTest = (Category)sqlMap.QueryForObject("DynamicGuid", category);
- Assert.IsNull(categoryTest);
-
- category = new Category();
- category.Name = "titi";
- category.Guid = Guid.Empty;
-
- categoryTest = (Category)sqlMap.QueryForObject("DynamicGuid", category);
- Assert.IsNotNull(categoryTest);
- }
-
- /// <summary>
- /// Test JIRA 11
- /// </summary>
- /// <remarks>
- /// To test only for MSSQL with .NET SqlClient provider
- /// </remarks>
- [Test]
- [Category("MSSQL")]
- public void TestJIRA11()
- {
- Search search = new Search();
- search.NumberSearch = 123;
- search.StartDate = new DateTime(2004,12,25);
- search.Operande = "like";
- search.StartDateAnd = true;
-
- CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;
- Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-FR");
-
- IList list = sqlMap.QueryForList("Jira-IBATISNET-11", search);
-
- Thread.CurrentThread.CurrentCulture = currentCulture;
-
- Assert.AreEqual(0, list.Count);
- }
-
- /// <summary>
- /// We've been using the stable version of Ibatis for a while and recently
- /// upgraded to the latest alpha version 1.1.0.458. The old version was
- /// able to handle mapping the .Net bool type to SqlServer's Bit column.
- /// When we run sql maps that contain a bool property, we now get an
- /// exception.
- /// </summary>
- /// <remarks>
- /// No problems !!
- /// </remarks>
- [Test]
- public void TestDynamicSelectByBool()
- {
- Other other = new Other();
- other.Bool = true;
-
- Other anOther = sqlMap.QueryForObject("DynamicSelectByBool", other) as Other;
-
- Assert.IsNotNull( anOther );
- Assert.AreEqual(2, anOther.Int);
- Assert.AreEqual(9999999999, anOther.Long);
- Assert.AreEqual(true, anOther.Bool);
-
- other.Bool = false;
- anOther = sqlMap.QueryForObject("DynamicSelectByBool", other) as Other;
-
- Assert.IsNotNull( anOther );
- Assert.AreEqual(1, anOther.Int);
- Assert.AreEqual(8888888, anOther.Long);
- Assert.AreEqual(false, anOther.Bool);
-
- }
-
- /// <summary>
- /// Test JIRA 29
- /// </summary>
- [Test]
- [Category("MSSQL")]
- public void TestJIRA29()
- {
- Hashtable param = new Hashtable();
- param["Foo"] = new DateTime(2003, 2, 15, 8, 15, 0);
-
- Order order = sqlMap.QueryForObject("SelectOrderByDate", param) as Order;
-
- Assert.IsNotNull(order);
-
- Assert.AreEqual(1, order.Id);
-
- CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;
- Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
-
- order = sqlMap.QueryForObject("SelectOrderByDateDynamic", param) as Order;
-
- Thread.CurrentThread.CurrentCulture = currentCulture;
-
- Assert.IsNotNull(order);
-
- Assert.AreEqual(1, order.Id);
- }
-
- /// <summary>
- /// Test JIRA 29
- /// </summary>
- [Test]
- public void Test2ForJIRA29()
- {
- // init
- Account account = new Account();
-
- account.Id = 1234;
- account.FirstName = "#The Pound Signs#";
- account.LastName = "Gilles";
- account.EmailAddress = "a.a@somewhere.com";
-
- sqlMap.Insert("InsertAccountViaInlineParameters", account);
-
- // test
- Hashtable param = new Hashtable();
- param["AccountName"] = "The Pound Signs";
-
- Account testAccount = sqlMap.QueryForObject("SelectAccountJIRA29", param) as Account;
-
- Assert.IsNotNull(testAccount);
- Assert.AreEqual(1234, testAccount.Id);
- Assert.AreEqual("#The Pound Signs#", testAccount.FirstName);
- }
-
- /// <summary>
- /// Test JIRA 29
- /// </summary>
- [Test]
- public void Test3ForJIRA29()
- {
- // init
- Account account = new Account();
-
- account.Id = 1234;
- account.FirstName = "#The Pound Signs#";
- account.LastName = "Gilles";
- account.EmailAddress = "a.a@somewhere.com";
-
- sqlMap.Insert("InsertAccountViaInlineParameters", account);
-
- // test
- Hashtable param = new Hashtable();
- param["Foo"] = "The Pound Signs";
-
- Account testAccount = sqlMap.QueryForObject("SelectAccountJIRA29-2", param) as Account;
-
- Assert.IsNotNull(testAccount);
- Assert.AreEqual(1234, testAccount.Id);
- Assert.AreEqual("#The Pound Signs#", testAccount.FirstName);
- }
-
- [Test]
- public void TestSelectKeyWithDynamicSql()
- {
- Account account = new Account();
- account.Id = 99998;
- account.FirstName = "R";
- account.LastName = "G";
-
- Hashtable param = new Hashtable(2);
- param["Account"] = account;
- param["AccountsTableName"] = "Accounts";
- object selectKeyValue = sqlMap.Insert("SelectKeyWithDynamicSql", param);
-
- Assert.IsNotNull(selectKeyValue);
- Assert.AreEqual(99998, Convert.ToInt32(selectKeyValue));
-
- Assert.IsTrue(param.ContainsKey("AccountId"));
- Assert.AreEqual(99998, (int)param["AccountId"]);
- }
- #endregion
+ /// <summary>
+ /// Summary description for DynamicPrependTest.
+ /// </summary>
+ [TestFixture]
+ public class DynamicPrependTest : BaseTest
+ {
+ #region SetUp & TearDown
+
+ /// <summary>
+ /// SetUp
+ /// </summary>
+ [SetUp]
+ public void Init()
+ {
+ InitScript(sqlMap.DataSource, ScriptDirectory + "account-init.sql");
+ InitScript(sqlMap.DataSource, ScriptDirectory + "account-procedure.sql", false);
+ InitScript(sqlMap.DataSource, ScriptDirectory + "category-init.sql");
+ InitScript(sqlMap.DataSource, ScriptDirectory + "order-init.sql");
+ InitScript(sqlMap.DataSource, ScriptDirectory + "line-item-init.sql");
+ InitScript(sqlMap.DataSource, ScriptDirectory + "other-init.sql");
+ }
+
+ /// <summary>
+ /// TearDown
+ /// </summary>
+ [TearDown]
+ public void Dispose()
+ { /* ... */ }
+
+ #endregion
+
+ #region Dynamic Prepend tests
+
+ /// <summary>
+ /// Test Dynamic With Prepend (1)
+ /// </summary>
+ [Test]
+ public void TestDynamicJIRA168()
+ {
+ Query query = new Query();
+ Account account = new Account();
+ account.Id = 1;
+ query.DataObject = account;
+
+ account = (Account)sqlMap.QueryForObject("DynamicJIRA168", query);
+
+ AssertAccount1(account);
+ }
+
+ /// <summary>
+ /// Test Iterate With Prepend (1)
+ /// </summary>
+ [Test]
+ public void TestIterateWithPrepend1()
+ {
+ IList parameters = new ArrayList();
+ parameters.Add(1);
+ parameters.Add(2);
+ parameters.Add(3);
+
+ IList list = sqlMap.QueryForList("DynamicIterateWithPrepend1", parameters);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(3, list.Count);
+ }
+
+ /// <summary>
+ /// Test Iterate With Prepend (2)
+ /// </summary>
+ [Test]
+ public void TestIterateWithPrepend2()
+ {
+ IList parameters = new ArrayList();
+ parameters.Add(1);
+ parameters.Add(2);
+ parameters.Add(3);
+
+ IList list = sqlMap.QueryForList("DynamicIterateWithPrepend2", parameters);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(3, list.Count);
+ }
+
+ /// <summary>
+ /// Test Iterate With Prepend (3)
+ /// </summary>
+ [Test]
+ public void TestIterateWithPrepend3()
+ {
+ IList parameters = new ArrayList();
+ parameters.Add(1);
+ parameters.Add(2);
+ parameters.Add(3);
+
+ IList list = sqlMap.QueryForList("DynamicIterateWithPrepend3", parameters);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(3, list.Count);
+ }
+
+ /// <summary>
+ /// Test Dynamic With Prepend (1)
+ /// </summary>
+ [Test]
+ public void TestDynamicWithPrepend1()
+ {
+ Account account = new Account();
+ account.Id = 1;
+
+ account = (Account)sqlMap.QueryForObject("DynamicWithPrepend", account);
+
+ AssertAccount1(account);
+ }
+
+ /// <summary>
+ /// Test Dynamic With Prepend (2)
+ /// </summary>
+ [Test]
+ public void TestDynamicWithPrepend2()
+ {
+ Account account = new Account();
+ account.Id = 1;
+ account.FirstName = "Joe";
+
+ account = (Account)sqlMap.QueryForObject("DynamicWithPrepend", account);
+ AssertAccount1(account);
+
+ }
+
+ /// <summary>
+ /// Test Dynamic With Prepend (3)
+ /// </summary>
+ [Test]
+ public void TestDynamicWithPrepend3()
+ {
+ Account account = new Account();
+ account.Id = 1;
+ account.FirstName = "Joe";
+ account.LastName = "Dalton";
+
+ account = (Account)sqlMap.QueryForObject("DynamicWithPrepend", account);
+ AssertAccount1(account);
+ }
+
+ /// <summary>
+ /// Test Dynamic With Prepend (4)
+ /// </summary>
+ [Test]
+ public void TestDynamicWithPrepend4()
+ {
+ IList list = sqlMap.QueryForList("DynamicWithPrepend", null);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test Iterate With Two Prepends
+ /// </summary>
+ [Test]
+ public void TestIterateWithTwoPrepends()
+ {
+ Account account = new Account();
+ account.Id = 1;
+ account.FirstName = "Joe";
+
+ account = sqlMap.QueryForObject("DynamicWithPrepend", account) as Account;
+ Assert.IsNotNull(account);
+ AssertAccount1(account);
+
+ IList list = sqlMap.QueryForList("DynamicWithTwoDynamicElements", account);
+ AssertAccount1((Account)list[0]);
+ }
+
+ /// <summary>
+ /// Test Complex Dynamic
+ /// </summary>
+ [Test]
+ public void TestComplexDynamic()
+ {
+ Account account = new Account();
+ account.Id = 1;
+ account.FirstName = "Joe";
+ account.LastName = "Dalton";
+
+ IList list = sqlMap.QueryForList("ComplexDynamicStatement", account);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test GetAccounts Dynamic
+ /// </summary>
+ /// <remarks>
+ /// Bug Fix http://sourceforge.net/forum/message.php?msg_id=2646964
+ /// </remarks>
+ [Test]
+ public void TestGetAccountsDynamic()
+ {
+ Hashtable map = new Hashtable();
+ map.Add("MaximumAllowed", 100);
+
+ map.Add("FirstName", "Joe");
+ map.Add("LastName", "Dalton");
+ map.Add("EmailAddress", "Joe.Dalton@somewhere.com");
+
+ IList list = sqlMap.QueryForList("GetAccountsDynamic", map);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsEqual with HashTable
+ /// </summary>
+ /// <remarks>
+ /// Bug Fix https://sourceforge.net/forum/message.php?msg_id=2840259
+ /// </remarks>
+ [Test]
+ public void TestDynamicSelectByIntLong()
+ {
+ Hashtable search = new Hashtable();
+ search.Add("year", 0);
+ search.Add("areaid", 0);
+
+ IList list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
+
+ Assert.AreEqual(2, list.Count);
+ Assert.AreEqual(1, (list[0] as Other).Int);
+ Assert.AreEqual(8888888, (list[0] as Other).Long);
+ Assert.AreEqual(false, (list[0] as Other).Bool);
+
+ Assert.AreEqual(2, (list[1] as Other).Int);
+ Assert.AreEqual(9999999999, (list[1] as Other).Long);
+ Assert.AreEqual(true, (list[1] as Other).Bool);
+
+ //----------------------
+ search.Clear();
+ search.Add("year", 1);
+ search.Add("areaid", 0);
+
+ list = null;
+ list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
+
+ Assert.AreEqual(1, list.Count);
+ //----------------------
+ search.Clear();
+ search.Add("year", 0);
+ search.Add("areaid", 9999999999);
+
+ list = null;
+ list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
+
+ Assert.AreEqual(1, list.Count);
+ Assert.AreEqual(2, (list[0] as Other).Int);
+ //----------------------
+ search.Clear();
+ search.Add("year", 2);
+ search.Add("areaid", 9999999999);
+
+ list = null;
+ list = sqlMap.QueryForList("DynamicSelectByIntLong", search);
+
+ Assert.AreEqual(1, list.Count);
+ Assert.AreEqual(2, (list[0] as Other).Int);
+ Assert.AreEqual(9999999999, (list[0] as Other).Long);
+ Assert.AreEqual(true, (list[0] as Other).Bool);
+ }
+
+ /// <summary>
+ /// Test Dynamic With GUID
+ /// </summary>
+ [Test]
+ public void TestDynamicWithGUID()
+ {
+ Category category = new Category();
+ category.Name = "toto";
+ category.Guid = Guid.Empty;
+
+ int key = (int)sqlMap.Insert("InsertCategory", category);
+
+ category = new Category();
+ category.Name = "titi";
+ category.Guid = Guid.NewGuid();
+
+ Category categoryTest = (Category)sqlMap.QueryForObject("DynamicGuid", category);
+ Assert.IsNull(categoryTest);
+
+ category = new Category();
+ category.Name = "titi";
+ category.Guid = Guid.Empty;
+
+ categoryTest = (Category)sqlMap.QueryForObject("DynamicGuid", category);
+ Assert.IsNotNull(categoryTest);
+ }
+
+ /// <summary>
+ /// Test JIRA 11
+ /// </summary>
+ /// <remarks>
+ /// To test only for MSSQL with .NET SqlClient provider
+ /// </remarks>
+ [Test]
+ [Category("MSSQL")]
+ public void TestJIRA11()
+ {
+ Search search = new Search();
+ search.NumberSearch = 123;
+ search.StartDate = new DateTime(2004, 12, 25);
+ search.Operande = "like";
+ search.StartDateAnd = true;
+
+ CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;
+ Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-FR");
+
+ IList list = sqlMap.QueryForList("Jira-IBATISNET-11", search);
+
+ Thread.CurrentThread.CurrentCulture = currentCulture;
+
+ Assert.AreEqual(0, list.Count);
+ }
+
+ /// <summary>
+ /// We've been using the stable version of Ibatis for a while and recently
+ /// upgraded to the latest alpha version 1.1.0.458. The old version was
+ /// able to handle mapping the .Net bool type to SqlServer's Bit column.
+ /// When we run sql maps that contain a bool property, we now get an
+ /// exception.
+ /// </summary>
+ /// <remarks>
+ /// No problems !!
+ /// </remarks>
+ [Test]
+ public void TestDynamicSelectByBool()
+ {
+ Other other = new Other();
+ other.Bool = true;
+
+ Other anOther = sqlMap.QueryForObject("DynamicSelectByBool", other) as Other;
+
+ Assert.IsNotNull(anOther);
+ Assert.AreEqual(2, anOther.Int);
+ Assert.AreEqual(9999999999, anOther.Long);
+ Assert.AreEqual(true, anOther.Bool);
+
+ other.Bool = false;
+ anOther = sqlMap.QueryForObject("DynamicSelectByBool", other) as Other;
+
+ Assert.IsNotNull(anOther);
+ Assert.AreEqual(1, anOther.Int);
+ Assert.AreEqual(8888888, anOther.Long);
+ Assert.AreEqual(false, anOther.Bool);
+
+ }
+
+ /// <summary>
+ /// Test JIRA 29
+ /// </summary>
+ [Test]
+ [Category("MSSQL")]
+ public void TestJIRA29()
+ {
+ Hashtable param = new Hashtable();
+ param["Foo"] = new DateTime(2003, 2, 17, 8, 15, 0);
+
+ Order order = sqlMap.QueryForObject("SelectOrderByDate", param) as Order;
+
+ Assert.IsNotNull(order);
+
+ Assert.AreEqual(11, order.Id);
+
+ CultureInfo currentCulture = Thread.CurrentThread.CurrentCulture;
+ Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
+
+ order = sqlMap.QueryForObject("SelectOrderByDateDynamic", param) as Order;
+
+ Thread.CurrentThread.CurrentCulture = currentCulture;
+
+ Assert.IsNotNull(order);
+
+ Assert.AreEqual(11, order.Id);
+ }
+
+ /// <summary>
+ /// Test JIRA 29
+ /// </summary>
+ [Test]
+ public void Test2ForJIRA29()
+ {
+ // init
+ Account account = new Account();
+
+ account.Id = 1234;
+ account.FirstName = "#The Pound Signs#";
+ account.LastName = "Gilles";
+ account.EmailAddress = "a.a@somewhere.com";
+
+ sqlMap.Insert("InsertAccountViaInlineParameters", account);
+
+ // test
+ Hashtable param = new Hashtable();
+ param["AccountName"] = "The Pound Signs";
+
+ Account testAccount = sqlMap.QueryForObject("SelectAccountJIRA29", param) as Account;
+
+ Assert.IsNotNull(testAccount);
+ Assert.AreEqual(1234, testAccount.Id);
+ Assert.AreEqual("#The Pound Signs#", testAccount.FirstName);
+ }
+
+ /// <summary>
+ /// Test JIRA 29
+ /// </summary>
+ [Test]
+ public void Test3ForJIRA29()
+ {
+ // init
+ Account account = new Account();
+
+ account.Id = 1234;
+ account.FirstName = "#The Pound Signs#";
+ account.LastName = "Gilles";
+ account.EmailAddress = "a.a@somewhere.com";
+
+ sqlMap.Insert("InsertAccountViaInlineParameters", account);
+
+ // test
+ Hashtable param = new Hashtable();
+ param["Foo"] = "The Pound Signs";
+
+ Account testAccount = sqlMap.QueryForObject("SelectAccountJIRA29-2", param) as Account;
+
+ Assert.IsNotNull(testAccount);
+ Assert.AreEqual(1234, testAccount.Id);
+ Assert.AreEqual("#The Pound Signs#", testAccount.FirstName);
+ }
+
+ [Test]
+ public void TestSelectKeyWithDynamicSql()
+ {
+ Account account = new Account();
+ account.Id = 99998;
+ account.FirstName = "R";
+ account.LastName = "G";
+
+ Hashtable param = new Hashtable(2);
+ param["Account"] = account;
+ param["AccountsTableName"] = "Accounts";
+ object selectKeyValue = sqlMap.Insert("SelectKeyWithDynamicSql", param);
+
+ Assert.IsNotNull(selectKeyValue);
+ Assert.AreEqual(99998, Convert.ToInt32(selectKeyValue));
+
+ Assert.IsTrue(param.ContainsKey("AccountId"));
+ Assert.AreEqual(99998, (int)param["AccountId"]);
+ }
+ #endregion
- }
+ }
}
Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicTest.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicTest.cs?view=diff&rev=464983&r1=464982&r2=464983
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/DynamicTest.cs Tue Oct 17 11:05:38 2006
@@ -9,448 +9,448 @@
namespace IBatisNet.DataMapper.Test.NUnit.SqlMapTests
{
- /// <summary>
- /// Summary description for DynamicTest.
- /// </summary>
- [TestFixture]
- public class DynamicTest : BaseTest
- {
- #region SetUp & TearDown
-
- /// <summary>
- /// SetUp
- /// </summary>
- [SetUp]
- public void Init()
- {
- InitScript( sqlMap.DataSource, ScriptDirectory+"account-init.sql" );
- InitScript( sqlMap.DataSource, ScriptDirectory+"account-procedure.sql", false );
- InitScript( sqlMap.DataSource, ScriptDirectory+"order-init.sql" );
- InitScript( sqlMap.DataSource, ScriptDirectory+"line-item-init.sql" );
- }
-
- /// <summary>
- /// TearDown
- /// </summary>
- [TearDown]
- public void Dispose()
- { /* ... */ }
-
- #endregion
-
- #region Dynamic tests
-
- /// <summary>
- /// Test Dynamic Sql On Column Selection
- /// JIRA IBATISNET-114
- /// </summary>
- [Test]
- public void TestDynamicSqlOnColumnSelection()
- {
- Account paramAccount = new Account();
- Account resultAccount = new Account();
- IList list = null;
-
- paramAccount.LastName = "Dalton";
- list = sqlMap.QueryForList("DynamicSqlOnColumnSelection", paramAccount);
- resultAccount = (Account)list[0];
- AssertAccount1( resultAccount );
- Assert.AreEqual(5, list.Count);
-
- paramAccount.LastName = "Bayon";
- list = sqlMap.QueryForList("DynamicSqlOnColumnSelection", paramAccount);
- resultAccount = (Account)list[0];
- Assert.IsNull(resultAccount.FirstName);
- Assert.IsNull(resultAccount.LastName);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsNotEmpty True
- /// </summary>
- [Test]
- public void TestIsNotEmptyTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsNotEmpty", "Joe");
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsNotEmpty False
- /// </summary>
- [Test]
- public void TestIsNotEmptyFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsNotEmpty", "");
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsEqual true
- /// </summary>
- [Test]
- public void TestIsEqualTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsEqual", "Joe");
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsEqual False
- /// </summary>
- [Test]
- public void TestIsEqualFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsEqual", "BLAH!");
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsGreater true
- /// </summary>
- [Test]
- public void TestIsGreaterTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsGreater", 5);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsGreater false
- /// </summary>
- [Test]
- public void TestIsGreaterFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsGreater", 1);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsGreaterEqual true
- /// </summary>
- [Test]
- public void TestIsGreaterEqualTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsGreaterEqual", 3);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsGreaterEqual false
- /// </summary>
- [Test]
- public void TestIsGreaterEqualFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsGreaterEqual", 1);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsLess true
- /// </summary>
- [Test]
- public void TestIsLessTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsLess", 1);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsLess false
- /// </summary>
- [Test]
- public void TestIsLessFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsLess", 5);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsLessEqual true
- /// </summary>
- [Test]
- public void TestIsLessEqualTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsLessEqual", 3);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsLessEqual false
- /// </summary>
- [Test]
- public void TestIsLessEqualFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsLessEqual", 5);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsNotNull true
- /// </summary>
- [Test]
- public void TestIsNotNullTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsNotNull", "");
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsNotNull false
- /// </summary>
- [Test]
- public void TestIsNotNullFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsNotNull", null);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsPropertyAvailable true
- /// </summary>
- [Test]
- public void TestIsPropertyAvailableTrue()
- {
- Account account = new Account();
- account.Id = 1;
-
- IList list = sqlMap.QueryForList("DynamicIsPropertyAvailable", account);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsPropertyAvailable false
- /// </summary>
- [Test]
- public void TestIsPropertyAvailableFalse()
- {
- string parameter = "1";
-
- IList list = sqlMap.QueryForList("DynamicIsPropertyAvailable", parameter);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test IsParameterPresent true
- /// </summary>
- [Test]
- public void TestIsParameterPresentTrue()
- {
- IList list = sqlMap.QueryForList("DynamicIsParameterPresent", 1);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test IsParameterPresent false
- /// </summary>
- [Test]
- public void TestIsParameterPresentFalse()
- {
- IList list = sqlMap.QueryForList("DynamicIsParameterPresent", null);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test Iterate
- /// </summary>
- [Test]
- public void TestIterate()
- {
- IList parameters = new ArrayList();
- parameters.Add(1);
- parameters.Add(2);
- parameters.Add(3);
-
- IList list = sqlMap.QueryForList("DynamicIterate", parameters);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(3, list.Count);
- }
-
- /// <summary>
- /// Test Iterate 2
- /// </summary>
- [Test]
- public void TestIterate2()
- {
- Account account = new Account();
- account.Ids = new int[3] { 1, 2, 3};
-
- IList list = sqlMap.QueryForList("DynamicIterate2", account);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(3, list.Count);
- }
-
- /// <summary>
- /// Test Empty Parameter Object
- /// </summary>
- [Test]
- public void TestEmptyParameterObject()
- {
- Account account = new Account();
- account.Id = -1;
-
- IList list = sqlMap.QueryForList("DynamicQueryByExample", account);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test Dynamic With Extend
- /// </summary>
- [Test]
- public void TestDynamicWithExtend()
- {
- Account account = new Account();
- account.Id = -1;
-
- IList list = sqlMap.QueryForList("DynamicWithExtend", account);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(5, list.Count);
- }
-
- /// <summary>
- /// Test Multiple Iterate
- /// </summary>
- [Test]
- public void TestMultiIterate()
- {
- IList parameters = new ArrayList();
- parameters.Add(1);
- parameters.Add(2);
- parameters.Add(3);
-
- IList list = sqlMap.QueryForList("MultiDynamicIterate", parameters);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(3, list.Count);
- }
-
- /// <summary>
- /// Test Array Property Iterate
- /// </summary>
- [Test]
- public void TestArrayPropertyIterate()
- {
- Account account = new Account();
- account.Ids = new int[3] { 1, 2, 3};
-
- IList list = sqlMap.QueryForList("DynamicQueryByExample", account);
-
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(3, list.Count);
- }
-
- /// <summary>
- /// Test Complete Statement Substitution
- /// </summary>
- [Test]
- [Ignore("No longer supported.")]
- public void TestCompleteStatementSubst()
- {
- string statement = "select" +
- " Account_ID as Id," +
- " Account_FirstName as FirstName," +
- " Account_LastName as LastName," +
- " Account_Email as EmailAddress" +
- " from Accounts" +
- " where Account_ID = #id#";
- int id = 1;
-
- Hashtable parameters = new Hashtable();
- parameters.Add("id", id);
- parameters.Add("statement", statement);
-
- IList list = sqlMap.QueryForList("DynamicSubst", parameters);
- AssertAccount1((Account) list[0]);
- Assert.AreEqual(1, list.Count);
- }
-
- /// <summary>
- /// Test Query By Example
- /// </summary>
- [Test]
- public void TestQueryByExample()
- {
- Account account;
-
- account = new Account();
-
- account.Id = 1;
- account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.FirstName = "Joe";
- account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.LastName = "Dalton";
- account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.EmailAddress = "Joe.Dalton@somewhere.com";
- account = (Account) sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.Id = 1;
- account.FirstName = "Joe";
- account.LastName = "Dalton";
- account.EmailAddress = "Joe.Dalton@somewhere.com";
- account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
- AssertAccount1(account);
- }
-
- /// <summary>
- /// Test Query By Example via private field
- /// </summary>
- [Test]
- public void TestQueryByExampleViaField()
- {
- Account account;
-
- account = new Account();
-
- account.Id = 1;
- account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.FirstName = "Joe";
- account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.LastName = "Dalton";
- account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.EmailAddress = "Joe.Dalton@somewhere.com";
- account = (Account) sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
- AssertAccount1(account);
-
- account = new Account();
- account.Id = 1;
- account.FirstName = "Joe";
- account.LastName = "Dalton";
- account.EmailAddress = "Joe.Dalton@somewhere.com";
- account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
- AssertAccount1(account);
- }
- #endregion
- }
+ /// <summary>
+ /// Summary description for DynamicTest.
+ /// </summary>
+ [TestFixture]
+ public class DynamicTest : BaseTest
+ {
+ #region SetUp & TearDown
+
+ /// <summary>
+ /// SetUp
+ /// </summary>
+ [SetUp]
+ public void Init()
+ {
+ InitScript(sqlMap.DataSource, ScriptDirectory + "account-init.sql");
+ InitScript(sqlMap.DataSource, ScriptDirectory + "account-procedure.sql", false);
+ InitScript(sqlMap.DataSource, ScriptDirectory + "order-init.sql");
+ InitScript(sqlMap.DataSource, ScriptDirectory + "line-item-init.sql");
+ }
+
+ /// <summary>
+ /// TearDown
+ /// </summary>
+ [TearDown]
+ public void Dispose()
+ { /* ... */ }
+
+ #endregion
+
+ #region Dynamic tests
+
+ /// <summary>
+ /// Test Dynamic Sql On Column Selection
+ /// JIRA IBATISNET-114
+ /// </summary>
+ [Test]
+ public void TestDynamicSqlOnColumnSelection()
+ {
+ Account paramAccount = new Account();
+ Account resultAccount = new Account();
+ IList list = null;
+
+ paramAccount.LastName = "Dalton";
+ list = sqlMap.QueryForList("DynamicSqlOnColumnSelection", paramAccount);
+ resultAccount = (Account)list[0];
+ AssertAccount1(resultAccount);
+ Assert.AreEqual(5, list.Count);
+
+ paramAccount.LastName = "Bayon";
+ list = sqlMap.QueryForList("DynamicSqlOnColumnSelection", paramAccount);
+ resultAccount = (Account)list[0];
+ Assert.IsNull(resultAccount.FirstName);
+ Assert.IsNull(resultAccount.LastName);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsNotEmpty True
+ /// </summary>
+ [Test]
+ public void TestIsNotEmptyTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsNotEmpty", "Joe");
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsNotEmpty False
+ /// </summary>
+ [Test]
+ public void TestIsNotEmptyFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsNotEmpty", "");
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsEqual true
+ /// </summary>
+ [Test]
+ public void TestIsEqualTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsEqual", "Joe");
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsEqual False
+ /// </summary>
+ [Test]
+ public void TestIsEqualFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsEqual", "BLAH!");
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsGreater true
+ /// </summary>
+ [Test]
+ public void TestIsGreaterTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsGreater", 5);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsGreater false
+ /// </summary>
+ [Test]
+ public void TestIsGreaterFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsGreater", 1);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsGreaterEqual true
+ /// </summary>
+ [Test]
+ public void TestIsGreaterEqualTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsGreaterEqual", 3);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsGreaterEqual false
+ /// </summary>
+ [Test]
+ public void TestIsGreaterEqualFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsGreaterEqual", 1);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsLess true
+ /// </summary>
+ [Test]
+ public void TestIsLessTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsLess", 1);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsLess false
+ /// </summary>
+ [Test]
+ public void TestIsLessFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsLess", 5);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsLessEqual true
+ /// </summary>
+ [Test]
+ public void TestIsLessEqualTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsLessEqual", 3);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsLessEqual false
+ /// </summary>
+ [Test]
+ public void TestIsLessEqualFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsLessEqual", 5);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsNotNull true
+ /// </summary>
+ [Test]
+ public void TestIsNotNullTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsNotNull", "");
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsNotNull false
+ /// </summary>
+ [Test]
+ public void TestIsNotNullFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsNotNull", null);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsPropertyAvailable true
+ /// </summary>
+ [Test]
+ public void TestIsPropertyAvailableTrue()
+ {
+ Account account = new Account();
+ account.Id = 1;
+
+ IList list = sqlMap.QueryForList("DynamicIsPropertyAvailable", account);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsPropertyAvailable false
+ /// </summary>
+ [Test]
+ public void TestIsPropertyAvailableFalse()
+ {
+ string parameter = "1";
+
+ IList list = sqlMap.QueryForList("DynamicIsPropertyAvailable", parameter);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsParameterPresent true
+ /// </summary>
+ [Test]
+ public void TestIsParameterPresentTrue()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsParameterPresent", 1);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test IsParameterPresent false
+ /// </summary>
+ [Test]
+ public void TestIsParameterPresentFalse()
+ {
+ IList list = sqlMap.QueryForList("DynamicIsParameterPresent", null);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test Iterate
+ /// </summary>
+ [Test]
+ public void TestIterate()
+ {
+ IList parameters = new ArrayList();
+ parameters.Add(1);
+ parameters.Add(2);
+ parameters.Add(3);
+
+ IList list = sqlMap.QueryForList("DynamicIterate", parameters);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(3, list.Count);
+ }
+
+ /// <summary>
+ /// Test Iterate 2
+ /// </summary>
+ [Test]
+ public void TestIterate2()
+ {
+ Account account = new Account();
+ account.Ids = new int[3] { 1, 2, 3 };
+
+ IList list = sqlMap.QueryForList("DynamicIterate2", account);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(3, list.Count);
+ }
+
+ /// <summary>
+ /// Test Empty Parameter Object
+ /// </summary>
+ [Test]
+ public void TestEmptyParameterObject()
+ {
+ Account account = new Account();
+ account.Id = -1;
+
+ IList list = sqlMap.QueryForList("DynamicQueryByExample", account);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test Dynamic With Extend
+ /// </summary>
+ [Test]
+ public void TestDynamicWithExtend()
+ {
+ Account account = new Account();
+ account.Id = -1;
+
+ IList list = sqlMap.QueryForList("DynamicWithExtend", account);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(5, list.Count);
+ }
+
+ /// <summary>
+ /// Test Multiple Iterate
+ /// </summary>
+ [Test]
+ public void TestMultiIterate()
+ {
+ IList parameters = new ArrayList();
+ parameters.Add(1);
+ parameters.Add(2);
+ parameters.Add(3);
+
+ IList list = sqlMap.QueryForList("MultiDynamicIterate", parameters);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(3, list.Count);
+ }
+
+ /// <summary>
+ /// Test Array Property Iterate
+ /// </summary>
+ [Test]
+ public void TestArrayPropertyIterate()
+ {
+ Account account = new Account();
+ account.Ids = new int[3] { 1, 2, 3 };
+
+ IList list = sqlMap.QueryForList("DynamicQueryByExample", account);
+
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(3, list.Count);
+ }
+
+ /// <summary>
+ /// Test Complete Statement Substitution
+ /// </summary>
+ [Test]
+ [Ignore("No longer supported.")]
+ public void TestCompleteStatementSubst()
+ {
+ string statement = "select" +
+ " Account_ID as Id," +
+ " Account_FirstName as FirstName," +
+ " Account_LastName as LastName," +
+ " Account_Email as EmailAddress" +
+ " from Accounts" +
+ " where Account_ID = #id#";
+ int id = 1;
+
+ Hashtable parameters = new Hashtable();
+ parameters.Add("id", id);
+ parameters.Add("statement", statement);
+
+ IList list = sqlMap.QueryForList("DynamicSubst", parameters);
+ AssertAccount1((Account)list[0]);
+ Assert.AreEqual(1, list.Count);
+ }
+
+ /// <summary>
+ /// Test Query By Example
+ /// </summary>
+ [Test]
+ public void TestQueryByExample()
+ {
+ Account account;
+
+ account = new Account();
+
+ account.Id = 5;
+ account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.FirstName = "Gilles";
+ account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.LastName = "Bayon";
+ account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.EmailAddress = "gilles";
+ account = (Account)sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.Id = 5;
+ account.FirstName = "Gilles";
+ account.LastName = "Bayon";
+ account.EmailAddress = "gilles.bayon@nospam.org";
+ account = sqlMap.QueryForObject("DynamicQueryByExample", account) as Account;
+ AssertGilles(account);
+ }
+
+ /// <summary>
+ /// Test Query By Example via private field
+ /// </summary>
+ [Test]
+ public void TestQueryByExampleViaField()
+ {
+ Account account;
+
+ account = new Account();
+
+ account.Id = 5;
+ account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.FirstName = "Gilles";
+ account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.LastName = "Bayon";
+ account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.EmailAddress = "gilles";
+ account = (Account)sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
+ AssertGilles(account);
+
+ account = new Account();
+ account.Id = 5;
+ account.FirstName = "Gilles";
+ account.LastName = "Bayon";
+ account.EmailAddress = "gilles.bayon@nospam.org";
+ account = sqlMap.QueryForObject("DynamicQueryByExampleViaPrivateField", account) as Account;
+ AssertGilles(account);
+ }
+ #endregion
+ }
}
Modified: ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs
URL: http://svn.apache.org/viewvc/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs?view=diff&rev=464983&r1=464982&r2=464983
==============================================================================
--- ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs (original)
+++ ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/NUnit/SqlMapTests/Generics/StatementTest.cs Tue Oct 17 11:05:38 2006
@@ -223,16 +223,14 @@
[Test]
public void TestExecuteQueryForListWithResultMapWithDynamicElement()
{
- //IList list = sqlMap.QueryForList("GetAllAccountsViaResultMapWithDynamicElement", "LIKE");
IList<Account> list = sqlMap.QueryForList<Account>("GetAllAccountsViaResultMapWithDynamicElement", "LIKE");
AssertAccount1(list[0]);
- Assert.AreEqual(3, list.Count);
+ Assert.AreEqual(4, list.Count);
Assert.AreEqual(1, list[0].Id);
Assert.AreEqual(2, list[1].Id);
Assert.AreEqual(4, list[2].Id);
- //list = sqlMap.QueryForList("GetAllAccountsViaResultMapWithDynamicElement", "=");
list = sqlMap.QueryForList<Account>("GetAllAccountsViaResultMapWithDynamicElement", "=");
Assert.AreEqual(0, list.Count);
@@ -455,7 +453,7 @@
Assert.AreEqual("Averel.Dalton@somewhere.com", list[1]);
Assert.IsNull(list[2]);
Assert.AreEqual("Jack.Dalton@somewhere.com", list[3]);
- Assert.IsNull(list[4]);
+ Assert.AreEqual("gilles.bayon@nospam.org", list[4]);
}
/// <summary>
@@ -470,7 +468,7 @@
Assert.AreEqual("Averel.Dalton@somewhere.com", list[1]);
Assert.IsNull(list[2]);
Assert.AreEqual("Jack.Dalton@somewhere.com", list[3]);
- Assert.IsNull(list[4]);
+ Assert.AreEqual("gilles.bayon@nospam.org", list[4]);
}
/// <summary>
@@ -497,12 +495,12 @@
Assert.AreEqual(5, _index);
Assert.AreEqual(5, list.Count);
- AssertAccount1( list[0]);
- Assert.AreEqual(1, list[0].Id);
- Assert.AreEqual(2, list[1].Id);
- Assert.AreEqual(3, list[2].Id);
- Assert.AreEqual(4, list[3].Id);
- Assert.AreEqual(5, list[4].Id);
+ AssertAccount1(list[0]);
+ Assert.AreEqual(1, list[0].Id);
+ Assert.AreEqual(2, list[1].Id);
+ Assert.AreEqual(3, list[2].Id);
+ Assert.AreEqual(4, list[3].Id);
+ Assert.AreEqual(5, list[4].Id);
}
@@ -514,7 +512,7 @@
{
IList<Order> list = sqlMap.QueryForList<Order>("GetManyOrderWithConstructor", null);
- Assert.IsTrue(list.Count>0);
+ Assert.IsTrue(list.Count > 0);
}
#endregion