public void AutoMapProperties_MapsAllPropertiesToConfiguration()
        {
            //Assign
            var typeConfig = new StubSitecoreTypeConfiguration();

            typeConfig.Type    = typeof(StubClass);
            typeConfig.AutoMap = true;

            //Act
            typeConfig.PerformAutoMap();

            //Assert
            Assert.AreEqual(5, typeConfig.Properties.Count());
            Assert.IsNotNull(typeConfig.IdConfig);
        }
        public void AutoMapProperty_MappingSitecoreParent_ReturnsParentConfig()
        {
            //Assign
            var typeConfig = new StubSitecoreTypeConfiguration();
            typeConfig.Type = typeof (StubClass);

            var prop = typeConfig.Type.GetProperty("Parent");

            //Act
            var propConfig = typeConfig.StubAutoMapProperty(prop);

            //Assert
            Assert.IsTrue(propConfig is SitecoreParentConfiguration);
            Assert.AreEqual(prop, propConfig.PropertyInfo);
        }
        public void AutoMapProperty_MappingSitecoreId_ReturnsIdConfig()
        {
            //Assign
            var typeConfig = new StubSitecoreTypeConfiguration();

            typeConfig.Type = typeof(StubClass);

            var prop = typeConfig.Type.GetProperty("Id");

            //Act
            var propConfig = typeConfig.StubAutoMapProperty(prop);

            //Assert
            Assert.IsTrue(propConfig is SitecoreIdConfiguration);
            Assert.AreEqual(prop, propConfig.PropertyInfo);
        }
        public void AutoMapProperty_MappingSitecoreField_ReturnsFieldConfig()
        {
            //Assign
            var typeConfig = new StubSitecoreTypeConfiguration();
            typeConfig.Type = typeof (StubClass);

            var prop = typeConfig.Type.GetProperty("FieldName");

            //Act
            var propConfig = typeConfig.StubAutoMapProperty(prop);

            //Assert
            Assert.IsTrue(propConfig is SitecoreFieldConfiguration);
            Assert.AreEqual(prop, propConfig.PropertyInfo);
            Assert.AreEqual("FieldName", propConfig.CastTo<SitecoreFieldConfiguration>().FieldName);
        }
        public void AutoMapProperties_MapsAllPropertiesToConfiguration()
        {
            //Assign
            var typeConfig = new StubSitecoreTypeConfiguration();
            typeConfig.Type = typeof(StubClass);
            typeConfig.AutoMap = true;

            //Act
            typeConfig.PerformAutoMap();

            //Assert
            Assert.AreEqual(5, typeConfig.Properties.Count());
            Assert.IsNotNull(typeConfig.IdConfig);
            
        }