Field { public static Field using(final EditText editText) { if(editText == null) { throw new IllegalArgumentException("EditText field may not be null"); } return new Field(editText); } protected  Field(final EditText editText); static Field using(final EditText editText); Field validate(final Validation what); EditText getEditText(); boolean isValid();  }
@Test(expected = IllegalArgumentException.class) public void testInvalidFieldCreationResultsInException() throws Exception { Field.using(null); }