2005-01-31 Zoltan Varga <vargaz@freemail.hu>
[mono.git] / mcs / class / System.Data / Test / System.Data.SqlClient / SqlTransactionTest.cs
1 //\r
2 // SqlTransactionTest.cs - NUnit Test Cases for testing the\r
3 //                          SqlTransaction class\r
4 // Author:\r
5 //      Umadevi S (sumadevi@novell.com)\r
6 //\r
7 // Copyright (c) 2004 Novell Inc., and the individuals listed\r
8 // on the ChangeLog entries.\r
9 //\r
10 // Permission is hereby granted, free of charge, to any person obtaining\r
11 // a copy of this software and associated documentation files (the\r
12 // "Software"), to deal in the Software without restriction, including\r
13 // without limitation the rights to use, copy, modify, merge, publish,\r
14 // distribute, sublicense, and/or sell copies of the Software, and to\r
15 // permit persons to whom the Software is furnished to do so, subject to\r
16 // the following conditions:\r
17 //\r
18 // The above copyright notice and this permission notice shall be\r
19 // included in all copies or substantial portions of the Software.\r
20 //\r
21 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,\r
22 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\r
23 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
24 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\r
25 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\r
26 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\r
27 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
28 //\r
29 \r
30 using System;\r
31 using System.Data;\r
32 using System.Data.Common;
33 using System.Data.SqlClient;\r
34 \r
35 using NUnit.Framework;\r
36 \r
37 namespace MonoTests.System.Data.SqlClient
38 {\r
39 \r
40   [TestFixture]\r
41   public class SqlTransactionTest : MSSqlTestClient {\r
42           \r
43           [SetUp]\r
44           public void GetReady () {\r
45                 OpenConnection ();\r
46           }\r
47 \r
48           [TearDown]\r
49           public void Clean () {\r
50                 CloseConnection ();\r
51           }
52
53          [Test]\r
54           /**
55           The below test expects a table table4 with a bigint column.
56           **/   
57           public void TransactionCommitTest () {
58                         
59                 using (SqlTransaction transaction = conn.BeginTransaction())
60                 {
61                         try
62                         {
63                                 string sSql = "Insert into Region(RegionID,RegionDescription) Values ('10112', 'NovellBangalore')";
64                                 SqlCommand command = new SqlCommand();
65                                 command.Connection = conn;
66                                 command.CommandText = sSql;
67                                 command.Transaction = transaction;
68                                 command.CommandType = CommandType.Text;
69                                 command.ExecuteNonQuery();
70                                 transaction.Commit();
71                         }
72                         catch (System.Exception ex)
73                         {
74                                 transaction.Rollback();
75                         }
76                         finally
77                         {
78                                 conn.Close();
79                         }
80                         
81                 }
82         }
83
84    }\r
85 }\r