public void Insert() { short routes = 0; BAudit bAudit = new BAudit(); EAudit eAudit = null; BUser bUser = new BUser(); EUser eUser = new EUser(); EUser insertedUser = null; TransactionScope ts = new TransactionScope(TransactionScopeOption.RequiresNew); eUser.CodeUser = Aleatory.GetString(8); eUser.Name = Aleatory.GetString(8); eUser.Password = Aleatory.GetString(8); eUser.Email = Aleatory.GetString(15); eUser.State = Aleatory.GetShort(); eUser.Audit.UserRegister = Aleatory.GetString(8); if (bUser.Select(eUser) != null) { bUser.Delete(eUser); } if (bUser.Select(eUser) == null) { routes++; } bUser.Insert(eUser); insertedUser = bUser.Select(eUser); if (insertedUser != null) { routes++; } string hash = bUser.CalculateHash(eUser); if (insertedUser.Password == hash) { routes++; } eAudit = bAudit.Select(eUser.Audit). Where(x => x.UserRegister == eUser.Audit.UserRegister && x.Code == eUser.Audit.Code && x.TypeEvent == "Insert").FirstOrDefault(); if (eAudit != null) { routes++; } ts.Dispose(); Assert.AreEqual(routes, 4); }