public void InvokePropertyRef() { 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.PropertyRef(x=> x.AProp); customizersHolder.InvokeCustomizers(propertyPath, collectionMapper.Object); keyMapper.Verify(x => x.PropertyRef(It.Is<MemberInfo>(v => v == ForClass<MyClass>.Property(p=> p.AProp))), 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()); }
public void InvokeColumn() { 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.Column("pizza"); customizersHolder.InvokeCustomizers(propertyPath, collectionMapper.Object); keyMapper.Verify(x => x.Column(It.Is<string>(str => str == "pizza")), Times.Once()); }
public void InvokePropertyRef() { 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.PropertyRef(x => x.AProp); customizersHolder.InvokeCustomizers(propertyPath, collectionMapper.Object); keyMapper.Verify(x => x.PropertyRef(It.Is <MemberInfo>(v => v == ForClass <MyClass> .Property(p => p.AProp))), 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()); }
public void InvokeColumn() { 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.Column("pizza"); customizersHolder.InvokeCustomizers(propertyPath, collectionMapper.Object); keyMapper.Verify(x => x.Column(It.Is <string>(str => str == "pizza")), Times.Once()); }