Package org.fest.swing.fixture
Class JSpinnerFixture
- All Implemented Interfaces:
ClientPropertyStorageFixture,CommonComponentFixture,FocusableComponentFixture,JComponentFixture,JPopupMenuInvokerFixture,KeyboardInputSimulationFixture,MouseInputSimulationFixture,StateVerificationFixture,ToolTipDisplayFixture
public class JSpinnerFixture
extends ComponentFixture<JSpinner>
implements CommonComponentFixture, JComponentFixture, JPopupMenuInvokerFixture
Understands functional testing of
JSpinners:
- user input simulation
- state verification
- property value query
-
Field Summary
FieldsFields inherited from class org.fest.swing.fixture.ComponentFixture
BACKGROUND_PROPERTY, FONT_PROPERTY, FOREGROUND_PROPERTY, robot, target -
Constructor Summary
ConstructorsConstructorDescriptionJSpinnerFixture(Robot robot, String spinnerName) Creates a new.JSpinnerFixtureJSpinnerFixture(Robot robot, JSpinner target) Creates a new.JSpinnerFixture -
Method Summary
Modifier and TypeMethodDescriptionclick()Simulates a user clicking this fixture's.JSpinnerclick(MouseButton button) Simulates a user clicking this fixture's.JSpinnerclick(MouseClickInfo mouseClickInfo) Simulates a user clicking this fixture's.JSpinnerclientProperty(Object key) Returns the client property stored in this fixture's, under the given key.JSpinnerprivate voidSimulates a user decrementing the value of this fixture'sone time.JSpinnerdecrement(int times) Simulates a user decrementing the value of this fixture'sthe given number of times.JSpinnerSimulates a user double-clicking this fixture's.JSpinnerprotected final voiddriver(JSpinnerDriver newDriver) Sets theto be used by this fixture.JSpinnerDriverSimulates a user entering the given text in this fixture's(assuming its editor has aJSpinnerunder it.) This method does not commit the value to theJTextComponentJSpinner.enterTextAndCommit(String text) Simulates a user entering and committing the given text in this fixture's(assuming its editor has aJSpinnerunder it.)JTextComponentfocus()Gives input focus to this fixture's.JSpinnerSimulates a user incrementing the value of this fixture'sone time.JSpinnerincrement(int times) Simulates a user incrementing the value of this fixture'sthe given number of times.JSpinnerpressAndReleaseKey(KeyPressInfo keyPressInfo) Simulates a user pressing given key with the given modifiers on this fixture's.JSpinnerpressAndReleaseKeys(int... keyCodes) Simulates a user pressing and releasing the given keys on this fixture's.JSpinnerpressKey(int keyCode) Simulates a user pressing the given key on this fixture's.JSpinnerreleaseKey(int keyCode) Simulates a user releasing the given key on this fixture's.JSpinnerAsserts that this fixture'sis disabled.JSpinnerAsserts that this fixture'sis enabled.JSpinnerrequireEnabled(Timeout timeout) Asserts that this fixture'sis enabled.JSpinnerAsserts that this fixture'shas input focus.JSpinnerAsserts that this fixture'sis not visible.JSpinnerrequireToolTip(String expected) Asserts that the toolTip in this fixture'smatches the given value.JSpinnerrequireToolTip(Pattern pattern) Asserts that the toolTip in this fixture'smatches the given regular expression pattern.JSpinnerrequireValue(Object value) Verifies that the value of this fixture'sis equal to the given one.JSpinnerAsserts that this fixture'sis visible.JSpinnerSimulates a user right-clicking this fixture's.JSpinnerSelects the given value in this fixture's.JSpinnerShows a pop-up menu using this fixture'sas the invoker of the pop-up menu.JSpinnerShows a pop-up menu at the given point using this fixture'sas the invoker of the pop-up menu.JSpinnertext()Returns the text displayed by this fixture's.JSpinnerMethods inherited from class org.fest.swing.fixture.ComponentFixture
background, component, font, foreground, requireShowing, targetCastedTo, validateNotNull
-
Field Details
-
driver
-
-
Constructor Details
-
JSpinnerFixture
Creates a new.JSpinnerFixture- Parameters:
robot- performs simulation of user events on aJSpinner.spinnerName- the name of theJSpinnerto find using the givenRobot.- Throws:
NullPointerException- ifrobotisnull.ComponentLookupException- if a matchingJSpinnercould not be found.ComponentLookupException- if more than one matchingJSpinneris found.
-
JSpinnerFixture
Creates a new.JSpinnerFixture- Parameters:
robot- performs simulation of user events on the givenJSpinner.target- theJSpinnerto be managed by this fixture.- Throws:
NullPointerException- ifrobotisnull.NullPointerException- iftargetisnull.
-
-
Method Details
-
createDriver
private void createDriver() -
driver
Sets theto be used by this fixture.JSpinnerDriver- Parameters:
newDriver- the newJSpinnerDriver.- Throws:
NullPointerException- if the given driver isnull.
-
increment
Simulates a user incrementing the value of this fixture'sthe given number of times.JSpinner- Parameters:
times- how many times the value of this fixture'sJSpinnershould be incremented.- Returns:
- this fixture.
- Throws:
IllegalArgumentException- iftimesis less than or equal to zero.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
increment
Simulates a user incrementing the value of this fixture'sone time.JSpinner- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
decrement
Simulates a user decrementing the value of this fixture'sthe given number of times.JSpinner- Parameters:
times- how many times the value of this fixture'sJSpinnershould be decremented.- Returns:
- this fixture.
- Throws:
IllegalArgumentException- iftimesis less than or equal to zero.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
decrement
Simulates a user decrementing the value of this fixture'sone time.JSpinner- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
enterText
Simulates a user entering the given text in this fixture's(assuming its editor has aJSpinnerunder it.) This method does not commit the value to theJTextComponentJSpinner.- Parameters:
text- the text to enter.- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.ActionFailedException- if the editor of theJSpinneris not aJTextComponentor cannot be found.UnexpectedException- if the entering the text in theJSpinner's editor fails.
-
enterTextAndCommit
Simulates a user entering and committing the given text in this fixture's(assuming its editor has aJSpinnerunder it.)JTextComponent- Parameters:
text- the text to enter.- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.ActionFailedException- if the editor of theJSpinneris not aJTextComponentor cannot be found.UnexpectedException- if the entering the text in theJSpinner's editor fails.
-
select
Selects the given value in this fixture's.JSpinner- Parameters:
value- the value to select.- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.IllegalArgumentException- if theJSpinnerdoes not support the specifiedvalue.
-
click
Simulates a user clicking this fixture's.JSpinner- Specified by:
clickin interfaceMouseInputSimulationFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
click
Simulates a user clicking this fixture's.JSpinner- Specified by:
clickin interfaceMouseInputSimulationFixture- Parameters:
button- the button to click.- Returns:
- this fixture.
- Throws:
NullPointerException- if the givenMouseButtonisnull.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
click
Simulates a user clicking this fixture's.JSpinner- Specified by:
clickin interfaceMouseInputSimulationFixture- Parameters:
mouseClickInfo- specifies the button to click and the times the button should be clicked.- Returns:
- this fixture.
- Throws:
NullPointerException- if the givenMouseClickInfoisnull.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
rightClick
Simulates a user right-clicking this fixture's.JSpinner- Specified by:
rightClickin interfaceMouseInputSimulationFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
doubleClick
Simulates a user double-clicking this fixture's.JSpinner- Specified by:
doubleClickin interfaceMouseInputSimulationFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
focus
Gives input focus to this fixture's.JSpinner- Specified by:
focusin interfaceFocusableComponentFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.
-
pressAndReleaseKey
Simulates a user pressing given key with the given modifiers on this fixture's. Modifiers is a mask from the availableJSpinnermasks.InputEvent- Specified by:
pressAndReleaseKeyin interfaceKeyboardInputSimulationFixture- Parameters:
keyPressInfo- specifies the key and modifiers to press.- Returns:
- this fixture.
- Throws:
NullPointerException- if the givenKeyPressInfoisnull.IllegalArgumentException- if the given code is not a valid key code.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.- See Also:
-
pressAndReleaseKeys
Simulates a user pressing and releasing the given keys on this fixture's. This method does not affect the current focus.JSpinner- Specified by:
pressAndReleaseKeysin interfaceKeyboardInputSimulationFixture- Parameters:
keyCodes- one or more codes of the keys to press.- Returns:
- this fixture.
- Throws:
NullPointerException- if the given array of codes isnull.IllegalArgumentException- if any of the given code is not a valid key code.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.- See Also:
-
pressKey
Simulates a user pressing the given key on this fixture's.JSpinner- Specified by:
pressKeyin interfaceKeyboardInputSimulationFixture- Parameters:
keyCode- the code of the key to press.- Returns:
- this fixture.
- Throws:
IllegalArgumentException- if any of the given code is not a valid key code.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.- See Also:
-
releaseKey
Simulates a user releasing the given key on this fixture's.JSpinner- Specified by:
releaseKeyin interfaceKeyboardInputSimulationFixture- Parameters:
keyCode- the code of the key to release.- Returns:
- this fixture.
- Throws:
IllegalArgumentException- if any of the given code is not a valid key code.IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.- See Also:
-
requireFocused
Asserts that this fixture'shas input focus.JSpinner- Specified by:
requireFocusedin interfaceFocusableComponentFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJSpinnerdoes not have input focus.
-
requireEnabled
Asserts that this fixture'sis enabled.JSpinner- Specified by:
requireEnabledin interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJSpinneris disabled.
-
requireEnabled
Asserts that this fixture'sis enabled.JSpinner- Specified by:
requireEnabledin interfaceStateVerificationFixture- Parameters:
timeout- the time this fixture will wait for the component to be enabled.- Returns:
- this fixture.
- Throws:
WaitTimedOutError- if this fixture'sJSpinneris never enabled.
-
requireDisabled
Asserts that this fixture'sis disabled.JSpinner- Specified by:
requireDisabledin interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJSpinneris enabled.
-
requireVisible
Asserts that this fixture'sis visible.JSpinner- Specified by:
requireVisiblein interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJSpinneris not visible.
-
requireNotVisible
Asserts that this fixture'sis not visible.JSpinner- Specified by:
requireNotVisiblein interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJSpinneris visible.
-
requireValue
Verifies that the value of this fixture'sis equal to the given one.JSpinner- Parameters:
value- the expected value of this fixture'sJSpinner.- Returns:
- this fixture.
- Throws:
AssertionError- if the value of this fixture'sJSpinneris not equal to the given one.
-
text
Returns the text displayed by this fixture's. This method first tries to get the text displayed in theJSpinnerJSpinner's editor, assuming it is a. If the text from the editor cannot be retrieved, it will return theJTextComponentStringrepresentation of the value in theJSpinner's model.- Returns:
- the text displayed by this fixture's
JSpinner. - Since:
- 1.2
-
requireToolTip
Asserts that the toolTip in this fixture'smatches the given value.JSpinner- Specified by:
requireToolTipin interfaceToolTipDisplayFixture- Parameters:
expected- the given value. It can be a regular expression.- Returns:
- this fixture.
- Throws:
AssertionError- if the toolTip in this fixture'sJSpinnerdoes not match the given value.- Since:
- 1.2
-
requireToolTip
Asserts that the toolTip in this fixture'smatches the given regular expression pattern.JSpinner- Specified by:
requireToolTipin interfaceToolTipDisplayFixture- Parameters:
pattern- the regular expression pattern to match.- Returns:
- this fixture.
- Throws:
NullPointerException- if the given regular expression pattern isnull.AssertionError- if the toolTip in this fixture'sJSpinnerdoes not match the given regular expression.- Since:
- 1.2
-
clientProperty
Returns the client property stored in this fixture's, under the given key.JSpinner- Specified by:
clientPropertyin interfaceClientPropertyStorageFixture- Parameters:
key- the key to use to retrieve the client property.- Returns:
- the value of the client property stored under the given key, or
nullif the property was not found. - Throws:
NullPointerException- if the given key isnull.- Since:
- 1.2
-
showPopupMenu
Shows a pop-up menu using this fixture'sas the invoker of the pop-up menu.JSpinner- Specified by:
showPopupMenuin interfaceJPopupMenuInvokerFixture- Returns:
- a fixture that manages the displayed pop-up menu.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.ComponentLookupException- if a pop-up menu cannot be found.
-
showPopupMenuAt
Shows a pop-up menu at the given point using this fixture'sas the invoker of the pop-up menu.JSpinner- Specified by:
showPopupMenuAtin interfaceJPopupMenuInvokerFixture- Parameters:
p- the given point where to show the pop-up menu.- Returns:
- a fixture that manages the displayed pop-up menu.
- Throws:
IllegalStateException- if this fixture'sJSpinneris disabled.IllegalStateException- if this fixture'sJSpinneris not showing on the screen.ComponentLookupException- if a pop-up menu cannot be found.
-