Example #1
0
        public void CreateNewFinder()
        {
            var classDefinition = CreateClassDefinition(typeof(DerivedClassWithMappingAttribute));
            var nameResolver    = new ReflectionBasedMemberInformationNameResolver();
            IPropertyMetadataProvider propertyMetadataReflector = new PropertyMetadataReflector();
            var propertyFinder = new NameBasedPropertyFinder(
                "Property2",
                typeof(DerivedClassWithMappingAttribute),
                true,
                true,
                nameResolver,
                classDefinition.PersistentMixinFinder,
                propertyMetadataReflector);

            var result = (NameBasedPropertyFinder)PrivateInvoke.InvokeNonPublicMethod(
                propertyFinder,
                "CreateNewFinder",
                typeof(string),
                true,
                true,
                nameResolver,
                classDefinition.PersistentMixinFinder,
                propertyMetadataReflector);

            Assert.That(result.Type, Is.SameAs(typeof(string)));
            Assert.That(result.IncludeBaseProperties, Is.True);
            Assert.That(result.IncludeMixinProperties, Is.True);
            Assert.That(result.NameResolver, Is.SameAs(nameResolver));
            Assert.That(PrivateInvoke.GetNonPublicField(result, "_propertyName"), Is.EqualTo("Property2"));
        }
Example #2
0
        public void GetStorageClass_WithoutAttribute_ReturnsNull()
        {
            var propertyInformationStub = MockRepository.GenerateStub <IPropertyInformation>();

            propertyInformationStub
            .Stub(_ => _.GetCustomAttribute <StorageClassAttribute> (false))
            .Return(null);

            var reflector = new PropertyMetadataReflector();
            var result    = reflector.GetStorageClass(propertyInformationStub);

            Assert.That(result, Is.Null);
        }
Example #3
0
        public void GetStorageClass_WithDerivedAttribute_ReturnsStorageClass()
        {
            var propertyInformationStub = MockRepository.GenerateStub <IPropertyInformation>();

            propertyInformationStub
            .Stub(_ => _.GetCustomAttribute <StorageClassAttribute> (false))
            .Return(new StorageClassNoneAttribute());

            var reflector = new PropertyMetadataReflector();
            var result    = reflector.GetStorageClass(propertyInformationStub);

            Assert.That(result, Is.EqualTo(StorageClass.None));
        }