public void HasNextTest()
{
int lengthCut = 3;
int step = 1;
int countSteps = 0;
var iterator = new StartIterator(chain, lengthCut, step);
while (iterator.HasNext())
{
iterator.Next();
countSteps = countSteps + 1;
}
Assert.True(countSteps == iterator.MaxShifts);
countSteps = 0;
iterator = new StartIterator(chain, lengthCut, step + 1);
while (iterator.HasNext())
{
iterator.Next();
countSteps = countSteps + 1;
}
Assert.True(countSteps == iterator.MaxShifts);
}