Update of /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.Tests/Data/Core
In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv22008/Data/Core
Modified Files:
ServiceDomainTransactionManagerTests.cs
Log Message:
SPRNET-773 - Unit tests for ServiceDomainTransactionManager
Index: ServiceDomainTransactionManagerTests.cs
===================================================================
RCS file: /cvsroot/springnet/Spring.Net/test/Spring/Spring.Data.Tests/Data/Core/ServiceDomainTransactionManagerTests.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** ServiceDomainTransactionManagerTests.cs 4 Dec 2007 08:38:04 -0000 1.2
--- ServiceDomainTransactionManagerTests.cs 4 Dec 2007 16:31:14 -0000 1.3
***************
*** 19,22 ****
--- 19,25 ----
#endregion
+
+ #if (!NET_1_0)
+
#region Imports
***************
*** 76,85 ****
IPlatformTransactionManager tm = new ServiceDomainPlatformTransactionManager(txAdapter);
TransactionTemplate tt = new TransactionTemplate(tm);
! tt.Execute(delegate(ITransactionStatus status)
! {
! Assert.IsTrue(TransactionSynchronizationManager.SynchronizationActive);
! Assert.IsFalse(TransactionSynchronizationManager.CurrentTransactionReadOnly);
! return null;
! });
Assert.IsFalse(TransactionSynchronizationManager.SynchronizationActive);
--- 79,83 ----
IPlatformTransactionManager tm = new ServiceDomainPlatformTransactionManager(txAdapter);
TransactionTemplate tt = new TransactionTemplate(tm);
! tt.Execute(new TransactionDelegate(TransactionCommitMethod));
Assert.IsFalse(TransactionSynchronizationManager.SynchronizationActive);
***************
*** 90,93 ****
--- 88,98 ----
}
+ private object TransactionCommitMethod(ITransactionStatus status)
+ {
+ Assert.IsTrue(TransactionSynchronizationManager.SynchronizationActive);
+ Assert.IsFalse(TransactionSynchronizationManager.CurrentTransactionReadOnly);
+ return null;
+ }
+
[Test]
public void TransactionRollback()
***************
*** 115,126 ****
try
{
! tt.Execute(delegate(ITransactionStatus status)
! {
! Assert.IsTrue(TransactionSynchronizationManager.SynchronizationActive);
! Assert.IsFalse(TransactionSynchronizationManager.CurrentTransactionReadOnly);
! Assert.IsTrue(status.IsNewTransaction, "Is new transaction");
! if (ex != null) throw ex;
! return null;
! });
Assert.Fail("Should have thrown exception");
}
--- 120,124 ----
try
{
! tt.Execute(new TransactionRollbackTxCallback(ex));
Assert.Fail("Should have thrown exception");
}
***************
*** 147,150 ****
}
}
! }
\ No newline at end of file
--- 145,171 ----
}
+
+ #region Supporting class for TransactionRollback test
+
+ internal class TransactionRollbackTxCallback : ITransactionCallback
+ {
+ private Exception exception;
+
+ public TransactionRollbackTxCallback(Exception exception)
+ {
+ this.exception = exception;
+ }
+
+ public object DoInTransaction(ITransactionStatus status)
+ {
+ Assert.IsTrue(TransactionSynchronizationManager.SynchronizationActive);
+ Assert.IsFalse(TransactionSynchronizationManager.CurrentTransactionReadOnly);
+ Assert.IsTrue(status.IsNewTransaction, "Is new transaction");
+ throw exception;
+ }
+ }
+
+ #endregion
}
! }
! #endif
\ No newline at end of file
|