public void InvokeOnDelete() { var propertyPath = new PropertyPath(null, ForClass<MyClass>.Property(x => x.MyCollection)); var customizersHolder = new CustomizersHolder(); var customizer = new CollectionKeyCustomizer<MyClass>(propertyPath, customizersHolder); var collectionMapper = new Mock<ISetPropertiesMapper>(); var keyMapper = new Mock<IKeyMapper>(); collectionMapper.Setup(x => x.Key(It.IsAny<Action<IKeyMapper>>())).Callback<Action<IKeyMapper>>( x => x.Invoke(keyMapper.Object)); customizer.OnDelete(OnDeleteAction.Cascade); customizersHolder.InvokeCustomizers(propertyPath, collectionMapper.Object); keyMapper.Verify(x => x.OnDelete(It.Is<OnDeleteAction>(v => v == OnDeleteAction.Cascade)), Times.Once()); }
public void InvokeOnDelete() { var propertyPath = new PropertyPath(null, ForClass <MyClass> .Property(x => x.MyCollection)); var customizersHolder = new CustomizersHolder(); var customizer = new CollectionKeyCustomizer <MyClass>(propertyPath, customizersHolder); var collectionMapper = new Mock <ISetPropertiesMapper>(); var keyMapper = new Mock <IKeyMapper>(); collectionMapper.Setup(x => x.Key(It.IsAny <Action <IKeyMapper> >())).Callback <Action <IKeyMapper> >( x => x.Invoke(keyMapper.Object)); customizer.OnDelete(OnDeleteAction.Cascade); customizersHolder.InvokeCustomizers(propertyPath, collectionMapper.Object); keyMapper.Verify(x => x.OnDelete(It.Is <OnDeleteAction>(v => v == OnDeleteAction.Cascade)), Times.Once()); }