package com.uwsoft.editor.event; import com.badlogic.gdx.scenes.scene2d.utils.ChangeListener.ChangeEvent; import com.kotcrab.vis.ui.widget.VisSelectBox; import org.junit.Before; import org.junit.Test; import org.mockito.internal.util.reflection.Whitebox; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import static org.mockito.BDDMockito.given; import static org.mockito.Mockito.mock; public class SelectBoxChangeListenerTest { private SelectBoxChangeListener selectBoxChangeListener; @Before public void setUp() throws Exception { selectBoxChangeListener = new SelectBoxChangeListener("test"); } @Test public void shouldUpdateSelectedValueWhenSelectBoxChanged() throws Exception { ChangeEvent changeEvent = mock(ChangeEvent.class); VisSelectBox visSelectBox = mock(VisSelectBox.class); given(visSelectBox.getSelected()).willReturn("new-selected"); selectBoxChangeListener.changed(changeEvent, visSelectBox); Object lastSelected = Whitebox.getInternalState(selectBoxChangeListener, "lastSelected"); assertThat(lastSelected, is("new-selected")); } }