public void GetPropertyAccessExpression_BidirectionalMultipleRelation()
        {
            var propertyAccessor = _bidirectionalMultipleRelationReflector
                                   .GetPropertyAccessExpression(typeof(IMixinTypeWithDomainObjectAttributes_AnnotatedPropertiesPartOfInterface)).Compile();

            using (ClientTransaction.CreateRootTransaction().EnterDiscardingScope())
            {
                var obj           = MixinTarget_AnnotatedPropertiesPartOfInterface.NewObject();
                var propertyValue = TestDomainObject.NewObject();
                ((IMixinTypeWithDomainObjectAttributes_AnnotatedPropertiesPartOfInterface)obj).BidirectionalMultiplePropertyWithMandatoryAttribute.Add(propertyValue);
                var result = propertyAccessor(obj);
                Assert.That(result, Is.EqualTo(new[] { propertyValue }));
            }
        }
        public void GetPropertyAccessExpression_NonRelationIntProperty()
        {
            var propertyAccessor = _intPropertyReflector
                                   .GetPropertyAccessExpression(typeof(IMixinTypeWithDomainObjectAttributes_AnnotatedPropertiesPartOfInterface)).Compile();

            using (ClientTransaction.CreateRootTransaction().EnterDiscardingScope())
            {
                var obj           = MixinTarget_AnnotatedPropertiesPartOfInterface.NewObject();
                var propertyValue = 10;
                ((IMixinTypeWithDomainObjectAttributes_AnnotatedPropertiesPartOfInterface)obj).IntProperty = propertyValue;
                var result = propertyAccessor(obj);
                Assert.That(result, Is.EqualTo(propertyValue));
            }
        }