public void RemoveTotalDuplicates() { const string testFolder = "ScenarioDuplicatesTdl"; var dir = TdlDirectory(testFolder); var container = _modelConverter.BuildContainer(dir, Directory.GetFiles(dir, "ScenarioTotalDuplicates.Tdl").Select(Path.GetFileName)); var processor = new ScenarioProcessor(); var suiteBefore = container.GetAll <SuiteDefModel>().First(model => model.Name == "KIS_dupe_only"); Assert.AreEqual("DuplicateTest-1", suiteBefore.Statements.First().Name); processor.ReplaceDuplicates(container.GetAll <ScenarioModel>()); var scenarios = container.GetAll <ScenarioBaseModel>(); Assert.AreEqual(6, scenarios.Count(), "only two scenarios should be present"); ValidateScenarioSet( scenarios, "ScenarioWithTwoDupes", new[] { "OriginalTest-1" }); ValidateScenarioSet( scenarios, "ScenarioNoDupes", new[] { "OriginalTest-1", "OriginalTest-2" }); ValidateScenarioSet( scenarios, "ScenarioWithDuplicate", new[] { "OriginalTest-2", "OriginalTest-1" }); var module = container.GetAll <ModuleModel>().First(); Assert.AreEqual(0, module.Items.Count(item => item.Name == "DuplicateTest-1")); var suite = container.GetAll <SuiteDefModel>().First(model => model.Name == "KIS_dupe_only"); Assert.AreEqual("OriginalTest-1", suite.Statements.First().Name); }
protected ModelContainer BuildContainer(params string[] tdlFiles) { return(_modelConverter.BuildContainer(DirectoryInputFiles, tdlFiles)); }