From: Carlos Guzm?n ?l. <car...@us...> - 2003-05-09 12:12:44
|
Update of /cvsroot/firebird/Net-Provider/tests In directory sc8-pr-cvs1:/tmp/cvs-serv16619 Modified Files: Tag: branch-release-1-1 FbArrayTest.cs Log Message: Added new NUnit test for partial array updates. Index: FbArrayTest.cs =================================================================== RCS file: /cvsroot/firebird/Net-Provider/tests/Attic/FbArrayTest.cs,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -b -U3 -r1.1.2.2 -r1.1.2.3 --- FbArrayTest.cs 4 May 2003 21:36:33 -0000 1.1.2.2 +++ FbArrayTest.cs 9 May 2003 12:12:41 -0000 1.1.2.3 @@ -563,17 +563,16 @@ } [Test] - [Ignore("Support not finished for Varchar Arrays")] public void VarCharArrayTest() { Console.WriteLine("\r\n"); Console.WriteLine("VarChar Array Test"); Console.WriteLine("------- ----- ----"); - string selectText = "SELECT vsarray_field FROM TEST_TABLE_01 " + + string selectText = "SELECT varray_field FROM TEST_TABLE_01 " + "WHERE int_field = 1"; - string updateText = "update TEST_TABLE_01 set vsarray_field = @array_field " + + string updateText = "update TEST_TABLE_01 set varray_field = @array_field " + "WHERE int_field = 1"; string[] original_values = new string[4]; @@ -603,6 +602,272 @@ new_values[1] = "abcdef"; new_values[2] = "abcdefghi"; new_values[3] = "abcdefghijkl"; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void IntergerArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Integer Array Test"); + Console.WriteLine("------- ----- ----"); + + string updateText = "update TEST_TABLE_01 set iarray_field = @array_field " + + "WHERE int_field = 1"; + + int[] new_values = new int[2]; + + new_values[0] = 100; + new_values[1] = 200; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void ShortArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Short Array Test"); + Console.WriteLine("----- ----- ----"); + + string updateText = "update TEST_TABLE_01 set sarray_field = @array_field " + + "WHERE int_field = 1"; + + short[] new_values = new short[3]; + + new_values[0] = 500; + new_values[1] = 600; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void BigIntArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("BigInt Array Test"); + Console.WriteLine("------ ----- ----"); + + string updateText = "update TEST_TABLE_01 set larray_field = @array_field " + + "WHERE int_field = 1"; + + long[] new_values = new long[4]; + + new_values[0] = 900; + new_values[1] = 1000; + new_values[2] = 1100; + new_values[3] = 1200; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void FloatArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Float Array Test"); + Console.WriteLine("----- ----- ----"); + + string updateText = "update TEST_TABLE_01 set farray_field = @array_field " + + "WHERE int_field = 1"; + + float[] new_values = new float[4]; + + new_values[0] = 1300.10F; + new_values[1] = 1400.20F; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void DoubleArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Double Array Test"); + Console.WriteLine("------ ----- ----"); + + string updateText = "update TEST_TABLE_01 set barray_field = @array_field " + + "WHERE int_field = 1"; + + double[] new_values = new double[2]; + + new_values[0] = 1700.10; + new_values[1] = 1800.20; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void NumericArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Numeric/Decimal Array Test"); + Console.WriteLine("--------------- ----- ----"); + + string updateText = "update TEST_TABLE_01 set narray_field = @array_field " + + "WHERE int_field = 1"; + + decimal[] new_values = new decimal[2]; + + new_values[0] = 2100.10M; + new_values[1] = 2200.20M; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void DateArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Date Array Test"); + Console.WriteLine("---- ----- ----"); + + string updateText = "update TEST_TABLE_01 set darray_field = @array_field " + + "WHERE int_field = 1"; + + DateTime[] new_values = new DateTime[4]; + + new_values[0] = DateTime.Now.AddDays(100); + new_values[1] = DateTime.Now.AddDays(200); + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void TimeArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Time Array Test"); + Console.WriteLine("---- ----- ----"); + + string updateText = "update TEST_TABLE_01 set tarray_field = @array_field " + + "WHERE int_field = 1"; + + DateTime[] new_values = new DateTime[2]; + + new_values[0] = DateTime.Now.AddHours(100); + new_values[1] = DateTime.Now.AddHours(200); + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void TimeStampArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("TimeStamp Array Test"); + Console.WriteLine("--------- ----- ----"); + + string updateText = "update TEST_TABLE_01 set tsarray_field = @array_field " + + "WHERE int_field = 1"; + + DateTime[] new_values = new DateTime[2]; + + new_values[0] = DateTime.Now.AddSeconds(100); + new_values[1] = DateTime.Now.AddSeconds(200); + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void CharArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("Char Array Test"); + Console.WriteLine("---- ----- ----"); + + string updateText = "update TEST_TABLE_01 set carray_field = @array_field " + + "WHERE int_field = 1"; + + string[] new_values = new string[2]; + + new_values[0] = "abc"; + new_values[1] = "abcdef"; + + FbCommand update = new FbCommand(updateText, connection, transaction); + + update.Parameters.Add("@array_field", FbType.Array).Value = new_values; + + update.ExecuteNonQuery(); + + PrintArrayValues(new_values, false); + } + + [Test] + public void VarCharArrayPartialUpdateTest() + { + Console.WriteLine("\r\n"); + Console.WriteLine("VarChar Array Test"); + Console.WriteLine("------- ----- ----"); + + string updateText = "update TEST_TABLE_01 set varray_field = @array_field " + + "WHERE int_field = 1"; + + string[] new_values = new string[2]; + + new_values[0] = "abc"; + new_values[1] = "abcdef"; FbCommand update = new FbCommand(updateText, connection, transaction); |