package br.com.etyllica.storage; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import br.com.etyllica.core.event.PointerEvent; import br.com.etyllica.storage.RingBuffer; public class RingBufferTest { private RingBuffer<PointerEvent> events; @Before public void setUp() { events = new RingBuffer<PointerEvent>(PointerEvent.class); } @Test public void testGetSlot() { PointerEvent event = events.getSlot(); event.setX(50); event.setY(80); Assert.assertEquals(1, events.size()); } @Test public void testSlotPosition() { PointerEvent event = events.getSlot(); event.setX(50); PointerEvent secondEvent = events.getSlot(); secondEvent.setX(55); Assert.assertEquals(2, events.size()); Assert.assertEquals(50, events.getList().get(0).getX()); Assert.assertEquals(55, events.getList().get(1).getX()); } @Test public void testGetSlotAfterPack() { events.getSlot(); Assert.assertEquals(1, events.size()); events.pack(); Assert.assertEquals(1, events.size()); events.getSlot(); events.getSlot(); events.getSlot(); events.getSlot(); Assert.assertEquals(4, events.size()); events.pack(); Assert.assertEquals(4, events.size()); events.getSlot(); events.getSlot(); events.pack(); Assert.assertEquals(2, events.size()); } }