1 //
2 // Copyright (c) 2006 Mainsoft Co.
3 //
4 // Permission is hereby granted, free of charge, to any person obtaining
5 // a copy of this software and associated documentation files (the
6 // "Software"), to deal in the Software without restriction, including
7 // without limitation the rights to use, copy, modify, merge, publish,
8 // distribute, sublicense, and/or sell copies of the Software, and to
9 // permit persons to whom the Software is furnished to do so, subject to
10 // the following conditions:
11 //
12 // The above copyright notice and this permission notice shall be
13 // included in all copies or substantial portions of the Software.
14 //
15 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 //
23 
24 using System;
25 using System.Data;
26 using System.Data.OracleClient;
27 
28 using MonoTests.System.Data.Utils;
29 
30 
31 using NUnit.Framework;
32 
33 namespace MonoTests.System.Data.OracleClient
34 {
35 	[TestFixture]
36 	public class OracleDataReader_GetFieldType : ADONetTesterClass
37 	{
38 		OracleConnection con;
39 		OracleCommand cmd;
40 		OracleDataReader rdr;
41 
42 		[SetUp]
SetUp()43 		public void SetUp()
44 		{
45 			Exception exp = null;
46 			BeginCase("Setup");
47 			try
48 			{
49 				con = new OracleConnection(MonoTests.System.Data.Utils.ConnectedDataProvider.ConnectionString);
50 				con.Open();
51 				cmd = new OracleCommand("Select OrderID, CustomerID, OrderDate From Orders", con);
52 				rdr = cmd.ExecuteReader();
53 				rdr.Read();
54 
55 			}
56 			catch(Exception ex){exp = ex;}
57 			finally	{EndCase(exp);}
58 		}
59 
60 		[TearDown]
TearDown()61 		public void TearDown()
62 		{
63 			if (con != null && con.State == ConnectionState.Open) con.Close();
64 		}
65 
Main()66 		public static void Main()
67 		{
68 			OracleDataReader_GetFieldType tc = new OracleDataReader_GetFieldType();
69 			Exception exp = null;
70 			try
71 			{
72 				tc.BeginTest("OracleDataReader_GetFieldType");
73 				tc.SetUp();
74 				tc.run();
75 				tc.TearDown();
76 			}
77 			catch(Exception ex){exp = ex;}
78 			finally	{tc.EndTest(exp);}
79 		}
80 
81 		[Test]
run()82 		public void run()
83 		{
84 			Exception exp = null;
85 
86 			try
87 			{
88 				BeginCase("check type string");
89 				Compare(rdr.GetFieldType(1).FullName,typeof(string).FullName );
90 			}
91 			catch(Exception ex){exp = ex;}
92 			finally{EndCase(exp); exp = null;}
93 
94 			try
95 			{
96 				BeginCase("check type date");
97 				Compare(rdr.GetFieldType(2).FullName,typeof(DateTime).FullName );
98 			}
99 			catch(Exception ex){exp = ex;}
100 			finally{EndCase(exp); exp = null;}
101 		}
102 	}
103 }