예제 #1
0
 private void OutputNamespaceMetricsReport(NamespaceMetricsReport namespaceMetrics)
 {
     OutputSeperator();
     Output(String.Format("Name:\t\t{0}", namespaceMetrics.Name));
     Output(String.Format("NumberOfNamespacesInCycle:\t{0}", namespaceMetrics.NumberOfNamespacesInCycle));
     Output();
 }
예제 #2
0
        public static bool NumberOfNamespacesInCycle(int nonic)
        {
            var metrics = new NamespaceMetricsReport {
                CyclicDependencies = Create.Default <string>(nonic)
            };

            metrics.CommonKnowledge = new CommonReportKnowledge(0, 0, 1, 0);
            return(metrics.Rate().IsInCycle);
        }
예제 #3
0
 internal static bool RateNumberOfNamespacesInCycle(this NamespaceMetricsReport metrics)
 {
     if (metrics.NumberOfNamespacesInCycle > Limits.NumberOfNamespacesInCycle(metrics.CommonKnowledge))
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
예제 #4
0
        private static NamespaceMetricsWithTypeMetrics NamespaceMetrics(NamespaceMetricsReport namespaceMetrics, IEnumerable <TypeMetricsReport> typeMetrics)
        {
            var namespaceWithTypes = new NamespaceMetricsWithTypeMetrics()
            {
                Namespace = namespaceMetrics
            };

            foreach (var typeMetric in typeMetrics)
            {
                namespaceWithTypes.AddTypeReport(typeMetric);
            }
            return(namespaceWithTypes);
        }
 public HotspotNamespaceInCycle(NamespaceMetricsReport namespaceReport, MetricsReport metrics)
     : base(namespaceReport, metrics)
 {
 }
예제 #6
0
 private IEnumerable <OutgoingTypeReferences> AllTypesWithReferencesIn(NamespaceMetricsReport currentNamespace)
 {
     return(from type in metrics.TypesOfNamespace(currentNamespace)
            select new OutgoingTypeReferences(metrics, type));
 }
예제 #7
0
 private IEnumerable <TypeReference> ReferencesOutOf(NamespaceMetricsReport currentNamespace, IEnumerable <NamespaceMetricsReport> to)
 {
     return(from typeReferences in AllTypesWithReferencesIn(currentNamespace)
            from crossReference in typeReferences.Referencing(to)
            select crossReference);
 }
예제 #8
0
 public static RatedNamespaceMetrics Rate(this NamespaceMetricsReport metrics)
 {
     return(new RatedNamespaceMetrics(metrics));
 }
예제 #9
0
 public RatedNamespaceMetrics(NamespaceMetricsReport metrics)
 {
     Name      = metrics.Name;
     IsInCycle = metrics.RateNumberOfNamespacesInCycle();
 }