diff options
author | Nagappan Alagappan <nagappan@gmail.com> | 2007-07-31 11:11:45 +0400 |
---|---|---|
committer | Nagappan Alagappan <nagappan@gmail.com> | 2007-07-31 11:11:45 +0400 |
commit | e2624c95448ad0048f0f590ef6d016c3955b05bc (patch) | |
tree | 6b537c9d50715b2239cc9ef426cb83adcf9fd23d /mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc | |
parent | 7253fb1adc8d92bd3b035ae9d06f4104e86d74de (diff) |
2007-07-31 Nagappan A <anagappan@novell.com>
* OdbcDataAdapterTest.cs (InsertUtf8Test): Thanks to
amc1999@gmail.com (amc) for providing this test case. Fixes bug #
82191. ODBC command UTF8 error. SQL failed with UTF8 symbols in
query.
svn path=/trunk/mcs/; revision=83049
Diffstat (limited to 'mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc')
-rw-r--r-- | mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/ChangeLog | 7 | ||||
-rw-r--r-- | mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/OdbcDataAdapterTest.cs | 36 |
2 files changed, 43 insertions, 0 deletions
diff --git a/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/ChangeLog b/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/ChangeLog index f93c70a0c67..9c97b1b1907 100644 --- a/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/ChangeLog +++ b/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/ChangeLog @@ -1,3 +1,10 @@ +2007-07-31 Nagappan A <anagappan@novell.com> + + * OdbcDataAdapterTest.cs (InsertUtf8Test): Thanks to + amc1999@gmail.com (amc) for providing this test case. Fixes bug # + 82191. ODBC command UTF8 error. SQL failed with UTF8 symbols in + query. + 2007-06-21 Nagappan A <anagappan@novell.com> * OdbcConnectionStringBuilderTest.cs: Added base test-cases from diff --git a/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/OdbcDataAdapterTest.cs b/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/OdbcDataAdapterTest.cs index ab7901c0bd1..debce775dfc 100644 --- a/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/OdbcDataAdapterTest.cs +++ b/mcs/class/System.Data/Test/ProviderTests/System.Data.Odbc/OdbcDataAdapterTest.cs @@ -75,5 +75,41 @@ namespace MonoTests.System.Data.Odbc ConnectionManager.Singleton.CloseConnection (); } } + [Test] + public void InsertUtf8Test () + { + IDbConnection conn = ConnectionManager.Singleton.Connection; + try { + ConnectionManager.Singleton.OpenConnection (); + DoExecuteNonQuery ((OdbcConnection) conn, + "CREATE TABLE odbc_ins_utf8_test(ival int not null, sval varchar(20))"); + Assert.AreEqual (DoExecuteNonQuery ((OdbcConnection) conn, + "INSERT INTO odbc_ins_utf8_test(ival, sval) VALUES (1, 'English')"), + 1); + Assert.AreEqual (DoExecuteNonQuery ((OdbcConnection) conn, + "INSERT INTO odbc_ins_utf8_test(ival, sval) VALUES (2, 'Français')"), + 1); + Assert.AreEqual (DoExecuteNonQuery ((OdbcConnection) conn, + "INSERT INTO odbc_ins_utf8_test(ival, sval) VALUES (3, 'Español')"), + 1); + Assert.AreEqual (DoExecuteScalar ((OdbcConnection) conn, + "SELECT COUNT(*) FROM odbc_ins_utf8_test WHERE sval " + + "IN('English', 'Français', 'Español')"), + 3); + } finally { + DoExecuteNonQuery ((OdbcConnection) conn, "DROP TABLE odbc_ins_utf8_test"); + ConnectionManager.Singleton.CloseConnection (); + } + } + private int DoExecuteNonQuery (OdbcConnection conn, string sql) { + OdbcCommand cmd = new OdbcCommand (sql, conn); + return cmd.ExecuteNonQuery (); + } + + private int DoExecuteScalar (OdbcConnection conn, string sql) { + OdbcCommand cmd = new OdbcCommand (sql, conn); + object value = cmd.ExecuteScalar (); + return (int) Convert.ChangeType (value, typeof (int)); + } } } |