### Question:
ButtonMenu extends LinearLayout implements ButtonVMListener, ButtonMenuVMListener { public void setOnButtonCommandExecutedListener(OnButtonCommandExecuted onButtonCommandExecutedListener) { this.onButtonCommandExecutedListener = onButtonCommandExecutedListener; } ButtonMenu(Context context);  ButtonMenu(Context context, AttributeSet attrs); @TargetApi(VERSION_CODES.HONEYCOMB)  ButtonMenu(Context context, AttributeSet attrs, int defStyle); void initialize(); void release(); void setButtonMenuVM(ButtonMenuVM buttonMenuVM); ButtonMenuVM getButtonMenuVM(); void setOnButtonCommandExecutedListener(OnButtonCommandExecuted onButtonCommandExecutedListener); @Override void onEnablePropertyChanged(boolean enabled, ButtonVM buttonVM); @Override void onCounterValueChanged(int counterValue, CounterButtonVM buttonVM); @Override void onImageResourceChanged(int imageResourceId, MutableResourceButtonVM buttonVM); @Override void onSubjectChanged(String subject, MutableSubjectButtonVM buttonVM); @Override void onButtonVMAdded(final ButtonVM buttonVM); @Override void onButtonVMRemoved(final ButtonVM buttonVM); @Override void onProgressValueChanged(boolean loading, ButtonWithProgressVM buttonVM);  }### Answer:
@Test public void shouldNotifyOnButtonCommandExecuted() { initializeButtonMenu(); OnButtonCommandExecuted mockedOnButtonCommandExecuted = mock(OnButtonCommandExecuted.class); buttonMenu.setOnButtonCommandExecutedListener(mockedOnButtonCommandExecuted); buttonMenu.findViewById(android.R.id.text1).performClick(); verify(mockedOnButtonCommandExecuted).onActionCommandExecuted(); }