public string Build(MSpecTestRunner.Run run) { return new[] { TimeInfo(run), Filters(run), XmlReport(run), Assemblies(run) } .SelectMany(x => x) .Aggregate((acc, curr) => acc + " " + curr); }
static TestRunInfo FindRunInfo(MSpecTestRunner.Run run, Assembly assembly) { var runInfo = run.RunInfos .FirstOrDefault(x => StringComparer.Ordinal.Equals(x.Assembly, assembly.AssemblyLocation)); if (runInfo == null) { Debug.WriteError("Could not match reported assembly {0} to any of the tested assemblies", assembly.AssemblyLocation); } return runInfo; }
public void SetUp() { _configuration = MockRepository.GenerateMock<IConfiguration>(); _assemblyReader = MockRepository.GenerateMock<IAssemblyReader>(); _fileSystem = MockRepository.GenerateStub<IFileSystemService>(); _externalProcess = MockRepository.GenerateStub<IExternalProcess>(); _commandLineBuilder = MockRepository.GenerateStub<IMSpecCommandLineBuilder>(); _runner = new MSpecTestRunner(_assemblyReader, _configuration, _fileSystem, _externalProcess, _commandLineBuilder); }
public void SetUp() { _configuration = MockRepository.GenerateMock <IConfiguration>(); _assemblyReader = MockRepository.GenerateMock <AutoTest.TestRunners.Shared.AssemblyAnalysis.IAssemblyPropertyReader>(); _fileSystem = MockRepository.GenerateStub <IFileSystemService>(); _externalProcess = MockRepository.GenerateStub <IExternalProcess>(); _commandLineBuilder = MockRepository.GenerateStub <IMSpecCommandLineBuilder>(); _runner = new MSpecTestRunner(_assemblyReader, _configuration, _fileSystem, _externalProcess, _commandLineBuilder); }
IEnumerable<string> Filters(MSpecTestRunner.Run run) { var filters = CreateFilterFile(run.RunInfos); if (filters == null) { yield break; } run.RegisterCleanup(() => { if (_fileSystem.FileExists(filters)) { File.Delete(filters); } }); yield return String.Format("--filter \"{0}\"", filters); }
IEnumerable<string> XmlReport(MSpecTestRunner.Run run) { var report = Path.GetTempFileName(); run.RegisterResultHarvester(()=> { var parser = new MSpecReportParser(report, run); return parser.Parse(); }); run.RegisterCleanup(() => { if (_fileSystem.FileExists(report)) { File.Delete(report); } }); yield return String.Format("--xml \"{0}\"", report); }
IEnumerable<string> TimeInfo(MSpecTestRunner.Run run) { yield return String.Format("--timeinfo"); }
static IEnumerable<string> Assemblies(MSpecTestRunner.Run run) { return run.RunInfos .Select(x => x.Assembly) .Distinct() .Select(x => "\"" + x + "\""); }
public MSpecReportParser(string reportFile, MSpecTestRunner.Run run) { _reportFile = reportFile; _run = run; }