Browse Source

2003-05-26 Ben Maurer <[email protected]>
* DataViewTest.cs: Added new test from
Patrick Kalkman
* data_linux_test.args: Updated for new test in System.Data

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

Ben Maurer 22 years ago
parent
commit
27ccae5025

+ 3 - 0
mcs/class/System.Data/Test/ChangeLog

@@ -1,3 +1,6 @@
+2003-05-26  Ben Maurer <[email protected]>
+	* data_linux_test.args: Updated for new test in System.Data
+
 2003/04/15  Nick Drochak <[email protected]>
 
 	* System.Data_test.build: Use nunit version 2.

+ 4 - 0
mcs/class/System.Data/Test/System.Data/ChangeLog

@@ -1,3 +1,7 @@
+2003-05-26  Ben Maurer <[email protected]>
+	* DataViewTest.cs: Added new test from
+	Patrick Kalkman
+
 2003-05-13  Martin Willemoes Hansen <[email protected]>
 	* All tests inherits from Assertion, and
 	  Assertion. prefixes removed

+ 104 - 0
mcs/class/System.Data/Test/System.Data/DataViewTest.cs

@@ -0,0 +1,104 @@
+//
+// DataViewTest.cs
+//
+// Author:
+//	Patrick Kalkman  [email protected]
+//
+// (C) 2003 Patrick Kalkman
+//
+using System;
+using System.Data;
+using NUnit.Framework;
+
+namespace MonoTests.System.Data {
+	
+	[TestFixture]
+	public class DataViewTest {
+		DataTable TestTable;
+
+		[SetUp]
+		public void GetReady () 
+		{
+			TestTable = new DataTable ("TestTable");
+			DataColumn ID = new DataColumn ("ID", Type.GetType ("System.String"));
+			TestTable.Columns.Add (ID);
+			DataRow NewRow;
+			//Add 25 dummy rows to a datatable.
+			for (int RowCnt = 0; RowCnt < 25; RowCnt++) {
+				NewRow = TestTable.NewRow ();
+				NewRow ["ID"] = "pk" + RowCnt.ToString ("D2");
+				TestTable.Rows.Add (NewRow);
+			}
+		}
+		
+		[TearDown]
+		public void Clean () {}
+
+		[Test]
+		public void TestValue ()
+		{	
+			DataView TestView = new DataView (TestTable);
+			Assertion.AssertEquals ("Dv #1", "pk00", TestView [0]["ID"]);
+			Assertion.AssertEquals ("Dv #2", "pk24", TestView [24]["ID"]);
+		}
+
+		[Test]
+		public void TestCount ()
+		{
+			DataView TestView = new DataView (TestTable);
+			Assertion.AssertEquals ("Dv #3", 25, TestView.Count);
+		}
+
+		[Test]
+		public void TestSort ()
+		{
+			DataView TestView = new DataView (TestTable);
+			TestView.Sort = "ID Desc";
+			Assertion.AssertEquals ("Dv #1", "pk24", TestView [0]["ID"]);
+			TestView.Sort = "ID"; //Default is Ascending.
+			Assertion.AssertEquals ("Dv #2", "pk00", TestView [0]["ID"]);
+			TestView.Sort = "ID Asc";
+			Assertion.AssertEquals ("Dv #3", "pk00", TestView [0]["ID"]);
+		}
+
+		[Test]
+		public void TestRowFilter ()
+		{
+			DataView TestView = new DataView (TestTable);
+			TestView.RowFilter = "id = 'pk17'"; //Filter gives 1.
+			Assertion.AssertEquals ("Dv #1", 1, TestView.Count);
+			TestView.RowFilter = "id LIKE 'pk%'"; //Filter gives all.
+			Assertion.AssertEquals ("Dv #2", 25, TestView.Count);
+		}
+
+		[Test]
+		public void TestAddNew1 ()
+		{
+			DataView TestView = new DataView (TestTable);
+			DataRowView TestDr = TestView.AddNew ();
+			TestDr ["ID"] = "pk25";
+			TestDr.EndEdit ();
+			Assertion.AssertEquals ("Dv #1", 26, TestView.Count);
+		}
+
+		[Test]
+		[ExpectedException (typeof (DataException))]
+		public void TestAddNew2 ()
+		{
+			DataView TestView = new DataView (TestTable);
+			TestView.AllowNew = false;
+			DataRowView TestDr = TestView.AddNew ();
+		}
+		
+		[Test]
+		public void TestFindRows ()
+		{
+			DataView TestView = new DataView (TestTable);
+			TestView.Sort = "ID";
+			DataRowView[] Result = TestView.FindRows ("pk03");
+			Assertion.AssertEquals ("Dv #1", 1, Result.Length);
+			Assertion.AssertEquals ("Dv #2", "pk03", Result [0]["ID"]);
+		}
+	}
+}
+

+ 8 - 7
mcs/class/System.Data/Test/data_linux_test.args

@@ -12,14 +12,15 @@ System.Data.SqlTypes/SqlGuidTest.cs
 System.Data.SqlTypes/SqlDecimalTest.cs
 System.Data.SqlTypes/SqlStringTest.cs
 System.Xml/XmlDataDocumentTest.cs
-System.Data/DataColumnTest.cs
-System.Data/UniqueConstraintTest.cs
-System.Data/ConstraintTest.cs
 System.Data/ConstraintCollectionTest.cs
-System.Data/ForeignKeyConstraintTest.cs
-System.Data/DataTableTest.cs
+System.Data/ConstraintTest.cs
+System.Data/DataColumnCollectionTest.cs
+System.Data/DataColumnTest.cs
+System.Data/DataRelationTest.cs
 System.Data/DataRowCollectionTest.cs
 System.Data/DataRowTest.cs
-System.Data/DataColumnCollectionTest.cs
 System.Data/DataSetTest.cs
-System.Data/DataRelationTest.cs
+System.Data/DataTableTest.cs
+System.Data/DataViewTest.cs
+System.Data/ForeignKeyConstraintTest.cs
+System.Data/UniqueConstraintTest.cs