X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fclass%2FSystem.Data%2FTest%2FProviderTests%2FSystem.Data.SqlClient%2FSqlCommandTest.cs;h=7e6478299c4c8d3d67b441776e92d0532253f172;hb=2115cd7394c0212e246ac44df0a360ed8ae036d5;hp=f9ab15d3472278b3c92f97d8df574baf040fbd4f;hpb=f53004b1714241bd8698beba1cf8f85e48944b1c;p=mono.git diff --git a/mcs/class/System.Data/Test/ProviderTests/System.Data.SqlClient/SqlCommandTest.cs b/mcs/class/System.Data/Test/ProviderTests/System.Data.SqlClient/SqlCommandTest.cs index f9ab15d3472..7e6478299c4 100644 --- a/mcs/class/System.Data/Test/ProviderTests/System.Data.SqlClient/SqlCommandTest.cs +++ b/mcs/class/System.Data/Test/ProviderTests/System.Data.SqlClient/SqlCommandTest.cs @@ -39,7 +39,7 @@ using System.Xml; using NUnit.Framework; -namespace MonoTests.System.Data.SqlClient +namespace MonoTests.System.Data.Connected.SqlClient { [TestFixture] [Category ("sqlserver")] @@ -47,7 +47,7 @@ namespace MonoTests.System.Data.SqlClient { SqlConnection conn; SqlCommand cmd; - string connectionString = ConnectionManager.Singleton.ConnectionString; + string connectionString = ConnectionManager.Instance.Sql.ConnectionString; EngineConfig engine; static readonly decimal SMALLMONEY_MAX = 214748.3647m; @@ -56,7 +56,7 @@ namespace MonoTests.System.Data.SqlClient [SetUp] public void SetUp () { - engine = ConnectionManager.Singleton.Engine; + engine = ConnectionManager.Instance.Sql.EngineConfig; } [TearDown] @@ -144,8 +144,7 @@ namespace MonoTests.System.Data.SqlClient [Test] // bug #341743 public void Dispose_Connection_Disposed () { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); + conn = ConnectionManager.Instance.Sql.Connection; cmd = conn.CreateCommand (); cmd.CommandText = "SELECT 'a'"; @@ -159,6 +158,7 @@ namespace MonoTests.System.Data.SqlClient } [Test] + [Category("NotWorking")] public void ExecuteScalar () { conn = new SqlConnection (connectionString); @@ -269,8 +269,7 @@ namespace MonoTests.System.Data.SqlClient [Test] public void ExecuteScalar_CommandText_Empty () { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); + conn = ConnectionManager.Instance.Sql.Connection; cmd = conn.CreateCommand (); @@ -448,6 +447,7 @@ namespace MonoTests.System.Data.SqlClient } [Test] + [Category("NotWorking")] public void ExecuteNonQuery () { conn = new SqlConnection (connectionString); @@ -1106,6 +1106,7 @@ namespace MonoTests.System.Data.SqlClient } [Test] + [Category("NotWorking")] public void Prepare_Transaction_Only () { SqlTransaction trans = null; @@ -1117,53 +1118,33 @@ namespace MonoTests.System.Data.SqlClient // Text, without parameters cmd = new SqlCommand ("select count(*) from whatever"); cmd.Transaction = trans; - try { - cmd.Prepare (); - Assert.Fail ("#A1"); - } catch (NullReferenceException) { - } + cmd.Prepare(); // Text, with parameters cmd = new SqlCommand ("select count(*) from whatever"); cmd.Parameters.Add ("@TestPar1", SqlDbType.Int); cmd.Transaction = trans; - try { - cmd.Prepare (); - Assert.Fail ("#B1"); - } catch (NullReferenceException) { - } + Assert.Throws(() => cmd.Prepare()); // Text, parameters cleared cmd = new SqlCommand ("select count(*) from whatever"); cmd.Parameters.Add ("@TestPar1", SqlDbType.Int); cmd.Parameters.Clear (); cmd.Transaction = trans; - try { - cmd.Prepare (); - Assert.Fail ("#C1"); - } catch (NullReferenceException) { - } + cmd.Prepare(); // StoredProcedure, without parameters cmd = new SqlCommand ("FindCustomer"); cmd.CommandType = CommandType.StoredProcedure; cmd.Transaction = trans; - try { - cmd.Prepare (); - Assert.Fail ("#D1"); - } catch (NullReferenceException) { - } + cmd.Prepare(); // StoredProcedure, with parameters cmd = new SqlCommand ("FindCustomer"); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add ("@TestPar1", SqlDbType.Int); cmd.Transaction = trans; - try { - cmd.Prepare (); - Assert.Fail ("#E1"); - } catch (NullReferenceException) { - } + cmd.Prepare(); } [Test] // bug #412576 @@ -1357,8 +1338,7 @@ namespace MonoTests.System.Data.SqlClient SqlParameter idParam; SqlParameter dojParam; - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - conn.Open (); + conn = ConnectionManager.Instance.Sql.Connection; // parameters with leading '@' try { @@ -1475,6 +1455,7 @@ namespace MonoTests.System.Data.SqlClient } [Test] // bug #319598 + [Category("NotWorking")] public void LongStoredProcTest () { if (ClientVersion == 7) @@ -1559,9 +1540,8 @@ namespace MonoTests.System.Data.SqlClient [Test] public void EnumParameterTest () { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; + conn = ConnectionManager.Instance.Sql.Connection; try { - ConnectionManager.Singleton.OpenConnection (); // create temp sp here, should normally be created in Setup of test // case, but cannot be done right now because of ug #68978 DBHelper.ExecuteNonQuery (conn, "CREATE PROCEDURE #Bug66630 (" @@ -1594,7 +1574,7 @@ namespace MonoTests.System.Data.SqlClient DBHelper.ExecuteNonQuery (conn, "if exists (select name from sysobjects " + " where name like '#temp_Bug66630' and type like 'P') " + " drop procedure #temp_Bug66630; "); - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); } } @@ -1638,6 +1618,7 @@ namespace MonoTests.System.Data.SqlClient } [Test] + [Category("NotWorking")] public void StoredProc_ParameterTest () { string create_query = CREATE_TMP_SP_PARAM_TEST; @@ -2208,8 +2189,7 @@ namespace MonoTests.System.Data.SqlClient [Test] public void OutputParamSizeTest1 () { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); + conn = ConnectionManager.Instance.Sql.Connection; cmd = new SqlCommand (); cmd.Connection = conn; @@ -2242,8 +2222,7 @@ namespace MonoTests.System.Data.SqlClient [Test] public void OutputParamSizeTest2 () { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); + conn = ConnectionManager.Instance.Sql.Connection; cmd = new SqlCommand (); cmd.Connection = conn; @@ -2276,8 +2255,7 @@ namespace MonoTests.System.Data.SqlClient [Test] public void OutputParamSizeTest3 () { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); + conn = ConnectionManager.Instance.Sql.Connection; cmd = new SqlCommand (); cmd.Connection = conn; @@ -2310,8 +2288,7 @@ namespace MonoTests.System.Data.SqlClient [Test] public void OutputParamSizeTest4 () { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); + conn = ConnectionManager.Instance.Sql.Connection; cmd = new SqlCommand (); cmd.Connection = conn; @@ -2346,8 +2323,7 @@ namespace MonoTests.System.Data.SqlClient { SqlParameter newId, id; - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); + conn = ConnectionManager.Instance.Sql.Connection; cmd = conn.CreateCommand (); cmd.CommandText = "set @NewId=@Id + 2"; @@ -2489,7 +2465,7 @@ namespace MonoTests.System.Data.SqlClient { cmd = new SqlCommand (); string connectionString1 = null; - connectionString1 = ConnectionManager.Singleton.ConnectionString + "Asynchronous Processing=true"; + connectionString1 = ConnectionManager.Instance.Sql.ConnectionString + ";Asynchronous Processing=true"; try { SqlConnection conn1 = new SqlConnection (connectionString1); conn1.Open (); @@ -2503,11 +2479,12 @@ namespace MonoTests.System.Data.SqlClient Assert.AreEqual ("kumar", reader["lname"], "#1 "); } } finally { - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); } } [Test] + [Ignore("MS .NET doesn't throw IOE here. TODO: check corefx")] public void BeginExecuteXmlReaderExceptionTest () { cmd = new SqlCommand (); @@ -2520,12 +2497,12 @@ namespace MonoTests.System.Data.SqlClient try { /*IAsyncResult result = */cmd.BeginExecuteXmlReader (); } catch (InvalidOperationException) { - Assert.AreEqual (ConnectionManager.Singleton.ConnectionString, connectionString, "#1 Connection string has changed"); + Assert.AreEqual (ConnectionManager.Instance.Sql.ConnectionString, connectionString, "#1 Connection string has changed"); return; } Assert.Fail ("Expected Exception InvalidOperationException not thrown"); } finally { - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); } } @@ -2533,9 +2510,8 @@ namespace MonoTests.System.Data.SqlClient public void SqlCommandDisposeTest () { IDataReader reader = null; + conn = ConnectionManager.Instance.Sql.Connection; try { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); IDbCommand command = conn.CreateCommand (); try { @@ -2548,7 +2524,7 @@ namespace MonoTests.System.Data.SqlClient while (reader.Read ()) ; } finally { reader.Dispose (); - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); } } @@ -2559,9 +2535,8 @@ namespace MonoTests.System.Data.SqlClient out int param3Val, out int rvalVal) { + conn = ConnectionManager.Instance.Sql.Connection; try { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); try { SqlParameter param0 = new SqlParameter ("@param0", SqlDbType.Int); @@ -2614,7 +2589,7 @@ namespace MonoTests.System.Data.SqlClient cmd = null; } } finally { - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); conn = null; } } @@ -2674,10 +2649,8 @@ namespace MonoTests.System.Data.SqlClient + "SELECT @deccheck=deccheck from decimalCheck" + Environment.NewLine + "END"; + conn = ConnectionManager.Instance.Sql.Connection; try { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); - cmd = conn.CreateCommand (); cmd.CommandText = create_tbl; cmd.ExecuteNonQuery (); @@ -2685,7 +2658,7 @@ namespace MonoTests.System.Data.SqlClient cmd.CommandText = create_sp; cmd.ExecuteNonQuery (); - cmd.CommandText = "monotest.dbo.sp_bug584833"; + cmd.CommandText = "dbo.sp_bug584833"; cmd.CommandType = CommandType.StoredProcedure; SqlCommandBuilder.DeriveParameters (cmd); @@ -2701,7 +2674,7 @@ namespace MonoTests.System.Data.SqlClient cmd.ExecuteNonQuery (); cmd.Dispose (); cmd = null; - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); conn = null; } @@ -2718,10 +2691,9 @@ namespace MonoTests.System.Data.SqlClient + "SELECT @deccheck=deccheck from decimalCheck" + Environment.NewLine + "END"; + conn = ConnectionManager.Instance.Sql.Connection; try { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); - + cmd = conn.CreateCommand (); cmd.CommandText = create_tbl; cmd.ExecuteNonQuery (); @@ -2745,7 +2717,7 @@ namespace MonoTests.System.Data.SqlClient cmd.ExecuteNonQuery (); cmd.Dispose (); cmd = null; - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); conn = null; } } @@ -2762,9 +2734,8 @@ namespace MonoTests.System.Data.SqlClient + "END"; try { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); - + conn = ConnectionManager.Instance.Sql.Connection; + cmd = conn.CreateCommand (); cmd.CommandText = create_tbl; cmd.ExecuteNonQuery (); @@ -2788,7 +2759,7 @@ namespace MonoTests.System.Data.SqlClient cmd.ExecuteNonQuery (); cmd.Dispose (); cmd = null; - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); conn = null; } } @@ -2796,10 +2767,10 @@ namespace MonoTests.System.Data.SqlClient [Test] // bug#561667 public void CmdDispose_DataReaderReset () { - try { - conn = (SqlConnection) ConnectionManager.Singleton.Connection; - ConnectionManager.Singleton.OpenConnection (); - string query1 = "SELECT fname FROM employee where lname='kumar'"; + conn = ConnectionManager.Instance.Sql.Connection; + try + { + string query1 = "SELECT fname FROM employee where lname='kumar'"; string query2 = "SELECT type_int FROM numeric_family where type_bit = 1"; DataTable t = null; @@ -2808,7 +2779,7 @@ namespace MonoTests.System.Data.SqlClient t = GetColumns(conn, query2); Assert.AreEqual (int.MaxValue, t.Rows[0][0], "CmdDD#2: Query2 result mismatch"); } finally { - ConnectionManager.Singleton.CloseConnection (); + ConnectionManager.Instance.Sql.CloseConnection (); conn = null; } }