@Override
  public EpoxyModel<?> set(int index, EpoxyModel<?> element) {
    EpoxyModel<?> previousModel = super.set(index, element);

    if (previousModel.id() != element.id()) {
      notifyRemoval(index, 1);
      notifyInsertion(index, 1);
    }

    return previousModel;
  }
@Test
  public void testSetSameIdDoesntNotify() {
    EpoxyModel<?> newModelWithSameId = new TestModel();
    newModelWithSameId.id(modelList.get(0).id());

    modelList.set(0, newModelWithSameId);
    verifyNoMoreInteractions(observer);
    assertEquals(newModelWithSameId, modelList.get(0));
  }