### Question:
FormFieldWidget extends Composite implements HasChangeHandlers, ChangeHandler, HasClickHandlers, ClickHandler, HasValueChangeHandlers,
ValueChangeHandler, HasSelectionHandlers<Suggestion>, SelectionHandler<Suggestion> { @Override @SuppressWarnings("unchecked") public HandlerRegistration addValueChangeHandler(final ValueChangeHandler valueChangeHandler) { if (valueChangeHandlers == null) { valueChangeHandlers = new HashMap<String, ValueChangeHandler<Serializable>>(); } if (valueChangeHandler != null) { valueChangeHandlers.put(String.valueOf(valueChangeHandler.hashCode()), valueChangeHandler); return new EventHandlerRegistration(valueChangeHandler); } else { throw new NullPointerException("the given ValueChangeHandler is not defined"); } } FormFieldWidget(final ReducedFormWidget widgetData, final Map<String, Object> contextMap, final String mandatoryFieldSymbol,
            final String mandatoryFieldClasses);  FormFieldWidget(final ReducedFormWidget widgetData, final FormFieldValue fieldValue, final Map<String, Object> contextMap,
            final String mandatoryFieldSymbol, final String mandatoryFieldClasses); @SuppressWarnings("unchecked") FormFieldValue getValue(); WidgetType getType(); void setValue(final FormFieldValue fieldValue); void setAvailableValues(final List<ReducedFormFieldAvailableValue> availableValues); void setTableAvailableValues(final List<List<ReducedFormFieldAvailableValue>> newTableWidgetAvailableValues); void setMandatoryLabel(final String mandatoryLabel); void setFocusOn(); String getId(); Widget getFieldWidget(); @Override HandlerRegistration addChangeHandler(final ChangeHandler changeHandler); @Override HandlerRegistration addClickHandler(final ClickHandler clickHandler); @Override @SuppressWarnings("unchecked") HandlerRegistration addValueChangeHandler(final ValueChangeHandler valueChangeHandler); @Override HandlerRegistration addSelectionHandler(final SelectionHandler<Suggestion> selectionHandler); @Override void onChange(final ChangeEvent changeEvent); @Override void onClick(final ClickEvent clickEvent); @Override @SuppressWarnings("unchecked") void onValueChange(final ValueChangeEvent valueChangeEvent); @Override void onSelection(final SelectionEvent<Suggestion> selectionEvent);  }### Answer:
@Test public void testAddValueChangeHandler_with_Null_should_Not_Break() throws Exception { try { formFieldWidget.addValueChangeHandler(null); fail("NPe should have been raised"); } catch (final NullPointerException e) { assertThat(e).hasMessage("the given ValueChangeHandler is not defined"); } }