### Question:
ButtonWithMutableSubjectVM extends SimpleButtonVM implements MutableSubjectButtonVM { @Override public void setSubject(final String subject) { this.subject = subject; notifySubjectChanged(); } ButtonWithMutableSubjectVM(int layoutId, int clickableResId, ButtonCommand actionCommand);  ButtonWithMutableSubjectVM(int layoutId, boolean enabled, int clickableResId,
			int[] enableDisableResIds, int subjectResourceId, ButtonCommand actionCommand); @Override String getSubject(); @Override void setSubject(final String subject); @Override int getResIdToInsertSubject();  }### Answer:
@Test public void shouldNotifyButtonVMListener() { MutableSubjectButtonVM buttonWithMutableSubjectVM = (MutableSubjectButtonVM) buttonVM; buttonWithMutableSubjectVM.registerListener(mockedButtonVMListener); buttonWithMutableSubjectVM.setSubject(ANY_SUBJECT); verify(mockedButtonVMListener).onSubjectChanged(ANY_SUBJECT, buttonWithMutableSubjectVM); }