Exemplo n.º 1
0
        public void PrintPerfCounter()
        {
            var output = new StringBuilder();
            //Console.WriteLine(
            //	"Variation: '{8}', Time/Run: {7}ms, Runs: {0}x, Model Depth: {1}, SubstitutionCount: {2}," +
            //	" Template Size: {3}, ParseTime: {4}, RenderTime: {5}, Total Time: {6}",
            //	runs, modelDepth, inserts, sizeOfTemplate, parseTime.Elapsed, renderTime.Elapsed, totalTime.Elapsed,
            //	totalTime.ElapsedMilliseconds / (double) runs, variation);
            var delimiter = " | ";

            output.AppendLine(ModelPerformanceCounterEntity.Header(delimiter));
            foreach (var performanceCounter in PerformanceCounters.OfType <ModelPerformanceCounterEntity>())
            {
                output.AppendLine("| " + performanceCounter.PrintAsCsv(delimiter) + "|");
            }
            output.AppendLine(ExpressionPerformanceCounterEntity.Header(delimiter));
            foreach (var performanceCounter in PerformanceCounters.OfType <ExpressionPerformanceCounterEntity>())
            {
                output.AppendLine("| " + performanceCounter.PrintAsCsv(delimiter) + "|");
            }

            Console.WriteLine(output.ToString());
            //TestContext.Progress.WriteLine(output.ToString());
            File.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + @"\MorestachioPerf.md", output.ToString());
        }
Exemplo n.º 2
0
        public void PrintPerfCounter()
        {
            var output = new StringBuilder();

            output.AppendLine("## Test Net" + Environment.Version + "   ");
            output.AppendLine("> Run at " + DateTime.Today.ToString("g") + "   ");
#if DEBUG
            output.AppendLine("WARNING - RUN IN DEBUG - WARNING   ");
#endif
            //Console.WriteLine(
            //	"Variation: '{8}', Time/Run: {7}ms, Runs: {0}x, Model Depth: {1}, SubstitutionCount: {2}," +
            //	" Template Size: {3}, ParseTime: {4}, RenderTime: {5}, Total Time: {6}",
            //	runs, modelDepth, inserts, sizeOfTemplate, parseTime.Elapsed, renderTime.Elapsed, totalTime.Elapsed,
            //	totalTime.ElapsedMilliseconds / (double) runs, variation);
            var delimiter   = "|";
            var perfCounter = PerformanceCounters.OfType <ModelPerformanceCounterEntity>().ToArray();
            if (perfCounter.Any())
            {
                output.AppendLine(ModelPerformanceCounterEntity.Header(delimiter, perfCounter, out var fieldSizes));
                foreach (var performanceCounter in perfCounter)
                {
                    output.AppendLine(performanceCounter.PrintAsCsv(delimiter, fieldSizes));
                }
            }
            var expPerCounter = PerformanceCounters.OfType <ExpressionPerformanceCounterEntity>();

            if (expPerCounter.Any())
            {
                output.AppendLine(ExpressionPerformanceCounterEntity.Header(delimiter));
                foreach (var performanceCounter in expPerCounter)
                {
                    output.AppendLine("| " + performanceCounter.PrintAsCsv(delimiter, null) + "|");
                }
            }

            Console.WriteLine(output.ToString());
            //TestContext.Progress.WriteLine(output.ToString());
            File.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + @"\MorestachioPerf.md", output.ToString());
        }
Exemplo n.º 3
0
 private static string MakeValueField(
     ModelPerformanceCounterEntity entity,
     Expression <Func <ModelPerformanceCounterEntity, string> > prop,
     IDictionary <string, int> fieldSizes)
 {
     try
     {
         var fieldName = GetMemberName(prop.Body).GetCustomAttribute <DisplayNameAttribute>().DisplayName;
         var value     = prop.Compile()(entity);
         var maxValue  = fieldSizes[fieldName] - value.Length;
         var spaces    = "";
         if (maxValue > 0)
         {
             spaces = Enumerable.Repeat(" ", maxValue).Aggregate((e, f) => e + f);
         }
         return($"{value}{spaces}");
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         throw;
     }
 }