@Override
 public void handleClick(MonthCellDescriptor cell) {
   if (!cell.isSelected()) {
     clearAllOldSelections();
     mSelectedCellList.add(cell);
     cell.setSelected(true);
     Calendar newlySelectedCal = Calendar.getInstance(Locale.getDefault());
     newlySelectedCal.setTime(cell.getDate());
     mSelectedCalendarList.add(newlySelectedCal);
     flushView();
   }
 }
 private static void assertCell(
     List<List<MonthCellDescriptor>> cells,
     int row,
     int col,
     int expectedVal,
     boolean expectedCurrentMonth,
     boolean expectedSelected,
     boolean expectedToday,
     boolean expectedSelectable,
     MonthCellDescriptor.RangeState expectedRangeState) {
   final MonthCellDescriptor cell = cells.get(row).get(col);
   assertThat(cell.getValue()).isEqualTo(expectedVal);
   assertThat(cell.isCurrentMonth()).isEqualTo(expectedCurrentMonth);
   assertThat(cell.isSelected()).isEqualTo(expectedSelected);
   assertThat(cell.isToday()).isEqualTo(expectedToday);
   assertThat(cell.isSelectable()).isEqualTo(expectedSelectable);
   assertThat(cell.getRangeState()).isEqualTo(expectedRangeState);
 }