Explorar el Código

* DataContainerTest.cs: Code formatting.
* DbDataAdapterTest.cs: Added test for 2.0 methods.

svn path=/trunk/mcs/; revision=98818

Gert Driesen hace 18 años
padre
commit
90dabe27b9

+ 5 - 0
mcs/class/System.Data/Test/System.Data.Common/ChangeLog

@@ -1,3 +1,8 @@
+2008-03-23  Gert Driesen  <[email protected]>
+
+	* DataContainerTest.cs: Code formatting.
+	* DbDataAdapterTest.cs: Added test for 2.0 methods.
+
 2007-10-21  Gert Driesen  <[email protected]>
 
 	* DBDataPermissionAttributeTest.cs: Improved test for invalid

+ 92 - 97
mcs/class/System.Data/Test/System.Data.Common/DataContainerTest.cs

@@ -1,104 +1,99 @@
-//
-// DataContainerTest.cs - NUnit Test Cases for testing the
-//                          DataContainer class
-// Author:
-//      Umadevi S ([email protected])
-//
-// Copyright (c) 2004 Novell Inc., and the individuals listed
-// on the ChangeLog entries.
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Data;
+//
+// DataContainerTest.cs - NUnit Test Cases for testing the
+//                          DataContainer class
+// Author:
+//      Umadevi S ([email protected])
+//
+// Copyright (c) 2004 Novell Inc., and the individuals listed
+// on the ChangeLog entries.
+//
+// Permission is hereby granted, free of charge, to any person obtaining
+// a copy of this software and associated documentation files (the
+// "Software"), to deal in the Software without restriction, including
+// without limitation the rights to use, copy, modify, merge, publish,
+// distribute, sublicense, and/or sell copies of the Software, and to
+// permit persons to whom the Software is furnished to do so, subject to
+// the following conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+//
+
+using System;
+using System.Data;
 using System.Data.Common;
-using System.Data.SqlClient;
-
-using NUnit.Framework;
-
-namespace MonoTests.System.Data.Common
-{
-
-  [TestFixture]
-  public class DataContainerTest : MSSqlTestClient {
-          
-          [SetUp]
-          public void GetReady () {
-                OpenConnection ();
-                CreateTestSetup (); // create test database & tables
-          }
-
-          [TearDown]
-          public void Clean () {
-                CleanTestSetup (); // clean test database
-                CloseConnection ();
-          }
+using System.Data.SqlClient;
 
-	  private void CreateTestSetup()
-	  { 
-			if (!isConnAlive)
-                                return ;
-                        // Create test database & tables
-                        string createQuery = "DROP TABLE datetimetest;" ;
-                        ExecuteQuery (createQuery);
-                        createQuery = "CREATE TABLE datetimetest (" +
-                                          "col_char CHAR(20)," +
-                                          "col_date DATETIME );";
-                        ExecuteQuery (createQuery);
-                        createQuery = "INSERT INTO datetimetest VALUES ('one', '4/12/2004 4:59:00');" ;
-                        ExecuteQuery (createQuery);
-                        createQuery = "INSERT INTO datetimetest VALUES ('two',null);" ;
-	                ExecuteQuery (createQuery);
-                        createQuery = "INSERT INTO datetimetest (col_char) VALUES ('three');" ;
-	                ExecuteQuery (createQuery);
+using NUnit.Framework;
 
-		
-	  }
+namespace MonoTests.System.Data.Common
+{
+	[TestFixture]
+	public class DataContainerTest : MSSqlTestClient
+	{
+		[SetUp]
+		public void GetReady ()
+		{
+			OpenConnection ();
+			CreateTestSetup (); // create test database & tables
+		}
 
-	  private void CleanTestSetup()
-	  {  
-			if (!isConnAlive)
-                                return;
-                        // delete test database
-                        string dropQuery = "DROP table datetimetest";
-                        ExecuteQuery(dropQuery);
+		[TearDown]
+		public void Clean ()
+		{
+			CleanTestSetup (); // clean test database
+			CloseConnection ();
+		}
 
-	  } 	
-
-
-          [Test]
-          public void DateTimeTest () {
-                try {
+		[Test]
+		public void DateTimeTest ()
+		{
+			try {
+				SqlDataAdapter myadapter = new SqlDataAdapter ("select * from datetimetest;", conn);
 
-                                SqlDataAdapter myadapter = new SqlDataAdapter("select * from datetimetest;",conn);
+				DataTable dt = new DataTable ();
+				myadapter.Fill (dt);
+				Assertion.AssertEquals ("Row count must be three", 3, dt.Rows.Count);
+			} finally {
+				CleanTestSetup ();
+				CloseConnection ();
+			}
+		}
 
-				DataTable dt = new DataTable();
-				myadapter.Fill(dt);
-				Assertion.AssertEquals ("Row count must be three", 3, dt.Rows.Count );
-                        }
-                 
-		finally { // try/catch is necessary to gracefully close connections
-                        CleanTestSetup (); // clean test database
-                        CloseConnection ();
-                }
-          }
-    }
-}
+		private void CreateTestSetup ()
+		{
+			if (!isConnAlive)
+				return ;
+			// Create test database & tables
+			string createQuery = "DROP TABLE datetimetest;" ;
+			ExecuteQuery (createQuery);
+			createQuery = "CREATE TABLE datetimetest (" +
+					"col_char CHAR(20)," +
+					"col_date DATETIME );";
+			ExecuteQuery (createQuery);
+			createQuery = "INSERT INTO datetimetest VALUES ('one', '4/12/2004 4:59:00');" ;
+			ExecuteQuery (createQuery);
+			createQuery = "INSERT INTO datetimetest VALUES ('two',null);" ;
+			ExecuteQuery (createQuery);
+			createQuery = "INSERT INTO datetimetest (col_char) VALUES ('three');" ;
+			ExecuteQuery (createQuery);
+		}
+
+		private void CleanTestSetup ()
+		{
+			if (!isConnAlive)
+				return;
+			// delete test database
+			string dropQuery = "DROP table datetimetest";
+			ExecuteQuery(dropQuery);
+		}
+	}
+}

