public void EndMethod(APC methodEntry, bool ignoreMethodEntryAPC = false) { if (!expectedMethodOutcomes.Passed) { output.WriteLine("Method {0} has new failures", mdDecoder.FullName(this.currentMethod)); } this.additionalErrors += expectedMethodOutcomes.Errors; output.EndMethod(methodEntry, ignoreMethodEntryAPC); expectedMethodOutcomes = null; }
public void StartMethod(Method method) { output.StartMethod(method); IEnumerable <XElement> methodRoots = this.GetMethodRoots(method); if (!methodRoots.Any()) { //output.WriteLine("No matches for method {0} ", mdDecoder.FullName(method)); methodsUnmatched++; } else { //output.WriteLine("Found baseline for method {0} ", mdDecoder.FullName(method)); } expectedMethodOutcomes = BaseLineOutcomes.GetOutcomesForMethod(methodRoots, this.options.baseLineStrategy); //BaseLineOutcomes.GetOutcomes(methodRoots, this.options.baseLineStrategy); this.currentMethod = method; }
public XmlBaseLineComparer(IOutputFullResults <Method, Assembly> output, GeneralOptions options, IDecodeMetaData <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly> mdDecoder, CacheManager <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, ExternalExpression <APC, SymbolicValue>, SymbolicValue> cacheManager, string xmlBaseLineFile) : base(output, options, mdDecoder) { this.cacheManager = cacheManager; try { this.baseLineRoot = XElement.Load(xmlBaseLineFile); // gets pool of *all* expected outcomes (currently, does not distinguish by method) expectedAssemblyOutcomes = BaseLineOutcomes.GetOutcomes(this.GetAssemblyRoots(), this.options.baseLineStrategy); } catch (System.Xml.XmlException) { output.WriteLine("Error: baseline file {0} is corrupted", xmlBaseLineFile); Environment.Exit(-1); } this.swallowedCounter = new SwallowedBuckets(); }