public void ExplicitTransaction13()
{
CommittableTransaction ct = new CommittableTransaction();
IntResourceManager irm = new IntResourceManager(1);
Assert.Null(Transaction.Current);
Transaction.Current = ct;
try
{
irm.Value = 2;
irm.FailPrepare = true;
Assert.Throws<TransactionAbortedException>(() => ct.Commit());
Assert.Equal(TransactionStatus.Aborted, ct.TransactionInformation.Status);
Assert.Throws<InvalidOperationException>(() => ct.BeginCommit(null, null));
}
finally
{
Transaction.Current = null;
}
}