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
JButton
s:
- 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
.JButtonFixture
JButtonFixture
(Robot robot, JButton target) Creates a new
.JButtonFixture
-
Method Summary
Modifier and TypeMethodDescriptionclick()
Simulates a user clicking this fixture's
.JButton
click
(MouseButton button) Simulates a user clicking this fixture's
.JButton
click
(MouseClickInfo mouseClickInfo) Simulates a user clicking this fixture's
.JButton
clientProperty
(Object key) Returns the client property stored in this fixture's
, under the given key.JButton
private void
Simulates a user double-clicking this fixture's
.JButton
protected final void
driver
(AbstractButtonDriver newDriver) Sets the
to be used by this fixture.AbstractButtonDriver
focus()
Gives input focus to this fixture's
.JButton
pressAndReleaseKey
(KeyPressInfo keyPressInfo) Simulates a user pressing given key with the given modifiers on this fixture's
.JButton
pressAndReleaseKeys
(int... keyCodes) Simulates a user pressing and releasing the given keys on this fixture's
.JButton
pressKey
(int keyCode) Simulates a user pressing the given key on this fixture's
.JButton
releaseKey
(int keyCode) Simulates a user releasing the given key on this fixture's
.JButton
Asserts that this fixture's
is disabled.JButton
Asserts that this fixture's
is enabled.JButton
requireEnabled
(Timeout timeout) Asserts that this fixture's
is enabled.JButton
Asserts that this fixture's
has input focus.JButton
Asserts that this fixture's
is not visible.JButton
requireText
(String expected) Asserts that the text of this fixture's
matches the specified value.JButton
requireText
(Pattern pattern) Asserts that the text of this fixture's
matches the given regular expression pattern.JButton
requireToolTip
(String expected) Asserts that the toolTip in this fixture's
matches the given value.JButton
requireToolTip
(Pattern pattern) Asserts that the toolTip in this fixture's
matches the given regular expression pattern.JButton
Asserts that this fixture's
is visible.JButton
Simulates a user right-clicking this fixture's
.JButton
Shows a pop-up menu using this fixture's
as the invoker of the pop-up menu.JButton
Shows a pop-up menu at the given point using this fixture's
as the invoker of the pop-up menu.JButton
text()
Returns the text of this fixture's
.JButton
Methods 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
- theJButton
to be managed by this fixture.robot
- performs simulation of user events on the givenJButton
.- Throws:
NullPointerException
- ifrobot
isnull
.NullPointerException
- iftarget
isnull
.
-
JButtonFixture
Creates a new
.JButtonFixture
- Parameters:
robot
- performs simulation of user events on aJButton
.buttonName
- the name of theJButton
to find using the givenRobotFixture
.- Throws:
NullPointerException
- ifrobot
isnull
.ComponentLookupException
- if a matchingJButton
could not be found.ComponentLookupException
- if more than one matchingJButton
is found.
-
-
Method Details
-
createDriver
private void createDriver() -
driver
Sets the
to 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:
text
in interfaceTextDisplayFixture
- Returns:
- the text of this fixture's
JButton
.
-
click
Simulates a user clicking this fixture's
.JButton
- Specified by:
click
in interfaceMouseInputSimulationFixture
- Returns:
- this fixture.
- Throws:
IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.
-
click
Simulates a user clicking this fixture's
.JButton
- Specified by:
click
in interfaceMouseInputSimulationFixture
- Parameters:
button
- the button to click.- Returns:
- this fixture.
- Throws:
NullPointerException
- if the givenMouseButton
isnull
.IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.
-
click
Simulates a user clicking this fixture's
.JButton
- Specified by:
click
in interfaceMouseInputSimulationFixture
- Parameters:
mouseClickInfo
- specifies the button to click and the times the button should be clicked.- Returns:
- this fixture.
- Throws:
NullPointerException
- if the givenMouseClickInfo
isnull
.IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.
-
doubleClick
Simulates a user double-clicking this fixture's
.JButton
- Specified by:
doubleClick
in interfaceMouseInputSimulationFixture
- Returns:
- this fixture.
- Throws:
IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.
-
rightClick
Simulates a user right-clicking this fixture's
.JButton
- Specified by:
rightClick
in interfaceMouseInputSimulationFixture
- Returns:
- this fixture.
- Throws:
IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.
-
focus
Gives input focus to this fixture's
.JButton
- Specified by:
focus
in interfaceFocusableComponentFixture
- Returns:
- this fixture.
- Throws:
IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is 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 availableJButton
masks.InputEvent
- Specified by:
pressAndReleaseKey
in interfaceKeyboardInputSimulationFixture
- Parameters:
keyPressInfo
- specifies the key and modifiers to press.- Returns:
- this fixture.
- Throws:
NullPointerException
- if the givenKeyPressInfo
isnull
.IllegalArgumentException
- if the given code is not a valid key code.IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.- See Also:
-
pressAndReleaseKeys
Simulates a user pressing and releasing the given keys on this fixture's
.JButton
- Specified by:
pressAndReleaseKeys
in 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'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.- See Also:
-
pressKey
Simulates a user pressing the given key on this fixture's
.JButton
- Specified by:
pressKey
in 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'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.- See Also:
-
releaseKey
Simulates a user releasing the given key on this fixture's
.JButton
- Specified by:
releaseKey
in 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'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.- See Also:
-
requireFocused
Asserts that this fixture's
has input focus.JButton
- Specified by:
requireFocused
in interfaceFocusableComponentFixture
- Returns:
- this fixture.
- Throws:
AssertionError
- if this fixture'sJButton
does not have input focus.
-
requireEnabled
Asserts that this fixture's
is enabled.JButton
- Specified by:
requireEnabled
in interfaceStateVerificationFixture
- Returns:
- this fixture.
- Throws:
AssertionError
- if this fixture'sJButton
is disabled.
-
requireEnabled
Asserts that this fixture's
is enabled.JButton
- Specified by:
requireEnabled
in interfaceStateVerificationFixture
- Parameters:
timeout
- the time this fixture will wait for the component to be enabled.- Returns:
- this fixture.
- Throws:
WaitTimedOutError
- if this fixture'sJButton
is never enabled.
-
requireDisabled
Asserts that this fixture's
is disabled.JButton
- Specified by:
requireDisabled
in interfaceStateVerificationFixture
- Returns:
- this fixture.
- Throws:
AssertionError
- if this fixture'sJButton
is enabled.
-
requireVisible
Asserts that this fixture's
is visible.JButton
- Specified by:
requireVisible
in interfaceStateVerificationFixture
- Returns:
- this fixture.
- Throws:
AssertionError
- if this fixture'sJButton
is not visible.
-
requireNotVisible
Asserts that this fixture's
is not visible.JButton
- Specified by:
requireNotVisible
in interfaceStateVerificationFixture
- Returns:
- this fixture.
- Throws:
AssertionError
- if this fixture'sJButton
is visible.
-
requireText
Asserts that the text of this fixture's
matches the specified value.JButton
- Specified by:
requireText
in interfaceTextDisplayFixture
- Parameters:
expected
- the text to match. It can be a regular expression.- Returns:
- this fixture.
- Throws:
AssertionError
- if the text of the targetJButton
does not match the given one.
-
requireText
Asserts that the text of this fixture's
matches the given regular expression pattern.JButton
- Specified by:
requireText
in 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 targetJButton
does not match the given regular expression pattern.- Since:
- 1.2
-
requireToolTip
Asserts that the toolTip in this fixture's
matches the given value.JButton
- Specified by:
requireToolTip
in interfaceToolTipDisplayFixture
- Parameters:
expected
- the given value. It can be a regular expression.- Returns:
- this fixture.
- Throws:
AssertionError
- if the toolTip in this fixture'sJButton
does not match the given value.- Since:
- 1.2
-
requireToolTip
Asserts that the toolTip in this fixture's
matches the given regular expression pattern.JButton
- Specified by:
requireToolTip
in 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'sJButton
does 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:
clientProperty
in 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
null
if the property was not found. - Throws:
NullPointerException
- if the given key isnull
.- Since:
- 1.2
-
showPopupMenu
Shows a pop-up menu using this fixture's
as the invoker of the pop-up menu.JButton
- Specified by:
showPopupMenu
in interfaceJPopupMenuInvokerFixture
- Returns:
- a fixture that manages the displayed pop-up menu.
- Throws:
IllegalStateException
- if this fixture'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is 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's
as the invoker of the pop-up menu.JButton
- Specified by:
showPopupMenuAt
in 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'sJButton
is disabled.IllegalStateException
- if this fixture'sJButton
is not showing on the screen.ComponentLookupException
- if a pop-up menu cannot be found.
-