@Override public <E> EventHandler<E> newEventHandler(int id, Object[] params) { final Section section = mScope.get(); if (section == null) { throw new IllegalStateException("Called newEventHandler on a released Section"); } return new EventHandler<>(section, id, params); }
@Test public void hasEquivalentFieldsEventHandlerPropTest() { // The first item of the params is skipped as explained in the EventHandler class. mC1.propEventHandler = new EventHandler(null, 3, new Object[] {"", "1"}); mC2.propEventHandler = new EventHandler(null, 3, new Object[] {"", "1"}); assertThat(hasEquivalentFields(mC1, mC2)).isTrue(); mC2.propEventHandler = new EventHandler(null, 3, new Object[] {"", "2"}); assertThat(hasEquivalentFields(mC1, mC2)).isFalse(); }
@Test public void testIsEquivalentToWithOneNullParams() { EventHandler eventHandler1 = new EventHandler(mHasEventDispatcher, 1); EventHandler eventHandler2 = new EventHandler(mHasEventDispatcher, 1, new Object[0]); assertThat(eventHandler1.isEquivalentTo(eventHandler2)).isFalse(); assertThat(eventHandler2.isEquivalentTo(eventHandler1)).isFalse(); }
@Test public void testIsEquivalentToWithBothNullParams() { EventHandler eventHandler1 = new EventHandler(mHasEventDispatcher, 1); EventHandler eventHandler2 = new EventHandler(mHasEventDispatcher, 1); assertThat(eventHandler1.isEquivalentTo(eventHandler2)).isTrue(); assertThat(eventHandler2.isEquivalentTo(eventHandler1)).isTrue(); }
@Test public void testIsEquivalentToFirstParamCanBeDifferent() { EventHandler eventHandler1 = new EventHandler(mHasEventDispatcher, 1, new Object[] {1, 2, 3}); EventHandler eventHandler2 = new EventHandler(mHasEventDispatcher, 1, new Object[] {2, 2, 3}); assertThat(eventHandler1.isEquivalentTo(eventHandler2)).isTrue(); assertThat(eventHandler2.isEquivalentTo(eventHandler1)).isTrue(); } }
protected static <E> EventHandler<E> newEventHandler( Component c, int id, Object[] params) { final EventHandler<E> eventHandler = new EventHandler<>(c, id, params); if (c.getScopedContext() != null && c.getScopedContext().getComponentTree() != null) { c.getScopedContext().getComponentTree().recordEventHandler(c, eventHandler); } return eventHandler; }
@Test public void testClickHandlerFlag() { mNodeInfo.setClickHandler(new EventHandler(null, 1)); testFlagIsSetThenClear(mNodeInfo, "PFLAG_CLICK_HANDLER_IS_SET"); }
@Test public void testLongClickHandlerFlag() { mNodeInfo.setLongClickHandler(new EventHandler(null, 1)); testFlagIsSetThenClear(mNodeInfo, "PFLAG_LONG_CLICK_HANDLER_IS_SET"); }
@Test public void testOnInitializeAccessibilityNodeInfoHandlerFlag() { mNodeInfo.setOnInitializeAccessibilityNodeInfoHandler( new EventHandler<OnInitializeAccessibilityNodeInfoEvent>(null, 1)); testFlagIsSetThenClear(mNodeInfo, "PFLAG_ON_INITIALIZE_ACCESSIBILITY_NODE_INFO_HANDLER_IS_SET"); }
@Test public void testOnRequestSendAccessibilityEventHandlerFlag() { mNodeInfo.setOnRequestSendAccessibilityEventHandler( new EventHandler<OnRequestSendAccessibilityEventEvent>(null, 1)); testFlagIsSetThenClear(mNodeInfo, "PFLAG_ON_REQUEST_SEND_ACCESSIBILITY_EVENT_HANDLER_IS_SET"); }
@Test public void testPerformAccessibilityActionHandlerFlag() { mNodeInfo.setPerformAccessibilityActionHandler( new EventHandler<PerformAccessibilityActionEvent>(null, 1)); testFlagIsSetThenClear(mNodeInfo, "PFLAG_PERFORM_ACCESSIBILITY_ACTION_HANDLER_IS_SET"); }
@Test public void testDispatchPopulateAccessibilityEventHandlerFlag() { mNodeInfo.setDispatchPopulateAccessibilityEventHandler( new EventHandler<DispatchPopulateAccessibilityEventEvent>(null, 1)); testFlagIsSetThenClear(mNodeInfo, "PFLAG_DISPATCH_POPULATE_ACCESSIBILITY_EVENT_HANDLER_IS_SET"); }
@Before public void setup() { final ComponentContext context = new ComponentContext(RuntimeEnvironment.application); mInternalNode = createAndMeasureTreeForComponent( context, Column.create(context).build(), makeSizeSpec(0, UNSPECIFIED), makeSizeSpec(0, UNSPECIFIED)); mInternalNode.touchHandler(new EventHandler(null, 1)); }
@Test public void testFocusChangeHandler() { EventHandler<FocusChangedEvent> focusChangeHandler = new EventHandler<>(null, 1); mNodeInfo.setFocusChangeHandler(focusChangeHandler); assertThat(focusChangeHandler).isSameAs(mNodeInfo.getFocusChangeHandler()); mUpdatedNodeInfo.updateWith(mNodeInfo); assertThat(focusChangeHandler).isSameAs(mUpdatedNodeInfo.getFocusChangeHandler()); mNodeInfo.release(); assertThat(mNodeInfo.getFocusChangeHandler()).isNull(); }
@Test public void testOnInitializeAccessibilityEventHandler() { EventHandler<OnInitializeAccessibilityEventEvent> handler = new EventHandler<>(null, 1); mNodeInfo.setOnInitializeAccessibilityEventHandler(handler); assertThat(handler).isSameAs(mNodeInfo.getOnInitializeAccessibilityEventHandler()); mUpdatedNodeInfo.updateWith(mNodeInfo); assertThat(handler).isSameAs(mUpdatedNodeInfo.getOnInitializeAccessibilityEventHandler()); mNodeInfo.release(); assertThat(mNodeInfo.getOnInitializeAccessibilityEventHandler()).isNull(); }
@Test public void testOnRequestSendAccessibilityEventHandler() { EventHandler<OnRequestSendAccessibilityEventEvent> handler = new EventHandler<>(null, 1); mNodeInfo.setOnRequestSendAccessibilityEventHandler(handler); assertThat(handler).isSameAs(mNodeInfo.getOnRequestSendAccessibilityEventHandler()); mUpdatedNodeInfo.updateWith(mNodeInfo); assertThat(handler).isSameAs(mUpdatedNodeInfo.getOnRequestSendAccessibilityEventHandler()); mNodeInfo.release(); assertThat(mNodeInfo.getOnRequestSendAccessibilityEventHandler()).isNull(); }
@Test public void testSendAccessibilityEventHandler() { EventHandler<SendAccessibilityEventEvent> handler = new EventHandler<>(null, 1); mNodeInfo.setSendAccessibilityEventHandler(handler); assertThat(handler).isSameAs(mNodeInfo.getSendAccessibilityEventHandler()); mUpdatedNodeInfo.updateWith(mNodeInfo); assertThat(handler).isSameAs(mUpdatedNodeInfo.getSendAccessibilityEventHandler()); mNodeInfo.release(); assertThat(mNodeInfo.getSendAccessibilityEventHandler()).isNull(); }
@Test public void testSendAccessibilityEventUncheckedHandler() { EventHandler<SendAccessibilityEventUncheckedEvent> handler = new EventHandler<>(null, 1); mNodeInfo.setSendAccessibilityEventUncheckedHandler(handler); assertThat(handler).isSameAs(mNodeInfo.getSendAccessibilityEventUncheckedHandler()); mUpdatedNodeInfo.updateWith(mNodeInfo); assertThat(handler).isSameAs(mUpdatedNodeInfo.getSendAccessibilityEventUncheckedHandler()); mNodeInfo.release(); assertThat(mNodeInfo.getSendAccessibilityEventUncheckedHandler()).isNull(); }
@Test public void testClickHandler() { EventHandler<ClickEvent> clickHandler = new EventHandler<>(null, 1); mNodeInfo.setClickHandler(clickHandler); assertThat(clickHandler).isSameAs(mNodeInfo.getClickHandler()); mUpdatedNodeInfo.updateWith(mNodeInfo); assertThat(clickHandler).isSameAs(mUpdatedNodeInfo.getClickHandler()); mNodeInfo.release(); assertThat(mNodeInfo.getClickHandler()).isNull(); }
@Test public void testOnInitializeAccessibilityNodeInfoHandler() { EventHandler<OnInitializeAccessibilityNodeInfoEvent> handler = new EventHandler<>(null, 1); mNodeInfo.setOnInitializeAccessibilityNodeInfoHandler(handler); assertThat(handler).isSameAs(mNodeInfo.getOnInitializeAccessibilityNodeInfoHandler()); mUpdatedNodeInfo.updateWith(mNodeInfo); assertThat(handler).isSameAs(mUpdatedNodeInfo.getOnInitializeAccessibilityNodeInfoHandler()); mNodeInfo.release(); assertThat(mNodeInfo.getOnInitializeAccessibilityNodeInfoHandler()).isNull(); }