SqlTransactionTest.cs 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. //
  2. // SqlTransactionTest.cs - NUnit Test Cases for testing the
  3. // SqlTransaction class
  4. // Author:
  5. // Umadevi S ([email protected])
  6. // Sureshkumar T ([email protected])
  7. //
  8. // Copyright (c) 2004 Novell Inc., and the individuals listed
  9. // on the ChangeLog entries.
  10. //
  11. // Permission is hereby granted, free of charge, to any person obtaining
  12. // a copy of this software and associated documentation files (the
  13. // "Software"), to deal in the Software without restriction, including
  14. // without limitation the rights to use, copy, modify, merge, publish,
  15. // distribute, sublicense, and/or sell copies of the Software, and to
  16. // permit persons to whom the Software is furnished to do so, subject to
  17. // the following conditions:
  18. //
  19. // The above copyright notice and this permission notice shall be
  20. // included in all copies or substantial portions of the Software.
  21. //
  22. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  23. // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  24. // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  25. // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  26. // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  27. // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  28. // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  29. //
  30. using System;
  31. using System.Data;
  32. using System.Data.Common;
  33. using System.Data.SqlClient;
  34. using NUnit.Framework;
  35. namespace MonoTests.System.Data.SqlClient
  36. {
  37. [TestFixture]
  38. [Category ("sqlserver")]
  39. public class SqlTransactionTest
  40. {
  41. [Test]
  42. public void TransactionCommitTest ()
  43. {
  44. SqlConnection conn = new SqlConnection (ConnectionManager.Singleton.ConnectionString);
  45. try {
  46. conn.Open ();
  47. using (SqlTransaction transaction = conn.BeginTransaction())
  48. {
  49. string sSql = "Insert into employee (id, fname, dob, doj) Values (6005, 'NovellBangalore', '1989-02-11', '2005-07-22')";
  50. SqlCommand command = new SqlCommand();
  51. command.Connection = conn;
  52. command.CommandText = sSql;
  53. command.Transaction = transaction;
  54. command.CommandType = CommandType.Text;
  55. command.ExecuteNonQuery();
  56. transaction.Commit();
  57. }
  58. } finally {
  59. DBHelper.ExecuteSimpleSP (conn, "sp_clean_person_table");
  60. if (conn != null && conn.State != ConnectionState.Closed)
  61. conn.Close ();
  62. }
  63. }
  64. }
  65. }