public void testMultipleStops() throws Exception
	{
		String s1 = getRandomString(3);
		
		String s2 = getRandomString(3);
		
		while( s2.equals(s1))
			s2 = getRandomString(3);
		
		String s3 = getRandomString(3);
		
		while( s3.equals(s1) || s3.equals(s2))
			s3 = getRandomString(3);
		
		String s4 = getRandomString(3);
		
		while( s4.equals(s1) || s4.equals(s2) || s4.equals(s3))
			s4 = getRandomString(3);
		
		String allString = s1 + "X" + s2 + "XX" + s3 + "X" + s4 + "X";
		
		HashHolder hh = new HashHolder(3);
		assertTrue(hh.setToString(allString));
		assertEquals(hh.getSequence(), s1);
		assertEquals(hh.getHashHolderIndex(), 2);
		assertEquals(hh.getNumInvalidChars(),0);
		assertEquals(hh.getStringIndex(), allString.indexOf(s1));

		assertTrue(hh.advance());
		assertEquals(hh.getSequence(), s2);
		assertEquals(hh.getHashHolderIndex(), 6);
		assertEquals(hh.getNumInvalidChars(),1);
		assertEquals(hh.getStringIndex(), allString.indexOf(s2));
		
		assertTrue(hh.advance());
		assertEquals(hh.getSequence(), s3);
		assertEquals(hh.getHashHolderIndex(), 11);
		assertEquals(hh.getNumInvalidChars(),3);
		assertEquals(hh.getStringIndex(), allString.indexOf(s3));
		
		assertTrue(hh.advance());
		assertEquals(hh.getSequence(), s4);
		assertEquals(hh.getHashHolderIndex(), 15);
		assertEquals(hh.getNumInvalidChars(),4);
		assertEquals(hh.getStringIndex(), allString.indexOf(s4));
		
		
		assertFalse(hh.advance());
		assertEquals(hh.getHashHolderIndex(), allString.length());
		assertEquals(hh.getStringIndex(), -1);
		assertEquals(hh.getSequence(), null);
		
	}