public void GetBackground_Retrieves_If_Present() { var sut = new FeatureFile(CreateGherkinDocumentWithBackground()); var background = sut.GetBackground(); Assert.NotNull(background); }
public override int GetHashCode() { unchecked { return((base.GetHashCode() * 397) ^ (FeatureFile.GetHashCode())); } }
public void GetBackground_Gives_Null_If_Not_Present() { var sut = new FeatureFile(CreateGherkinDocumentWithScenario("test")); var background = sut.GetBackground(); Assert.Null(background); }
public override int GetHashCode() { int result = FeatureFile.GetHashCode(); result = (result * 397) ^ Scenario.GetHashCode(); return(result); }
public void Constructor_WithFeature_SetsContentProperty() { var feature = new Feature(); var featureFile = new FeatureFile("filename.ext", parentFolder, feature); featureFile.Content.ShouldEqual(feature); }
public override int GetHashCode() { unchecked { int result = base.GetHashCode(); result = (result * 397) ^ FeatureFile.GetHashCode(); result = (result * 397) ^ Scenario.GetHashCode(); return(result); } }
public override int GetHashCode() { unchecked { int result = FeatureFile.GetHashCode(); result = (result * 397) ^ Scenario.GetHashCode(); result = (result * 397) ^ Example.ToString().GetHashCode(); return(result); } }
public void GetScenarioOutline_Gives_Null_If_Not_Found() { //arrange. var sut = new FeatureFile(CreateGherkinDocumentWithScenarioOutline("existing")); //act. var scenario = sut.GetScenarioOutline("non-existing"); //assert. Assert.Null(scenario); }
public void Ctor_Initializes_Properties() { //arrange. var gherkinDocument = new Gherkin.Ast.GherkinDocument(null, null); //act. var sut = new FeatureFile(gherkinDocument); //assert. Assert.Same(gherkinDocument, sut.GherkinDocument); }
Feature Parse(string FeatureFilePath, string Content) { Project.LoadFrom(FeatureItem); var FeatureFile = new FeatureFile(FeatureFilePath) { Content = Content }; return(FeatureParser.FeatureFrom(FeatureFile, FeatureItem)); }
public void GetScenarioOutline_Retrieves_If_Found() { //arrange. var scenarioName = "name exists"; var sut = new FeatureFile(CreateGherkinDocumentWithScenarioOutline(scenarioName)); //act. var scenario = sut.GetScenarioOutline(scenarioName); //assert. Assert.NotNull(scenario); Assert.Same(sut.GherkinDocument.Feature.Children.First(), scenario); }
public Feature FeatureFrom(FeatureFile FeatureFile, FeatureItem FeatureItem) { if (FeatureFile == null) return new Feature(); Content = FeatureFile.Content; return new Feature { FileName = FeatureFile.Name, Namespace = FeatureItem.DefaultNamespace, Name = Name, Scenarios = ScenarioParser.ScenariosFrom(Content) }; }
public void When_the_Runner_for_a_Feature_is_generated() { var FeatureFile = new FeatureFile { Name = "RaconteurFeature1", Content = "Feature: Feature Name", }; var Project = new VsFeatureItem { DefaultNamespace = "Features", }; var Parser = ObjectFactory.NewFeatureParser; var RunnerGenerator = new RunnerGenerator(); var Feature = Parser.FeatureFrom(FeatureFile, Project); Runner = RunnerGenerator.RunnerFor(Feature); }
public void ExtractScnario_Extracts_Scenario_With_DataTable() { //arrange. var scenarioName = "scenario213"; var featureInstance = new FeatureWithDataTableScenarioStep(); var sut = FeatureClass.FromFeatureInstance(featureInstance); var featureFile = new FeatureFile(CreateGherkinDocument(scenarioName, "When " + FeatureWithDataTableScenarioStep.Steptext + Environment.NewLine + @" | First argument | Second argument | Result | | 1 | 2 | 3| | a | b | c | " )); //act. var scenario = sut.ExtractScenario(scenarioName, featureFile); //assert. Assert.NotNull(scenario); }
void When_a_step_contains_arguments() { var featureFile = new FeatureFile { Content = @" Feature: Feature Name Scenario: Scenario Name If ""X"" happens " }; var Parser = ObjectFactory.NewFeatureParser; RunnerGenerator = new RunnerGenerator(); var Feature = Parser.FeatureFrom(featureFile, new VsFeatureItem()); Runner = RunnerGenerator.RunnerFor(Feature); }
public void When_the_Scenario_for_a_feature_is_generated() { var featureFile = new FeatureFile { Content = @" Feature: Feature Name In order to do something Another thing should happen Scenario: Scenario Name " }; var Parser = ObjectFactory.NewFeatureParser; RunnerGenerator = new RunnerGenerator(); var Feature = Parser.FeatureFrom(featureFile, new VsFeatureItem()); Runner = RunnerGenerator.RunnerFor(Feature); }
public void ExtractScenario_Extracts_Scenario_With_DocString() { //arrange. var featureInstance = new FeatureWithDocStringScenarioStep(); var sut = FeatureClass.FromFeatureInstance(featureInstance); var scenarioName = "scenario-121kh2"; var docStringContent = @"some content +++ with multi lines --- in it"; var featureFile = new FeatureFile(CreateGherkinDocument(scenarioName, "Given " + FeatureWithDocStringScenarioStep.StepWithDocStringText + @" " + @""""""" " + docStringContent + @" """"""")); //act. var scenario = sut.ExtractScenario(scenarioName, featureFile); //assert. Assert.NotNull(scenario); }
public void When_a_Scenario_with_steps_is_generated() { var featureFile = new FeatureFile { Content = @" Feature: Feature Name Scenario: Scenario Name If something happens Then something else should happen If something happens And another thing too " }; var Parser = ObjectFactory.NewFeatureParser; RunnerGenerator = new RunnerGenerator(); var Feature = Parser.FeatureFrom(featureFile, new VsFeatureItem()); Runner = RunnerGenerator.RunnerFor(Feature); }
Feature Parse(string FeatureFilePath, string Content) { Project.LoadFrom(FeatureItem); var FeatureFile = new FeatureFile(FeatureFilePath){Content = Content}; return FeatureParser.FeatureFrom(FeatureFile, FeatureItem); }
public override int GetHashCode() { return(FeatureFile.GetHashCode()); }
public Feature FeatureFrom(FeatureFile FeatureFile, FeatureItem FeatureItem) { return(ParseFeature(FeatureFile.Name, FeatureFile.Content, FeatureItem)); }
Feature FeatureFrom(string FeatureFilePath, string Content) { var FeatureFile = new FeatureFile(FeatureFilePath){Content = Content}; return FeatureParser.FeatureFrom(FeatureFile, FeatureItem); }
public void FeatureFile_Implements_ITreeItem() { var featureFile = new FeatureFile("filename.ext", parentFolder, new Feature()); featureFile.ShouldImplement <ITreeItem>(); }
public Feature FeatureFrom(FeatureFile FeatureFile, FeatureItem FeatureItem) { Content = FeatureFile.Content.TrimLines(); Assembly = FeatureItem.Assembly; if (IsNotAValidFeature) return InvalidFeature; return new Feature { FileName = FeatureFile.Name, Namespace = FeatureItem.DefaultNamespace, Name = Name, Scenarios = ScenarioTokenizer.ScenariosFrom(Content), StepLibraries = StepLibraries }; }