public void ShouldCreateTestDependenciesIntoProjectFile() { // mock const string ns = "qualquer.coisa"; var filePath = FixtureHelper.CreateOrOverwriteFixtureFile(@".\_Fixtures\Parsers\ProjectFile_WithOneFeature.csproj"); Func<Scenario, StepsBuilder> stepBuilderGenerator = (scenario) => { var builder = new CSharpFeatureStepsBuilder(); builder.RootNamespace = ns; builder.Feature = new Feature(); builder.Scenario = scenario; return builder; }; // prepare var parser = new VisualStudioProjectFileParser(filePath); var featureFiles = parser.ReadFeatureFiles(); var specs = this.GenerateSpecificationGroupsFromFeatureFiles(featureFiles); foreach (var spec in specs) { foreach (var scenario in spec.Feature.Scenarios) { spec.StepBuilderGenerator = stepBuilderGenerator; spec.AddStepBuilder(scenario); } } // do parser.AppendFeatureDependencies(specs); // assert var hasDependencyTests = this.HasXmlNodeWithDependentFeatureCsFiles(filePath); Assert.IsTrue(hasDependencyTests); }
public void ShoulNotHaveEmptyXmlNsArguments() { // mock var filePath = FixtureHelper.CreateOrOverwriteFixtureFile(@".\_Fixtures\Parsers\ProjectFile_WithOneFeature.csproj"); // prepare var parser = new VisualStudioProjectFileParser(filePath); var featureFiles = parser.ReadFeatureFiles(); var specs = this.GenerateSpecificationGroupsFromFeatureFiles(featureFiles); // do parser.AppendFeatureDependencies(specs); // assert var hasEmptyXmlNs = this.HasEmptyXmlNsInProjectFile(filePath); Assert.IsFalse(hasEmptyXmlNs); }
public void ShouldReadFeatureFilePathsExistingInAProjectFile() { // mock var filePath = @".\_Fixtures\Parsers\ProjectFile_WithFeatures.csproj"; // prepare var parser = new VisualStudioProjectFileParser(filePath); // do var featureFiles = parser.ReadFeatureFiles(); // assert Assert.IsNotNull(featureFiles); Assert.AreNotEqual(0, featureFiles.Count()); foreach (var featureFile in featureFiles) { var endsWithFeatureEx = featureFile.EndsWith(".feature", StringComparison.OrdinalIgnoreCase); Assert.IsTrue(endsWithFeatureEx); } }