### Question:
MenuPopupStateAdapter implements GriffonPivotAdapter, org.apache.pivot.wtk.MenuPopupStateListener { public org.apache.pivot.util.Vote previewMenuPopupClose(org.apache.pivot.wtk.MenuPopup arg0, boolean arg1) { if (previewMenuPopupClose != null) { return previewMenuPopupClose.call(arg0, arg1); } return Vote.APPROVE; }  CallableWithArgs<Vote> getPreviewMenuPopupClose(); CallableWithArgs<Void> getMenuPopupClosed(); CallableWithArgs<Void> getMenuPopupCloseVetoed(); void setPreviewMenuPopupClose(CallableWithArgs<Vote> previewMenuPopupClose); void setMenuPopupClosed(CallableWithArgs<Void> menuPopupClosed); void setMenuPopupCloseVetoed(CallableWithArgs<Void> menuPopupCloseVetoed); org.apache.pivot.util.Vote previewMenuPopupClose(org.apache.pivot.wtk.MenuPopup arg0, boolean arg1); void menuPopupClosed(org.apache.pivot.wtk.MenuPopup arg0); void menuPopupCloseVetoed(org.apache.pivot.wtk.MenuPopup arg0, org.apache.pivot.util.Vote arg1);  }### Answer:
@Test public void testPreviewMenuPopupClose() { final boolean[] invoked = new boolean[1]; CallableWithArgs<org.apache.pivot.util.Vote> callable = new CallableWithArgs<org.apache.pivot.util.Vote>() { public org.apache.pivot.util.Vote call(Object... args) { invoked[0] = true; return null; } }; assertNull(adapter.getPreviewMenuPopupClose()); adapter.previewMenuPopupClose(null, false); assertFalse(invoked[0]); adapter.setPreviewMenuPopupClose(callable); adapter.previewMenuPopupClose(null, false); assertTrue(invoked[0]); }