package com.aventstack.extentreports.api; import java.lang.reflect.Method; import org.testng.Assert; import org.testng.annotations.Test; import com.aventstack.extentreports.Base; import com.aventstack.extentreports.ExtentTest; import com.aventstack.extentreports.GherkinKeyword; import com.aventstack.extentreports.gherkin.model.And; import com.aventstack.extentreports.gherkin.model.Given; import com.aventstack.extentreports.gherkin.model.Scenario; import com.aventstack.extentreports.gherkin.model.Then; import com.aventstack.extentreports.gherkin.model.When; public class BddLevelsTests extends Base { @Test public void verifyLevelsUsingGherkinKeyword(Method method) throws ClassNotFoundException { ExtentTest feature = extent.createTest(method.getName()); ExtentTest scenario = feature.createNode(new GherkinKeyword("Scenario"), "Child"); ExtentTest given = scenario.createNode(new GherkinKeyword("Given"), "Given").info("info"); ExtentTest and = scenario.createNode(new GherkinKeyword("And"), "And").info("info"); ExtentTest when = scenario.createNode(new GherkinKeyword("When"), "When").info("info"); ExtentTest then = scenario.createNode(new GherkinKeyword("Then"), "Then").pass("pass"); Assert.assertEquals(feature.getModel().getLevel(), 0); Assert.assertEquals(scenario.getModel().getLevel(), 1); Assert.assertEquals(given.getModel().getLevel(), 2); Assert.assertEquals(and.getModel().getLevel(), 2); Assert.assertEquals(when.getModel().getLevel(), 2); Assert.assertEquals(then.getModel().getLevel(), 2); } @Test public void verifyLevelsUsingClass(Method method) { ExtentTest feature = extent.createTest(method.getName()); ExtentTest scenario = feature.createNode(Scenario.class, "Child"); ExtentTest given = scenario.createNode(Given.class, "Given").info("info"); ExtentTest and = scenario.createNode(And.class, "And").info("info"); ExtentTest when = scenario.createNode(When.class, "When").info("info"); ExtentTest then = scenario.createNode(Then.class, "Then").pass("pass"); Assert.assertEquals(feature.getModel().getLevel(), 0); Assert.assertEquals(scenario.getModel().getLevel(), 1); Assert.assertEquals(given.getModel().getLevel(), 2); Assert.assertEquals(and.getModel().getLevel(), 2); Assert.assertEquals(when.getModel().getLevel(), 2); Assert.assertEquals(then.getModel().getLevel(), 2); } }