public void Add2UnitsAnd1Conversion()
{
//UnitDataGen uGen = new UnitDataGen();
//ConversionMethod cmo = uGen.GenerateUnits1();
//IPersistenceManager pManager = IoCFactory.Container.Resolve<IPersistenceManager>() as IPersistenceManager;
//using (IUnitOfWork unit = pManager.CreateUnitOfWork(false, true, true, unit_BeforeCommit, unit_AfterCommit))
//{
// IRepository<ConversionMethod> repo1 = unit.GetRepository<ConversionMethod>();
// IRepository<Unit> repo2 = unit.GetRepository<Unit>();
// repo1.Put(cmo);
// //repo2.Put(cmo.Source);
// //repo2.Put(cmo.Target);
// unit.Commit();
// //var received = repo1.Get(1);
// //var received2 = repo1.Get(p => p.Id == 1 && p.Source.Id == 1);
// //var u1 = repo2.Get(1);
// ////repo1.Delete(received);
// //u1.ConversionsIamTheSource.ForEach(p => repo1.Delete(p));
// //u1.ConversionsIamTheSource.Clear();
// //u1.ConversionsIamTheTarget.ForEach(p => repo1.Delete(p));
// //u1.ConversionsIamTheTarget.Clear();
// //repo2.Delete(u1);
// //unit.Commit();
// ////Assert.AreEqual(received.Id, cmo.Id);
// ////Assert.AreEqual(received.Source.Id, cmo.Source.Id);
// ////Assert.IsTrue(received.Source.ConversionsIamTheSource.Count() >= 1);
// ////Assert.AreEqual(received.Source.ConversionsIamTheSource.First().Target.Id, cmo.Target.Id);
//}
////pManager.Shutdown(); // do not do it in production code
}