@Test
public void testLineNumbersAndParsing() {

    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);
    Assert.assertThat(sc1.getSourceStartOffset(), is(not(-1)));
    // Assert.assertThat(sc1.getSourceEndOffset(), is(not(-1)));
    Assert.assertThat(sc1.getSourceStartLineNumber(), is(13));
    final List<Step> steps = sc1.getSteps();
    Assert.assertThat(steps.size(), is(7));
    final Step s1 = steps.get(0);
    Assert.assertThat(s1.getSourceLineNumber(), is(14));
    final Step s2 = steps.get(1);
    Assert.assertThat(s2.getSourceLineNumber(), is(15));
    final Step s3 = steps.get(2);
    Assert.assertThat(s3.getSourceLineNumber(), is(16));
    final Step s4 = steps.get(3);
    Assert.assertThat(s4.getSourceLineNumber(), is(17));
    final Step s5 = steps.get(4);
    Assert.assertThat(s5.getSourceLineNumber(), is(18));
    final Step s6 = steps.get(5);
    Assert.assertThat(s6.getSourceLineNumber(), is(19));
    final Step s7 = steps.get(6);
    Assert.assertThat(s7.getSourceLineNumber(), is(20));
    final Scenario sc2 = scenarios.get(1);
    Assert.assertThat(sc2.getSourceStartLineNumber(), is(23));
    Assert.assertThat(sc2.getSteps().get(0).getSourceLineNumber(), is(24));
    final Scenario sc3 = scenarios.get(2);
    Assert.assertThat(sc3.getSourceStartLineNumber(), is(30));
    final Scenario sc4 = scenarios.get(3);
    Assert.assertThat(sc4.getSteps().get(3).getSourceLineNumber(), is(56));
}