public static void Annotate(Convention convention, IEnumerable <Type> trackAttributes = null)
 {
     if (trackAttributes == null)
     {
         trackAttributes = convention.GetType().Assembly.GetTypes().Where(t => typeof(ColumnAnnotationAttribute).IsAssignableFrom(t));
     }
     foreach (var attType in trackAttributes)
     {
         convention.Properties()
         .Having(p => p.CustomAttributes.SingleOrDefault(att => att.AttributeType.IsAssignableFrom(attType)))
         .Configure((config, att) => config.HasColumnAnnotation(attType.FullName.Replace('.', '_'), ""));
     }
 }
示例#2
0
        ConventionResult Run(Convention convention, Type[] candidateTypes)
        {
            var classDiscoverer  = new ClassDiscoverer(convention.Config);
            var conventionResult = new ConventionResult(convention.GetType().FullName);
            var classRunner      = new ClassRunner(listener, convention.Config);

            foreach (var testClass in classDiscoverer.TestClasses(candidateTypes))
            {
                var classResult = classRunner.Run(testClass);

                conventionResult.Add(classResult);
            }

            return(conventionResult);
        }
示例#3
0
        public static void ApplySettingsToConventions(Convention conventions)
        {
            var settings = ClientSettings;

            if (settings.Count == 0)
            {
                return;
            }

            var type = conventions.GetType();

            foreach (var setting in settings)
            {
                Console.WriteLine("Applying external client setting: " + setting.Key);

                var property = type.GetProperty(setting.Key, BindingFlags.Public | BindingFlags.Instance);
                if (property == null)
                {
                    continue;
                }

                property.SetValue(conventions, setting.Value);
            }
        }
示例#4
0
文件: Runner.cs 项目: scichelli/fixie
        ConventionResult Run(Convention convention, Type[] candidateTypes)
        {
            var classDiscoverer = new ClassDiscoverer(convention.Config);
            var conventionResult = new ConventionResult(convention.GetType().FullName);
            var classRunner = new ClassRunner(listener, convention.Config);

            foreach (var testClass in classDiscoverer.TestClasses(candidateTypes))
            {
                var classResult = classRunner.Run(testClass);

                conventionResult.Add(classResult);
            }

            return conventionResult;
        }