entity.add(new ComponentA());
entity.add(new ComponentB());
assertEquals(2, entity.getComponents().size());
Bits componentBits = entity.getComponentBits();
int componentAIndex = ComponentType.getIndexFor(ComponentA.class);
int componentBIndex = ComponentType.getIndexFor(ComponentB.class);
for (int i = 0; i < componentBits.length(); ++i) {
assertEquals(i == componentAIndex || i == componentBIndex, componentBits.get(i));
}
assertNotNull(am.get(entity));
assertNotNull(bm.get(entity));
assertTrue(am.has(entity));
assertTrue(bm.has(entity));
entity.removeAll();
assertEquals(0, entity.getComponents().size());
for (int i = 0; i < componentBits.length(); ++i) {
assertFalse(componentBits.get(i));
}
assertNull(am.get(entity));
assertNull(bm.get(entity));
assertFalse(am.has(entity));