public void transaction_Complete() { try { using (var temp = new TempDirectory()) { var path = temp.Info.ToDirectory("example").FullName; Recovery.MasterDirectory = temp.Info.ToDirectory("Recovery"); using (var scope = new TransactionScope()) { var obj = new DerivedDurableEnlistmentNotification(Guid.NewGuid(), EnlistmentOptions.None); obj.Operation.Commands.Add(new DirectoryCreateCommand(path)); scope.Complete(); } Assert.True(new DirectoryInfo(path).Exists); Thread.Sleep(1000); } } finally { Recovery.MasterDirectory = null; } }