protected void OutputAnalysisMetrics(string heading, MetricsReport metrics) { var prepared = new PreparedMetricsFactory().Prepare(metrics); Console.WriteLine(string.Format("{0} ({1} RLOC):\tACD: {2};\tCS: {3};\tCC: {4};\tML: {5};\tPF: {6};\tCN: {7};", heading, prepared.CommonKnowledge.RelevantLinesOfCode, prepared.Rated.AverageComponentDependency, prepared.Rated.AverageRatedClassSize, prepared.Rated.AverageRatedCyclomaticComplexity, prepared.Rated.AverageRatedMethodLength, prepared.Rated.AverageRatedNumberOfNonStaticPublicFields, prepared.Rated.NamespacesWithCyclicDependencies)); Console.WriteLine(string.Format("Hotspots:\tACD: {0};\tCS: {1};\tCC: {2};\tML: {3};\tPF: {4};\tCN: {5};", prepared.CumulativeComponentDependencyHotspots.Count(), prepared.ClassSizeHotspots.Count(), prepared.CyclomaticComplexityHotspots.Count(), prepared.MethodLengthHotspots.Count(), prepared.NumberOfNonStaticPublicFieldsHotspots.Count(), prepared.NumberOfNamespacesInCycleHotspots.Count())); Console.WriteLine(string.Format("Distributions:\tACD: {0};\tCS: {1};\tCC: {2};\tML: {3};\tPF: {4};\tCN: {5};", prepared.CumulativeComponentDependencyHistogram.GeometricalFit.Parameter, prepared.ClassSizeHistogram.GeometricalFit.Parameter, prepared.CyclomaticComplexityHistogram.GeometricalFit.Parameter, prepared.MethodLengthHistogram.GeometricalFit.Parameter, prepared.NumberOfNonStaticPublicFieldsHistogram.GeometricalFit.Parameter, prepared.NumberOfNamespacesInCycleHistogram.GeometricalFit.Parameter)); }
private ViewHub() { metricsFactory = new PreparedMetricsFactory(); AnalysisStarted += () => analysisReady = false; MetricsReady += m => analysisReady = true; MetricsReady += m => MostRecentMetrics = m; ShouldUseParallelism = () => false; }
public void AnalyzeRichardsCode() { var report = AnalyzeAssembliesIn(@"Z:\temp\4manuel"); var crmWrapper = new PreparedMetricsFactory().Prepare(report); Assert.IsNotNull(crmWrapper); }