title: Cover the methods in inheritance
body: <p>import java.util.AbstractList;</p>
  
  <p>public class ItemSet extends AbstractList {</p>
  
  <pre><code>private Item[] arr;
  private ItemClass itemClass;
  
  public ItemSet(Item item) {
  arr = new Item[1];
  arr[0] = item;
  }
  
  /*
   * (non-Javadoc)
   * 
   * @see java.util.AbstractList#add(java.lang.Object)
   */
  @Override
  public boolean add(Item e) {
  boolean isNotAdded = true;
  for (int i = 0; i &lt; arr.length; i++) {
      if (e.getRule().compareTo(arr[i].getRule())) {
      if (e.getDot() == arr[i].getDot()) {
          isNotAdded = false;
          break;
      }
      }
  }
  if (isNotAdded) {
      Item[] oldArr = arr;
      arr = new Item[oldArr.length + 1];
      System.arraycopy(oldArr, 0, arr, 0, oldArr.length);
      arr[oldArr.length] = e;
  }
  return isNotAdded;
  }
  
  @Override
  public Item get(int index) {
  return arr[index];
  }
  
  @Override
  public int size() {
  return arr.length;
  }
  
  // SETTER
  
  /**
   * @param itemClass
   *            the itemClass to set
   */
  public void setItemClass(ItemClass itemClass) {
  this.itemClass = itemClass;
  }
  
  //
  
  // GETTER
  
  /**
   * @return the itemClass
   */
  public ItemClass getItemClass() {
  return itemClass;
  }
  //
  </code></pre>
  
  <p>}</p>
  
  <p>How to cover for instance removes methods?
  How do not use an own list implementation?</p>