Package org.fest.swing.fixture
Class JButtonFixture
- All Implemented Interfaces:
ClientPropertyStorageFixture,CommonComponentFixture,FocusableComponentFixture,JComponentFixture,JPopupMenuInvokerFixture,KeyboardInputSimulationFixture,MouseInputSimulationFixture,StateVerificationFixture,TextDisplayFixture,ToolTipDisplayFixture
public class JButtonFixture
extends ComponentFixture<JButton>
implements CommonComponentFixture, JComponentFixture, JPopupMenuInvokerFixture, TextDisplayFixture
Understands functional testing of
JButtons:
- 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
ConstructorsConstructorDescriptionJButtonFixture(Robot robot, String buttonName) Creates a new.JButtonFixtureJButtonFixture(Robot robot, JButton target) Creates a new.JButtonFixture -
Method Summary
Modifier and TypeMethodDescriptionclick()Simulates a user clicking this fixture's.JButtonclick(MouseButton button) Simulates a user clicking this fixture's.JButtonclick(MouseClickInfo mouseClickInfo) Simulates a user clicking this fixture's.JButtonclientProperty(Object key) Returns the client property stored in this fixture's, under the given key.JButtonprivate voidSimulates a user double-clicking this fixture's.JButtonprotected final voiddriver(AbstractButtonDriver newDriver) Sets theto be used by this fixture.AbstractButtonDriverfocus()Gives input focus to this fixture's.JButtonpressAndReleaseKey(KeyPressInfo keyPressInfo) Simulates a user pressing given key with the given modifiers on this fixture's.JButtonpressAndReleaseKeys(int... keyCodes) Simulates a user pressing and releasing the given keys on this fixture's.JButtonpressKey(int keyCode) Simulates a user pressing the given key on this fixture's.JButtonreleaseKey(int keyCode) Simulates a user releasing the given key on this fixture's.JButtonAsserts that this fixture'sis disabled.JButtonAsserts that this fixture'sis enabled.JButtonrequireEnabled(Timeout timeout) Asserts that this fixture'sis enabled.JButtonAsserts that this fixture'shas input focus.JButtonAsserts that this fixture'sis not visible.JButtonrequireText(String expected) Asserts that the text of this fixture'smatches the specified value.JButtonrequireText(Pattern pattern) Asserts that the text of this fixture'smatches the given regular expression pattern.JButtonrequireToolTip(String expected) Asserts that the toolTip in this fixture'smatches the given value.JButtonrequireToolTip(Pattern pattern) Asserts that the toolTip in this fixture'smatches the given regular expression pattern.JButtonAsserts that this fixture'sis visible.JButtonSimulates a user right-clicking this fixture's.JButtonShows a pop-up menu using this fixture'sas the invoker of the pop-up menu.JButtonShows a pop-up menu at the given point using this fixture'sas the invoker of the pop-up menu.JButtontext()Returns the text of this fixture's.JButtonMethods inherited from class org.fest.swing.fixture.ComponentFixture
background, component, font, foreground, requireShowing, targetCastedTo, validateNotNull
-
Field Details
-
driver
-
-
Constructor Details
-
JButtonFixture
Creates a new.JButtonFixture- Parameters:
target- theJButtonto be managed by this fixture.robot- performs simulation of user events on the givenJButton.- Throws:
NullPointerException- ifrobotisnull.NullPointerException- iftargetisnull.
-
JButtonFixture
Creates a new.JButtonFixture- Parameters:
robot- performs simulation of user events on aJButton.buttonName- the name of theJButtonto find using the givenRobotFixture.- Throws:
NullPointerException- ifrobotisnull.ComponentLookupException- if a matchingJButtoncould not be found.ComponentLookupException- if more than one matchingJButtonis found.
-
-
Method Details
-
createDriver
private void createDriver() -
driver
Sets theto be used by this fixture.AbstractButtonDriver- Parameters:
newDriver- the newAbstractButtonDriver.- Throws:
NullPointerException- if the given driver isnull.
-
text
Returns the text of this fixture's.JButton- Specified by:
textin interfaceTextDisplayFixture- Returns:
- the text of this fixture's
JButton.
-
click
Simulates a user clicking this fixture's.JButton- Specified by:
clickin interfaceMouseInputSimulationFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.
-
click
Simulates a user clicking this fixture's.JButton- Specified by:
clickin interfaceMouseInputSimulationFixture- Parameters:
button- the button to click.- Returns:
- this fixture.
- Throws:
NullPointerException- if the givenMouseButtonisnull.IllegalStateException- if this fixture'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.
-
click
Simulates a user clicking this fixture's.JButton- 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'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.
-
doubleClick
Simulates a user double-clicking this fixture's.JButton- Specified by:
doubleClickin interfaceMouseInputSimulationFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.
-
rightClick
Simulates a user right-clicking this fixture's.JButton- Specified by:
rightClickin interfaceMouseInputSimulationFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.
-
focus
Gives input focus to this fixture's.JButton- Specified by:
focusin interfaceFocusableComponentFixture- Returns:
- this fixture.
- Throws:
IllegalStateException- if this fixture'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis 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 availableJButtonmasks.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'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.- See Also:
-
pressAndReleaseKeys
Simulates a user pressing and releasing the given keys on this fixture's.JButton- 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'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.- See Also:
-
pressKey
Simulates a user pressing the given key on this fixture's.JButton- 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'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.- See Also:
-
releaseKey
Simulates a user releasing the given key on this fixture's.JButton- 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'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.- See Also:
-
requireFocused
Asserts that this fixture'shas input focus.JButton- Specified by:
requireFocusedin interfaceFocusableComponentFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJButtondoes not have input focus.
-
requireEnabled
Asserts that this fixture'sis enabled.JButton- Specified by:
requireEnabledin interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJButtonis disabled.
-
requireEnabled
Asserts that this fixture'sis enabled.JButton- 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'sJButtonis never enabled.
-
requireDisabled
Asserts that this fixture'sis disabled.JButton- Specified by:
requireDisabledin interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJButtonis enabled.
-
requireVisible
Asserts that this fixture'sis visible.JButton- Specified by:
requireVisiblein interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJButtonis not visible.
-
requireNotVisible
Asserts that this fixture'sis not visible.JButton- Specified by:
requireNotVisiblein interfaceStateVerificationFixture- Returns:
- this fixture.
- Throws:
AssertionError- if this fixture'sJButtonis visible.
-
requireText
Asserts that the text of this fixture'smatches the specified value.JButton- Specified by:
requireTextin interfaceTextDisplayFixture- Parameters:
expected- the text to match. It can be a regular expression.- Returns:
- this fixture.
- Throws:
AssertionError- if the text of the targetJButtondoes not match the given one.
-
requireText
Asserts that the text of this fixture'smatches the given regular expression pattern.JButton- Specified by:
requireTextin interfaceTextDisplayFixture- Parameters:
pattern- the regular expression pattern to match.- Returns:
- this fixture.
- Throws:
NullPointerException- if the given regular expression pattern isnull.AssertionError- if the text of the targetJButtondoes not match the given regular expression pattern.- Since:
- 1.2
-
requireToolTip
Asserts that the toolTip in this fixture'smatches the given value.JButton- 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'sJButtondoes not match the given value.- Since:
- 1.2
-
requireToolTip
Asserts that the toolTip in this fixture'smatches the given regular expression pattern.JButton- 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'sJButtondoes not match the given regular expression.- Since:
- 1.2
-
clientProperty
Returns the client property stored in this fixture's, under the given key.JButton- 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.JButton- Specified by:
showPopupMenuin interfaceJPopupMenuInvokerFixture- Returns:
- a fixture that manages the displayed pop-up menu.
- Throws:
IllegalStateException- if this fixture'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis 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.JButton- 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'sJButtonis disabled.IllegalStateException- if this fixture'sJButtonis not showing on the screen.ComponentLookupException- if a pop-up menu cannot be found.
-