private LogManager()
        {
            // the order here is quite important because this is implicitly the expectation of the templates
            AllTestNames = new SortedSet <EnumTestUnitNames>();
            foreach (var testName in (EnumTestUnitNames[])Enum.GetValues(typeof(EnumTestUnitNames)))
            {
                AllTestNames.Add(testName);
            }

            IdentifiedBehaviorsDescriptions = new Dictionary <EnumIdentifiedDataBehavior, string>();
            foreach (var behavior in (EnumIdentifiedDataBehavior[])Enum.GetValues(typeof(EnumIdentifiedDataBehavior)))
            {
                IdentifiedBehaviorsDescriptions.Add(behavior, ParsingHelper.GetDescription(behavior));
            }

            NoWarningNorErrorHappenedFlag_ByOldId = new Dictionary <int, bool>();
            countSeverityTypeOccurences           = new Dictionary <EnumTestUnitNames, Dictionary <EnumResultSeverityType, int> >();
            countDataBehaviorOccurences           = new Dictionary <EnumTestUnitNames, Dictionary <EnumIdentifiedDataBehavior, int> >();

            durations = new Dictionary <EnumTestUnitNames, HashSet <TimeSpan> >();
            foreach (var testName in AllTestNames)
            {
                durations.Add(testName, new HashSet <TimeSpan>());
            }

            durationByProfile = new HashSet <TimeSpan>();

            detailedReportsWriters = new Dictionary <EnumTestUnitNames, HtmlTextWriter>();

            StatsCountTotalOldIds     = 0;
            StatsCountProfilesIgnored = 0;
        }