public void Should_commit_operations_from_nested_transactions()
{
using(var outer = _target.BeginTransaction())
{
_target.Exec("INSERT INTO Tbl(IntValue) VALUES(1)");
using (var inner = _target.BeginTransaction())
{
_target.Exec("INSERT INTO Tbl(IntValue) VALUES(2)");
inner.Commit();
}
using (var inner = _target.BeginTransaction())
{
_target.Exec("INSERT INTO Tbl(IntValue) VALUES(3)");
using (var innerInner = _target.BeginTransaction())
{
_target.Exec("INSERT INTO Tbl(IntValue) VALUES(4)");
innerInner.Commit();
}
inner.Commit();
}
outer.Commit();
}
_target.Scalar<int>("SELECT COUNT(*) FROM Tbl").Should().Be.EqualTo(4);
}