+ 135 - 0
mcs/class/System.Data/Test/System.Data.Common/DbDataAdapterTest.cs

@@ -29,6 +29,7 @@
 using System;
 using System.Data;
 using System.Data.Common;
+using System.Data.SqlClient;
 
 using NUnit.Framework;
 
@@ -82,6 +83,103 @@ namespace MonoTests.System.Data.Common
 				Assert.IsNotNull (ex.Message, "#4");
 			}
 		}
+
+		[Test]
+		public void AddToBatch ()
+		{
+			MyAdapter da = new MyAdapter ();
+			try {
+				da.AddToBatch (new SqlCommand ());
+				Assert.Fail ("#1");
+			} catch (NotSupportedException ex) {
+				Assert.AreEqual (typeof (NotSupportedException), ex.GetType (), "#2");
+				Assert.IsNull (ex.InnerException, "#3");
+				Assert.IsNotNull (ex.Message, "#4");
+			}
+		}
+
+		[Test]
+		public void ClearBatch ()
+		{
+			MyAdapter da = new MyAdapter ();
+			try {
+				da.ClearBatch ();
+				Assert.Fail ("#1");
+			} catch (NotSupportedException ex) {
+				Assert.AreEqual (typeof (NotSupportedException), ex.GetType (), "#2");
+				Assert.IsNull (ex.InnerException, "#3");
+				Assert.IsNotNull (ex.Message, "#4");
+			}
+		}
+
+		[Test]
+		public void ExecuteBatch ()
+		{
+			MyAdapter da = new MyAdapter ();
+			try {
+				da.ExecuteBatch ();
+				Assert.Fail ("#1");
+			} catch (NotSupportedException ex) {
+				Assert.AreEqual (typeof (NotSupportedException), ex.GetType (), "#2");
+				Assert.IsNull (ex.InnerException, "#3");
+				Assert.IsNotNull (ex.Message, "#4");
+			}
+		}
+
+		[Test]
+		public void GetBatchedParameter ()
+		{
+			MyAdapter da = new MyAdapter ();
+			try {
+				da.GetBatchedParameter (1, 1);
+				Assert.Fail ("#1");
+			} catch (NotSupportedException ex) {
+				Assert.AreEqual (typeof (NotSupportedException), ex.GetType (), "#2");
+				Assert.IsNull (ex.InnerException, "#3");
+				Assert.IsNotNull (ex.Message, "#4");
+			}
+		}
+
+		[Test]
+		public void GetBatchedRecordsAffected ()
+		{
+			MyAdapter da = new MyAdapter ();
+			int recordsAffected = 0;
+			Exception error = null;
+
+			Assert.IsTrue (da. GetBatchedRecordsAffected (int.MinValue,
+				out recordsAffected, out error), "#1");
+			Assert.AreEqual (1, recordsAffected, "#2");
+			Assert.IsNull (error, "#3");
+		}
+
+		[Test]
+		public void InitializeBatching ()
+		{
+			MyAdapter da = new MyAdapter ();
+			try {
+				da.InitializeBatching ();
+				Assert.Fail ("#1");
+			} catch (NotSupportedException ex) {
+				Assert.AreEqual (typeof (NotSupportedException), ex.GetType (), "#2");
+				Assert.IsNull (ex.InnerException, "#3");
+				Assert.IsNotNull (ex.Message, "#4");
+			}
+		}
+
+		[Test]
+		public void TerminateBatching ()
+		{
+			MyAdapter da = new MyAdapter ();
+			try {
+				da.TerminateBatching ();
+				Assert.Fail ("#1");
+			} catch (NotSupportedException ex) {
+				Assert.AreEqual (typeof (NotSupportedException), ex.GetType (), "#2");
+				Assert.IsNull (ex.InnerException, "#3");
+				Assert.IsNotNull (ex.Message, "#4");
+			}
+		}
 #endif
 
 		class MyAdapter : DbDataAdapter
@@ -111,6 +209,43 @@ namespace MonoTests.System.Data.Common
 				throw new NotImplementedException ();
 			}
 #endif
+
+#if NET_2_0
+			public new int AddToBatch (IDbCommand command)
+			{
+				return base.AddToBatch (command);
+			}
+
+			public new void ClearBatch ()
+			{
+				base.ClearBatch ();
+			}
+
+			public new void ExecuteBatch ()
+			{
+				base.ClearBatch ();
+			}
+
+			public new IDataParameter GetBatchedParameter (int commandIdentifier, int parameterIndex)
+			{
+				return base.GetBatchedParameter (commandIdentifier, parameterIndex);
+			}
+
+			public new bool GetBatchedRecordsAffected (int commandIdentifier, out int recordsAffected, out Exception error)
+			{
+				return base.GetBatchedRecordsAffected (commandIdentifier, out recordsAffected, out error);
+			}
+
+			public new void InitializeBatching ()
+			{
+				base.InitializeBatching ();
+			}
+
+			public new void TerminateBatching ()
+			{
+				base.TerminateBatching ();
+			}
+#endif
 		}
 	}
 }