package test.dataprovider;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
import java.util.Iterator;
public class FailingIterableDataProvider {
@DataProvider(name = "dp")
public Iterator<Object[]> createData() {
return new Iterator<Object[]>() {
int count = 0;
@Override
public boolean hasNext() {
return count < 10;
}
@Override
public Object[] next() {
if (++count == 6) {
throw new RuntimeException();
}
return new Object[]{count};
}
@Override
public void remove() {
throw new UnsupportedOperationException("remove");
}
};
}
@Test(dataProvider = "dp")
public void happyTest(int count) {
//pass
}
}