public static void Test_Generate_Class_With_Serialized_Fields()
        {
            //arrange
            //generate mappers
            List <ITypeRelationalMapper> mappers = new List <ITypeRelationalMapper>();

            mappers.Add(new StringTypeRelationalMapper());
            mappers.Add(new EngineTypeRelationalMapper());
            mappers.Add(new PrimitiveTypeRelationalMapper(new UnityPrimitiveTypeExclusion()));
            mappers.Add(new DefaultTypeRelationalMapper());

            Mock <ITypeExclusion> exclusionMock = new Mock <ITypeExclusion>(MockBehavior.Strict);

            //setup always false exclusion
            exclusionMock.Setup(x => x.isExcluded(It.IsAny <Type>())).Returns(false);

            TestityClassBuilder builder = new TestityClassBuilder(typeof(TestSerializedClass).Name + "Script");

            UnityBuildProcessTypeRelationalMapper chainMapper = new UnityBuildProcessTypeRelationalMapper(mappers);

            AddSerializedMemberStep buildStep = new AddSerializedMemberStep(chainMapper, new SerializedMemberParser(), exclusionMock.Object);

            buildStep.Process(builder, typeof(TestSerializedClass));

            string classCompiled = builder.Compile();

            //Assert.NotNull(null, classCompiled);
            //Assert.("dfdhh", null, classCompiled);
        }
        public static void Test_Generate_Class_With_Serialized_Fields()
        {
            //arrange
            //generate mappers
            List<ITypeRelationalMapper> mappers = new List<ITypeRelationalMapper>();
            mappers.Add(new StringTypeRelationalMapper());
            mappers.Add(new EngineTypeRelationalMapper());
            mappers.Add(new PrimitiveTypeRelationalMapper(new UnityPrimitiveTypeExclusion()));
            mappers.Add(new DefaultTypeRelationalMapper());

            Mock<ITypeExclusion> exclusionMock = new Mock<ITypeExclusion>(MockBehavior.Strict);

            //setup always false exclusion
            exclusionMock.Setup(x => x.isExcluded(It.IsAny<Type>())).Returns(false);

            TestityClassBuilder builder = new TestityClassBuilder(typeof(TestSerializedClass).Name + "Script");

            UnityBuildProcessTypeRelationalMapper chainMapper = new UnityBuildProcessTypeRelationalMapper(mappers);

            AddSerializedMemberStep buildStep = new AddSerializedMemberStep(chainMapper, new SerializedMemberParser(), exclusionMock.Object);

            buildStep.Process(builder, typeof(TestSerializedClass));

            string classCompiled = builder.Compile();

            //Assert.NotNull(null, classCompiled);
            //Assert.("dfdhh", null, classCompiled);
        }