package org.apache.commons.collections4.iterators;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import org.junit.Test;
/**
* Tests the PushbackIterator.
*
* @version $Id$
*/
public class PushbackIteratorTest<E> extends AbstractIteratorTest<E> {
private String[] testArray = new String[]{ "a" , "b" , "c" };
private List<E> testList;
public PushbackIteratorTest(final String testName) {
super(testName);
}
/**
* {@inheritDoc}
*/
@SuppressWarnings(value = "unchecked")
@Override
protected void setUp() throws Exception {
super.setUp();
testList = new ArrayList<E>(java.util.Arrays.asList(((E[])(testArray))));
}
@Override
public Iterator<E> makeEmptyIterator() {
return PushbackIterator.pushbackIterator(java.util.Collections.<E>emptyList().iterator());
}
@Override
public PushbackIterator<E> makeObject() {
return PushbackIterator.pushbackIterator(testList.iterator());
}
@Override
public boolean supportsRemove() {
return false;
}
@Test
public void testNormalIteration() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testNormalIteration");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4185,iter,4184,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4187,iter,4186,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4189,iter,4188,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4191,iter,4190,iter.hasNext());
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback_add1184() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback_add1184");
PushbackIterator<E> iter = makeObject();
iter.pushback(((E)("x")));
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
validate(iter, "b", "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback_add1185() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback_add1185");
PushbackIterator<E> iter = makeObject();
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
validate(iter, "b", "c");
validate(iter, "b", "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback");
PushbackIterator<E> iter = makeObject();
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
validate(iter, "b", "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback_literalMutation1143() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback_literalMutation1143");
PushbackIterator<E> iter = makeObject();
iter.pushback(((E)("foo")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
validate(iter, "b", "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback_literalMutation1144() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback_literalMutation1144");
PushbackIterator<E> iter = makeObject();
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
validate(iter, "foo", "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback_literalMutation1145() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback_literalMutation1145");
PushbackIterator<E> iter = makeObject();
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
validate(iter, "b", "foo");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback_remove875() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback_remove875");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
validate(iter, "b", "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testImmediatePushback_remove876() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testImmediatePushback_remove876");
PushbackIterator<E> iter = makeObject();
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4173,iter,4172,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4175,iter,4174,iter.next());
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testDelayedPushback_add1182() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testDelayedPushback_add1182");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4167,iter,4166,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4169,iter,4168,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4171,iter,4170,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testDelayedPushback_add1183() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testDelayedPushback_add1183");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4167,iter,4166,iter.next());
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4169,iter,4168,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4171,iter,4170,iter.next());
validate(iter, "c");
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testDelayedPushback() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testDelayedPushback");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4167,iter,4166,iter.next());
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4169,iter,4168,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4171,iter,4170,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testDelayedPushback_literalMutation1140() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testDelayedPushback_literalMutation1140");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4167,iter,4166,iter.next());
iter.pushback(((E)("foo")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4169,iter,4168,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4171,iter,4170,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testDelayedPushback_literalMutation1141() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testDelayedPushback_literalMutation1141");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4167,iter,4166,iter.next());
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4169,iter,4168,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4171,iter,4170,iter.next());
validate(iter, "foo");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testDelayedPushback_remove873() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testDelayedPushback_remove873");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4167,iter,4166,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4169,iter,4168,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4171,iter,4170,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testDelayedPushback_remove874() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testDelayedPushback_remove874");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4167,iter,4166,iter.next());
iter.pushback(((E)("x")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4169,iter,4168,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4171,iter,4170,iter.next());
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_add1186() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_add1186");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("x")));
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_add1187() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_add1187");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("y")));
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_add1188() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_add1188");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_literalMutation1147() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_literalMutation1147");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("foo")));
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_literalMutation1148() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_literalMutation1148");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("foo")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_literalMutation1149() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_literalMutation1149");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "foo");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_remove877() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_remove877");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_remove878() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_remove878");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
validate(iter, "c");
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
@Test(timeout = 1000)
@SuppressWarnings(value = "unchecked")
public void testMultiplePushback_remove879() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testMultiplePushback_remove879");
PushbackIterator<E> iter = makeObject();
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4177,iter,4176,iter.next());
iter.pushback(((E)("x")));
iter.pushback(((E)("y")));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4179,iter,4178,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4181,iter,4180,iter.next());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4183,iter,4182,iter.next());
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
private void validate(Iterator<E> iter, Object... items) {
for (final Object x : items) {
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4193,iter,4192,iter.hasNext());
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4194,x);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4196,iter,4195,iter.next());
}
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),4198,iter,4197,iter.hasNext());
}
}