private static void VerifyElementDeletion <TTarget>(IQuery query, MockLinqToDbDataBuilder factsDb, TTarget targetObject) where TTarget : class, IIdentifiable <long>, IFactObject, new() { factsDb.Has(targetObject); var factory = new VerifiableRepositoryFactory(); Transformation.Create(query, factory) .ApplyChanges <TTarget>(new DefaultIdentityProvider().GetId(targetObject)); factory.Verify <TTarget>( x => x.Delete(It.Is(Predicate.ById <TTarget>(new DefaultIdentityProvider().GetId(targetObject)))), Times.Once, string.Format("The {0} element was not deleted.", typeof(TTarget).Name)); }
private static void VerifyElementUpdate <TSource, TTarget>(IQuery query, MockLinqToDbDataBuilder ermDb, MockLinqToDbDataBuilder factsDb, TSource sourceObject, TTarget targetObject) where TSource : class, IIdentifiable, new() where TTarget : class, IIdentifiable, IFactObject, new() { ermDb.Has(sourceObject); factsDb.Has(targetObject); var factory = new VerifiableRepositoryFactory(); Transformation.Create(query, factory) .ApplyChanges <TTarget>(targetObject.Id); factory.Verify <TTarget>( x => x.Update(It.Is(Predicate.ById <TTarget>(targetObject.Id))), Times.Once, string.Format("The {0} element was not updated.", typeof(TTarget).Name)); }
private static void VerifyElementInsertion <TSource, TTarget>(IQuery query, MockLinqToDbDataBuilder ermDb, TSource sourceObject) where TSource : class, IIdentifiable <long>, new() where TTarget : class, IIdentifiable <long>, IFactObject, new() { var entityId = new DefaultIdentityProvider().GetId(sourceObject); ermDb.Has(sourceObject); var factory = new VerifiableRepositoryFactory(); Transformation.Create(query, factory) .ApplyChanges <TTarget>(entityId); factory.Verify <TTarget>( x => x.Add(It.Is(Predicate.ById <TTarget>(entityId))), Times.Once, string.Format("The {0} element was not inserted.", typeof(TTarget).Name)); }