Package com.technophobia.substeps.model

Examples of com.technophobia.substeps.model.FeatureFile


        // if invalid, discarded..

        // rest our current set of lines
        this.currentFileContents = null;

        final FeatureFile ff = new FeatureFile();
        ff.setSourceFile(featureFile);

        Assert.assertTrue("Feature file: " + featureFile.getAbsolutePath() + " does not exist!", featureFile.exists());

        readFeatureFile(featureFile);

        final String deCommented = stripCommentsAndBlankLines(this.currentFileContents.getLines());

        chunkUpFeatureFile(deCommented, ff);

        if (parseFeatureDescription(ff)) {
            // now we're in chunks, time to process each scenario..
            if (ff.getScenarios() != null) {

                for (final Scenario sc : ff.getScenarios()) {
                    buildScenario(sc, featureFile);

                }

                cascadeTags(ff);
View Full Code Here


    }


    @Test
    public void validatorReportsMissingStepsInScenario() {
        final FeatureFile featureFile = this.featureFileParser.loadFeatureFile(createFeatureFile("error.feature"));

        createStepValidatorWithSubsteps("simple.substeps").validateFeatureFile(featureFile, syntaxErrorReporter);
        final List<SyntaxErrorData> errors = syntaxErrorReporter.syntaxErrors();
        assertThat(Integer.valueOf(errors.size()), is(Integer.valueOf(2)));
View Full Code Here

        final FeatureFileParser parser = new FeatureFileParser();

        final String featureFile = "./target/test-classes/features/abigishfeature.feature";

        final FeatureFile feature = parser.loadFeatureFile(new File(featureFile));

        // not much of an assertion - feature file parsing covered elsewhere,
        // this was to pick up a performance problem when calculating line
        // numbers in large feature files
View Full Code Here

    }


    @Test
    public void validatorReportsNoErrorsForFeatureWithValidSteps() {
        final FeatureFile featureFile = this.featureFileParser.loadFeatureFile(createFeatureFile("error.feature"));

        createStepValidatorWithSubsteps("error.substeps").validateFeatureFile(featureFile, syntaxErrorReporter);
        final List<SyntaxErrorData> errors = syntaxErrorReporter.syntaxErrors();
        assertTrue(errors.isEmpty());
    }
View Full Code Here

        final FeatureFileParser parser = new FeatureFileParser();

        final String featureFile = "./target/test-classes/features/lineNumbers.feature";

        final FeatureFile feature = parser.loadFeatureFile(new File(featureFile));

        Assert.assertNotNull(feature);

        final List<Scenario> scenarios = feature.getScenarios();

        Assert.assertThat(scenarios.size(), is(4));

        final Scenario sc1 = scenarios.get(0);
View Full Code Here

    public void testLineNumbersAndParsingWhenCommentIsPresentBetweenSteps() {
        final FeatureFileParser parser = new FeatureFileParser();

        final String featureFile = "./target/test-classes/features/lineNumbers-with-comments.feature";

        final FeatureFile feature = parser.loadFeatureFile(new File(featureFile));

        Assert.assertNotNull(feature);

        final List<Scenario> scenarios = feature.getScenarios();

        Assert.assertThat(scenarios.size(), is(1));

        final Scenario sc1 = scenarios.get(0);
View Full Code Here

    @Test
    public void testFeatureFileParsing() {
        final FeatureFileParser parser = new FeatureFileParser();

        final FeatureFile ff = parser.loadFeatureFile(new File("./target/test-classes/features/example2.feature"));

        Assert.assertNotNull(ff);
        Assert.assertNotNull(ff.getName());

        Assert.assertNotNull(ff.getScenarios());

        Assert.assertThat(ff.getScenarios().size(), is(4));

        final Scenario sc1 = ff.getScenarios().get(1);
        Assert.assertTrue(sc1.hasBackground());
        Assert.assertThat(sc1.getBackground().getSteps().size(), is(1));
        Assert.assertThat(sc1.getSteps().size(), is(4));

        final Step withEmailAddress = ff.getScenarios().get(0).getSteps().get(0);
        Assert.assertThat(withEmailAddress.getLine(), is("Given something with an@emailaddress.com"));

        final Scenario sc2 = ff.getScenarios().get(2);
        Assert.assertTrue(sc2.isOutline());
        Assert.assertThat(sc2.getSteps().size(), is(6));

        Assert.assertThat(sc2.getExampleParameters().size(), is(8));

        final Scenario sc3 = ff.getScenarios().get(3);
        Assert.assertThat(sc3.getSteps().size(), is(5));

        final Step step = sc3.getSteps().get(2);
        Assert.assertThat(step.getInlineTable().size(), is(1));

        final Map<String, String> inlineTableRow0 = step.getInlineTable().get(0);

        Assert.assertThat(inlineTableRow0.size(), is(4));

        Assert.assertFalse(ff.getScenarios().get(0).getTags().isEmpty());

        // TODO - test out the tags

        final Set<String> tags = ff.getScenarios().get(0).getTags();
        Assert.assertNotNull(tags);
        Assert.assertTrue(tags.contains("@tag1"));
        Assert.assertTrue(tags.contains("@tag2"));

    }
View Full Code Here

    public void init(final boolean failOnNoFeatures) {
        final List<File> featureFiles = FileUtils.getFiles(new File(featureFile), ".feature");

        final FeatureFileParser fp2 = new FeatureFileParser();
        for (final File f : featureFiles) {
            final FeatureFile fFile = fp2.loadFeatureFile(f);
            if (featureFileList == null) {
                featureFileList = new ArrayList<FeatureFile>();
            }
            if (fFile != null) {
                featureFileList.add(fFile);
View Full Code Here

TOP

Related Classes of com.technophobia.substeps.model.FeatureFile

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.