/** @throws Exception */
@Test
public void suggested3() throws Exception
{
History h = new History( 0, 10, 5 );
assertEquals( 0, h.suggested() );
assertTrue( h.used( 10 ) );
assertEquals( 10, h.getUsed() );
assertEquals( 0, h.suggested() ); // avg(0, 0, 0, 0, 0) == 0
h.tickle();
assertEquals( 2, h.suggested() ); // avg(10, 0, 0, 0, 0) == 2
h.tickle();
assertEquals( 4, h.suggested() ); // avg(10, 10, 0, 0, 0) == 4
h.tickle();
assertEquals( 6, h.suggested() ); // avg(10, 10, 10, 0, 0) == 6
h.tickle();
assertEquals( 8, h.suggested() ); // avg(10, 10, 10, 10, 0) == 8
h.tickle();
assertEquals( 10, h.suggested() ); // avg(10, 10, 10, 10, 10) == 10
h.tickle();
assertEquals( 10, h.suggested() ); // avg(10, 10, 10, 10, 10) == 10
assertTrue( h.used( -10 ) );
assertEquals( 0, h.getUsed() );
h.tickle();
assertEquals( 10, h.suggested() ); // avg(10, 10, 10, 10, 10) == 10
h.tickle();
assertEquals( 8, h.suggested() ); // avg(0, 10, 10, 10, 10) == 8
h.tickle();
assertEquals( 6, h.suggested() ); // avg(0, 0, 10, 10, 10) == 6
h.tickle();
assertEquals( 4, h.suggested() ); // avg(0, 0, 0, 10, 10) == 4
h.tickle();
assertEquals( 2, h.suggested() ); // avg(0, 0, 0, 0, 10) == 2
h.tickle();
assertEquals( 0, h.suggested() ); // avg(0, 0, 0, 0, 0) == 0
}