package org.fluentlenium.adapter.cucumber; import org.fluentlenium.adapter.SharedMutator; import org.fluentlenium.configuration.ConfigurationException; import org.fluentlenium.configuration.ConfigurationProperties.DriverLifecycle; /** * Cucumber implementation of {@link SharedMutator}, replacing testClass with a null reference as it doesn't make sense * and raising a {@link org.fluentlenium.configuration.ConfigurationException} when {@link DriverLifecycle#CLASS} is given. * to link {@link org.openqa.selenium.WebDriver} instances with classes defining Step. */ public class FluentCucumberSharedMutator implements SharedMutator { @Override public <T> EffectiveParameters<T> getEffectiveParameters(Class<T> testClass, String testName, DriverLifecycle driverLifecycle) { if (driverLifecycle == DriverLifecycle.CLASS) { throw new ConfigurationException("Cucumber doesn't support CLASS driverLifecycle."); } return new EffectiveParameters<>(null, testName, driverLifecycle); } }