	@Test
	public void testTimerOverflowWheelLength() throws InterruptedException {

		final HashedWheelTimer timer = new HashedWheelTimer(Executors.defaultThreadFactory(), 100,
				TimeUnit.MILLISECONDS, 32);
		final AtomicInteger counter = new AtomicInteger();

		timer.newTimeout(new TimerTask() {
			@Override
			public void run(final TimeOut TimeOut) throws Exception {
				counter.incrementAndGet();
				timer.newTimeout(this, 1, TimeUnit.SECONDS);
			}
		}, 1, TimeUnit.SECONDS);
		Thread.sleep(3500);
		assertEquals(3, counter.get());
	}