Changelog

Release History

Version Date Description
1.2a2 2009-05-26 Subsequent release
1.2a1 2009-05-04 Subsequent release
1.1 2009-02-23 Subsequent release
1.0 2009-01-15 Subsequent release
1.0rc2 2009-01-05 Subsequent release
1.0rc 2008-12-08 Subsequent release
1.0b2 2008-10-16 Subsequent release
1.0b1 2008-07-22 Subsequent release
1.0a3 2008-06-23 Subsequent release
1.0a2 2008-05-19 Subsequent release
1.0a1 2008-04-07 Subsequent release
0.9 2008-03-21 Subsequent release
0.8.1 2008-02-04 Subsequent release
0.8 2008-01-09 Subsequent release
0.7 2007-11-27 Subsequent release
0.6.1 2007-09-26 Subsequent release
0.6 2007-09-25 Subsequent release
0.5 2007-08-30 Subsequent release
0.5-SNAPSHOT 2007-08-06 Subsequent release
0.4 2007-07-17 Subsequent release
0.3 2007-06-04 First public release

Release 1.2a2 - 2009-05-26

Type Changes By
add Added method 'dialog(Timeout)' to ContainerFixture. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'dialog(GenericTypeMatcher, Timeout)' to ContainerFixture. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'dialog(String Timeout)' to ContainerFixture. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'fileChooser(Timeout)' to ContainerFixture. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'fileChooser(GenericTypeMatcher, Timeout)' to ContainerFixture. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'fileChooser(String Timeout)' to ContainerFixture. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'optionPane(Timeout)' to ContainerFixture. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
fix Original methods to look up Dialogs, JFileChoosers and JOptionPanes now delegate to the overloaded versions that take a Timeout. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
fix Class org.fest.swing.timing.Timeout now throws NPE in constructor if the given TimeUnit is null. Fixes FEST-32. Thanks to Juhos Csaba-Zsolt. alruiz
fix To activate a Window, org.fest.swing.core.ActivateWindowTask now calls 'toFront and 'requestFocusInWindow' instead of two calls to 'toFront'. Fixes FEST-118. Thanks to Olivier DOREMIEUX. alruiz
fix Fixed implementation of 'requireSelection(String)' in JTreeDriver when a JTree has an invisible root. Fixes FEST-119. Thanks to Eric Kolotyluk and Jeanette (Kleopatra.) alruiz
fix KeyStrokeMap now uses the German keyboard mappings if the language of the default locale is German. Fixes FEST-132. alruiz

Release 1.2a1 - 2009-05-04

Type Changes By
add Deprecated org.fest.swing.junit.runner.GUITestRunner in module 'fest-swing-junit' and rewrote it as org.fest.junit.v_4_3_1.runner.GUITestRunner in module 'fest-swing-junit-4.3.1. Fixes FEST-29. Thanks to Christian Dähn. alruiz
add Create Runner for JUnit 4.5 as org.fest.swing.junit.v4_5.runner.GUITestRunner, in the project 'fest-swing-junit-4.5'. Fixes FEST-29. Thanks to Christian Dähn. alruiz
fix Marked as 'final' all concrete classes in package org.fest.swing.core.finder. Fixes FEST-37. Thanks to Ondrej Medek. alruiz
add Added methods 'findAll(GenericTypeMatcher)' and 'findAll(Container, GenericTypeMatcher)' to class org.fest.swing.core.ComponentMatcher. Fixes FEST-38. Thanks to Ondrej Medek. alruiz
add Created class Containers, which allows to places a given container inside a JFrame. Fixes FEST-46. Thanks to Hayden Shorter. alruiz
add Added protected final method 'driver' to all fixtures to allow replacement of component drivers. Fixes FEST-85. Thanks to Andriy Tsykholyas. alruiz
fix JComboBoxDriver now sets the focus in the actual editor before entering text. Fixes FEST-102. Thanks to Stephen Neal. alruiz
fix JMenuItems no longer receive input focus when being clicked. Fixes FEST-104. Thanks to Tony Eichelberger, Martin Bachmann. alruiz
fix Screenshots of desktop/GUI components are taken in the EDT, only when the EDT is idle. Fixes FEST-106. Thanks to Jean-Francois Poilpret. alruiz
fix Method 'setUpOnce' (marked with @BeforeClass) in class FestSwingJUnitTestCase is now static. Fixes FEST-114. Thanks to Eitan Suez. alruiz
add Added method 'requireSelection(int)' to ItemGroupFixture and its implementations (JComboBoxFixture and JListFixture.) Fixes FEST-115. Thanks to Jeanette (Kleopatra). alruiz
add Added class org.fest.swing.keystroke.KeyStrokeMappingProvider_de. KeyStrokeMapping now uses this provider if the language of the default Locale is German. Fixes FEST-117. Thanks to Uli Schrempp. alruiz
add Added method 'text' to JSpinnerFixture. Fixes FEST-120. Thanks to Olivier DOREMIEUX. alruiz
add Added method 'clearSelection' to JComboBoxFixture and JListFixture. Fixes FEST-121. Thanks to Olivier DOREMIEUX. alruiz

Release 1.1 - 2009-02-23

Type Changes By
fix When cancelling or stopping cell editing, JTableTextComponentEditorCellWriter and JTableComboBoxEditorCellWriter use the same TableCellEditor obtained when cell editing started. Fixes FEST-3. wanghy
add Added methods "requireRowCount" and "requireColumnCount" to org.fest.swing.fixture.JTableFixture. Fixes FEST-7. Thanks to Michael Schnell. wanghy
add Added method "requireFocused" to all component fixtures in package org.fest.swing.fixture. Fixes FEST-8. Thanks to Michael Schnell. alruiz
add Added class org.fest.swing.testing.FestSwingTestCase. Fixes FEST-9. Thanks to Andres Almiray. alruiz
add Added class org.fest.swing.junit.testcase.FestSwingJUnitTestCase. Fixes FEST-9. Thanks to Andres Almiray. alruiz
add Added class org.fest.swing.testng.testcase.FestSwingTestngTestCase. Fixes FEST-9. Thanks to Andres Almiray. alruiz
add Added method 'selectedComponent' to org.fest.swing.fixture.JTabbedPaneFixture. Fixes FEST-10. Thanks to Ken Geis. alruiz
add Added method 'requireTabTitle(String, Index)' to org.fest.swing.fixture.JTabbedPaneFixture. Fixes FEST-11. Thanks to Michael Schnell. alruiz
add Added method 'requireTabTitles(String...)' to org.fest.swing.fixture.JTabbedPaneFixture. Fixes FEST-11. Thanks to Michael Schnell. alruiz
add Added methods moveMouse(Point), moveMouse(int, int) and pressMouse(Point, MouseButton) to org.fest.swing.core.Robot. Fixes FEST-12. alruiz
add Replaced org.fest.swing.driver.DragAndDrop with org.fest.swing.core.ComponentDragAndDrop. Fixes FEST-13. alruiz
add Class org.fest.swing.driver.DragAndDrop is now deprecated and will be removed in version 2.0. Fixes FEST-13. alruiz
fix Failure to activate cell editor in org.fest.swing.driver.AbstractJTableCellWriter now throw an ActionFailureException with the message "Unable to find or activate cell editor". Fixes FEST-14. Thanks to Ken Geis. alruiz
fix org.fest.swing.driver.JTreeDriver now adds the root to the path to expand, if the JTree has its root invisible. Fixes FEST-15. Thanks to Gino John. alruiz
add Added method 'selectFiles(File...)' to org.fest.swing.fixture.JFileChooserFixture. Fixes FEST-16. Thanks to Peter Hulst. alruiz
fix org.fest.swing.driver.JSpinnerDriver correctly selects the current text of a JSpinner before entering new text. Fixes FEST-17. Thanks to Sergey Parilin. alruiz
add Added methods 'moveToFront' and 'moveToBack' to FrameFixture and DialogFixture. Fixes FEST-18. Thanks to Ian Henehan. alruiz
add org.fest.swing.driver.JSpinnerDriver sets the focus on the editor and waits for the editor to be focused before entering new text. Fixes FEST-19. Thanks to Juhos Csaba-Zsolt. alruiz
fix org.fest.swing.driver.JTableTextComponentEditorCellWriter now correctly catches ActionFailedException when the cell editor cannot be activated by pressing the key 'F2'. Fixes FEST-20. Thanks to Ken Geis. alruiz
fix Parameters values in TestNG test methods are now used to generate name of image file containing desktop screenshot. Fixes FEST-48. Thanks to vnguyen.sqa. alruiz
fix Moved classes in package org.fest.swing.testng to the package org.fest.swing.testng.listener. Fixes FEST-61. alruiz
fix Deprecated org.fest.swing.testng.ScreenshotOnFailureListener. Users should use org.fest.swing.testng.listener.ScreenshotOnFailureListener instead. Fixes FEST-61. alruiz
fix org.fest.swing.driver.JListDriver now clicks in the middle of the visible rectangle of a cell, when selecting an item in a JList. Fixes FEST-65. Thanks to Cimballi. alruiz

Release 1.0 - 2009-01-15

Type Changes By
add Added class org.fest.swing.driver.Scrolling. Fixes 238. Thanks to Juhos Csaba-Zsolt. alruiz
add Added methods 'check' and 'uncheck' to org.fest.swing.fixture.JRadioButtonFixture. Fixes 277. Thanks to Juhos Csaba-Zsolt. alruiz
fix Matchers in org.fest.swing.core.matcher now more search options for component matching (by type, by name, by text/title.) Fixes 280. alruiz
fix Replaced DialogByTitleMatcher with DialogMatcher in package org.fest.swing.core.matcher. Fixes 280. alruiz
fix Replaced FrameByTitleMatcher with FrameMatcher in package org.fest.swing.core.matcher. Fixes 280. alruiz
fix Replaced JButtonByTextMatcher with JButtonMatcher in package org.fest.swing.core.matcher. Fixes 280. alruiz
fix Replaced JLabelByTextMatcher with JLabelMatcher in package org.fest.swing.core.matcher. Fixes 280. alruiz
add Class org.fest.swing.fixture.ContainerFixture implements interface org.fest.swing.fixture.ComponentContainerFixture. Fixes 281. Thanks to Konrad Garus. alruiz
fix Moved SingleComponentHierarchy from package org.fest.swing.core to org.fest.swing.hierarchy. alruiz
fix Made class org.fest.swing.hierarchySingleComponentHierarchy public. alruiz

Release 1.0rc2 - 2009-01-05

Type Changes By
add Added method click(Point, MouseButton, int) to org.fest.swing.core.Robot. Fixes 139. Thanks to Viet Nguyen. alruiz
fix org.fest.swing.image.ScreenshotTaker hides the caret of a focused text component before taking a screenshot. Fixes 213. Thanks to Jean-Francois Poilpret. alruiz
fix org.fest.swing.edt.GuiActionRunner appends stack trace of current thread to an exception thrown in the event dispatch thread. Fixes 247. Thanks to Juhos Csaba-Zsolt. alruiz
fix JTable cell editor lookup fixed in org.fest.swing.driver.JTableTextComponentEditorCellWriter and JTableComboBoxEditorCellWriter by looking up the editor after it has been activated. Fixes 251. Thanks to Juhos Csaba-Zsolt. alruiz
fix Constructors in org.fest.swing.core.GenericTypeMatcher now take the supported type as parameter to guarantee correct casting in the 'isMatching' method. Fixes 257. Thanks to Juhos Csaba-Zsolt. alruiz
fix TestNG is a compile-scoped dependency of the fest-swing-testng module. Fixes 268. Thanks to Jean-Francois Poilpret. alruiz
add Added methods 'rotateMouseWheel(Component, int)' and 'rotateMouseWheel(int)' to org.fest.swing.core.Robot. Fixes 270. Thanks to Slava Gurilev. alruiz
fix Renamed org.fest.swing.core.RobotFixture to BasicRobot. Fixes 271. alruiz
remove Removed class org.fest.swing.core.AWTEventGenerator. Fixes 273. alruiz
remove Removed class org.fest.swing.core.EventMode. Fixes 273. alruiz
remove Removed class org.fest.swing.core.InputEventGenerators. Fixes 273. alruiz
remove Removed methods 'invokeLater', 'invokeAndWait' and 'releaseLeftMouseButton' in org.fest.swing.core.Robot. Fixes 274. alruiz

Release 1.0rc - 2008-12-08

Type Changes By
fix org.fest.swing.core.RobotFixture now throws ActionFailedException if the component to click is out of the boundaries of the screen. Fixes 134. Thanks to Woody Folsom. alruiz
fix Fixed JTable cell-editing actions. Fixes 177. Thanks to Juhos Csaba-Zsolt. alruiz
fix org.fest.swing.image.ScreenshotTaker now hides the cursor of the focused JTextComponent when taking a screenshot. Fixes 213. Thanks to Jean-Francois Poilpret. alruiz
fix Fixed code snippet in Javadoc for class org.fest.swing.data.TableCell. Fixes 214. Thanks to Michael Hüttermann. alruiz
fix Replaced condition to verify a GuiAction is executed in the event dispatch thread with a java.util.concurrent.CountDownLatch in org.fest.swing.edt.GuiActionRunner Fixes 216. Thanks to Tarjei Skorgenes. alruiz, wanghy
fix Consolidated fine-grained GUI tasks into new coarsed-grained ones. Fixes 216. Thanks to Simeon Fitch, Michael Hüttermann, Jean-Francois Poilpret. alruiz
remove Removed org.fest.swing.driver.JListLocation. Fixes 216. alruiz
add Added org.fest.swing.edt.GuiLazyLoadingDescription to lazy-load the description of a org.fest.swing.timing.Condition (which is executed in the event dispatch thread.) Fixes 216. Thanks to Simeon Fitch, Michael Hüttermann, Jean-Francois Poilpret. alruiz, wanghy
add Added annotations RunsInCurrentThread and RunsInEDT in package org.fest.swing.annotations. Fixes 216. alruiz
add Added annotations from "Java Concurrency in Practice" as dependency. Fixes 216. alruiz
fix Fixed implementation of method 'enterValue(JTable, int, int, String)' in org.fest.swing.driver.JTableTextComponentEditorCellWriter. Fixes 219. Thanks to Matthias Otterbach. alruiz
fix Fixed error message when the index of a JTable cell is out of bounds. Fixes 222. Thanks to Daniel F. Surdyk, III. alruiz
fix org.fest.swing.driver.JTableTextComponentEditorCellWriter now presses the 'F2' key to start editing a table cell that uses a JTextComponent as editor. Fixes 225. Thanks to Jan Zuchhold. alruiz
fix Modal dialogs do not blocks tests anymore (as long as tests use the event dispatch thread correctly.) Fixes 228. Thanks to Ken Geis. alruiz
fix Fixed implementation of method 'click' in org.fest.swing.fixture.JTableCellFixture. Fixes 229. Thanks to Michael Schnell. alruiz
fix Added method 'print(PrintStream, ComponentMatcher)' (and overloaded version) to org.fest.swing.core.ComponentPrinter. Fixes 231. Thanks to Ken Geis. alruiz
fix JTableFixture now correctly finds the index of a column given its identifier. Fixes 232. Thanks to Ken Geis. alruiz
fix Method 'findAll' in org.fest.swing.core.BasicComponentMatcher now returns the found components in the same order every time it is called. Fixes 235. Thanks to Rick Juneson. alruiz
fix All actions performed on GUI components (e.g. click) now throw IllegalStateException if the GUI component is not showing on the screen. Fixes 237. Thanks to Simeon Fitch, Michael Hüttermann, vnguyen.sqa. alruiz
fix All Matchers in package org.fest.swing.core.matcher now implement 'toString' to make troubleshooting of failing component lookups easier. Fixes 239. alruiz
fix Moved class ScreenLock from package org.fest.swing.core to org.fest.swing.lock to remove circular dependency. Fixes 240. alruiz
fix Renamed class TableCellByColumnName (in package org.fest.swing.data) to TableCellByColumnId. Fixes 241. alruiz
fix Renamed class TableCellByColumnName (in package org.fest.swing.data) to TableCellByColumnId. Fixes 241. alruiz
add Added SwingHelper project as a dependency. Fixes 242. alruiz
add Added org.fest.swing.edt.FailOnThreadViolationRepaintManager to force tests that violate EDT access to fail. Fixes 242. alruiz
add Added method 'findByLabel' (and overloaded versions) to ComponentFinder to look up components by the text of thier associated JLabel. Fixes 244. Thanks to Michel Lohr. alruiz
add Consolidated org.fest.swing.core.NameMatcher and org.fest.swing.core.NameAndTypeMatcher into one matcher. Fixes 244. alruiz
fix Fixed NullPointerException thrown in org.fest.swing.driver.JListDriver when selecting an already selected item. Fixes 246. Thanks to Juhos Csaba-Zsolt. alruiz
fix By default org.fest.swing.keystroke.KeyStrokeMap uses an English keyboard mapping. Fixes 246. Thanks to Marc Johen. alruiz
fix Made methods/classes related to JTableCellWriter accessible for better code reuse. Fixes 248. Thanks to Juhos Csaba-Zsolt. alruiz

Release 1.0b2 - 2008-10-16

Type Changes By
add Added class org.fest.swing.fixture.ComponentFixtureExtension to add extension methods to ContainerFixture. Fixes 109. alruiz
fix Method 'enterText(String)' in JSpinnerFixture no longer commits the value to the underlying JSpinner. Fixes 161. Thanks to filimono. wanghy
fix Added the method 'enterTextAndCommit(String)' in JSpinnerFixture to enter and commit a value in a JSpinner. Fixes 161. Thanks to filimono. wanghy
add Added method 'columnIndexFor(Object)' in org.fest.swing.fixture.JTableFixture. Fixes 170. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'cell(TableCellByColumnName cell)' to org.fest.swing.fixture.JTableFixture that returns a JTableCellFixture from a row index and column name. Fixes 170. Thanks to Juhos Csaba-Zsolt. alruiz
add Replaced org.fest.swing.driver.JTableCell and org.fest.swing.fixture.TableCell with org.fest.swing.data.TableCell. Fixes 170. Thanks to Juhos Csaba-Zsolt. alruiz
fix BasicJTableCellReader obtains the value of a cell from a JTable, not from a TableModel. Fixes 186. Thanks to Michael Hüttermann. alruiz
fix Introduced GuiActionRunner, GuiQuery and GuiTask in package org.fest.swing.edt to execute queries or tasks in the event dispatch thread. Fixes 187. alruiz, wanghy
fix Moved class AWT from package org.fest.swing.util to org.fest.swing.awt. Fixes 187. alruiz
fix Removed method 'runInEventThreadAndWait' in org.fest.swing.awt.AWT. Replaced with org.fest.swing.edt.GuiActionRunner and org.fest.swing.edt.GuiTask. Fixes 187. alruiz, wanghy
fix Moved classes Condition, Pause and Timeout from package org.fest.swing.core to org.fest.swing.timing. Fixes 187. alruiz
fix Added methods 'pause(Condition[])' to org.fest.swing.timing.Pause. Fixes 187. alruiz, wanghy
fix Added method 'done' to org.fest.swing.timing.Condition. This method is invoked by org.fest.swing.timing.Pause when a condition is evaluated (either the condition was satisfied or it timed-out.) Fixes 187. alruiz, wanghy
add Added method 'cell(String)' to org.fest.swing.fixture.JTableFixture. This method returns a table cell which value matches the given one. Fixes 188. Thanks to Jason Goodwin. alruiz
fix Methods 'increment' and 'decrement' in JSpinnerDriver now work in AWT event mode. Fixes 191. wanghy
add Added method 'select(Object)' in org.fest.swing.fixture.JSpinnerFixture. Fixes 196. Thanks to Juhos Csaba-Zsolt. wanghy
fix Methods 'click(Component)' in org.fest.swing.core.RobotFixture now click on the center of the visible area of the component, only if the component is an instance of javax.swing.JComponent. Fixes 197. Thanks to filimono. alruiz
fix Added method 'centerOfVisibleRect(JComponent)' to org.fest.swing.awt.AWT. Fixes 197. Thanks to filimono. alruiz
fix Added methods 'scrollToMaximum' and 'scrollToMinimum' to org.fest.swing.fixture.JScrollBarDriver. Fixes 197. Thanks to filimono. alruiz
fix Method 'showPopupMenuAt(String)' in org.fest.swing.fixture.JTreeFixture now makes the last node in the given path visible before showing a JPopupMenu. Fixes 200. Thanks to Juhos Csaba-Zsolt. alruiz
fix Method 'eventDispatched(AWTEvent)' in org.fest.swing.monitor.WindowAvailabilityMonitor now checks if the source of the event is a java.awt.Component before performing a cast. Fixes 201. Thanks to Juhos Csaba-Zsolt. wanghy
fix Class org.fest.swing.driver.DragAndDrop is now public. Fixes 202. Thanks to Juhos Csaba-Zsolt. alruiz
add Added method 'rowCount' to org.fest.swing.fixture.JTableFixture. Fixes 204. Thanks to Juhos Csaba-Zsolt. alruiz, wanghy
fix Method 'requireSelection(String)' in org.fest.swing.fixture.JComboBoxFixture now handles editable JComboBoxes correctly. Fixes 210. Thanks to Ewan McDougall. alruiz
fix Added method 'setText(String)' in org.fest.swing.fixture.JTextComponentFixture. Fixes 211. Thanks to Simeon Fitch. alruiz

Release 1.0b1 - 2008-07-22

Type Changes By
add Added org.fest.swing.applet.AppletViewer and helper classes in package org.fest.swing.applet. Fixes 11. alruiz, wanghy
add JFileChooserDriver checks that lookup of buttons search for visible (or 'showing') buttons. Fixes 14. wanghy
fix Added method 'menuItemWithPath(String...)' to org.fest.swing.fixture.JPopupMenuFixture. Fixes 146. Thanks to Juhos Csaba-Zsolt. alruiz, wanghy
fix Added component matchers using commonly used search criteria to package org.fest.swing.core.matchers. Fixes 158. Thanks to vnguyen.sqa. alruiz, wanghy
fix Replaced method 'select(JMenuItem)' with 'click(JMenuItem)' in org.fest.swing.fixture.JMenuItemFixture. Fixes 165. Thanks to Simeon Fitch. alruiz, wanghy
remove Removed method 'doubleClick(JMenuItem)' in org.fest.swing.fixture.JMenuItemFixture. Fixes 165. Thanks to Simeon Fitch. alruiz, wanghy
remove Removed method 'rightClick(JMenuItem)' in org.fest.swing.fixture.JMenuItemFixture. Fixes 165. Thanks to Simeon Fitch. alruiz, wanghy
remove Removed method 'click(JMenuItem, MouseButton)' in org.fest.swing.fixture.JMenuItemFixture. Fixes 165. Thanks to Simeon Fitch. alruiz, wanghy
remove Added class org.fest.swing.fixture.GenericComponentFixture. Fixes 166. Thanks to Simeon Fitch. alruiz
fix Method 'cellReader(JComboBoxCellReader)' in org.fest.swing.fixture.JComboBoxFixture now returns 'this'. Fixes 167. Thanks to Juhos Csaba-Zsolt. alruiz
fix Method 'cellReader(JListCellReader)' in org.fest.swing.fixture.JListFixture now returns 'this'. Fixes 167. Thanks to Juhos Csaba-Zsolt. alruiz
fix Method 'cellReader(JTableCellReader)' in org.fest.swing.fixture.JTableFixture now returns 'this'. Fixes 167. Thanks to Juhos Csaba-Zsolt. alruiz
fix Method 'cellWriter(JTableCellWriter)' in org.fest.swing.fixture.JTableFixture now returns 'this'. Fixes 167. Thanks to Juhos Csaba-Zsolt. alruiz
fix Method 'cellReader(JTreeCellReader)' in org.fest.swing.fixture.JTreeFixture now returns 'this'. Fixes 167. Thanks to Juhos Csaba-Zsolt. alruiz
fix Methods 'selectItem' ensure the drop-down list in a JComboBox is hidden after a selection has been made. Fixes 173. Thanks to fred76131. alruiz
remove Added class org.fest.swing.core.EmergencyAbortListener to abort running FEST-Swing tests using a predefined key combination. Fixes 174. Thanks to Simeon Fitch. alruiz
fix JTableCellWriters now wait for the editor to show on the screen before starting editing a JTable cell. Fixes 177. Thanks to Juhos Csaba-Zsolt. wanghy
fix Method 'separator(String)' in org.fest.swing.fixture.JTreeFixture now returns 'this'. Fixes 179. Thanks to Juhos Csaba-Zsolt. alruiz
fix Moved abstract methods in org.fest.swing.fixture.ComponentFixture to the interfaces FocusableComponentFixture, KeyboardInputSimulationFixture, MouseInputSimulationFixture and StateVerificationFixture. alruiz
fix Moved classes KeyPressInfo and MouseClickInfo from package org.fest.swing.fixture to org.fest.swing.core. alruiz
fix Replaced method 'pressAndReleaseKey(int keyCode, int modifiers)' with 'pressAndReleaseKey(int keyCode, int... modifiers)' in org.fest.swing.core.RobotFixture. alruiz
remove Removed all methods related to keyboard input simulation from JListItemFixture and JTableCellFixture. alruiz
fix Replaced IllegalArgumentException with NullPointerException when a method argument has null as its value. alruiz
fix Replaced ActionFailedException and LocationUnavailableException with IndexOutOfBoundsException when an index is out of bounds (e.g. the row index in a JTable.) alruiz

Release 1.0a3 - 2008-06-23

Type Changes By
fix Disabled components should not be modified by user-like actions. Fixes 126. Thanks to Manuel Kueblboeck. wanghy
add Added method 'cleanUpWithoutDisposingWindows' to Robot and RobotFixture in package 'org.fest.swing.core'. Fixes 138. Thanks to J. Simmons. alruiz, wanghy
fix Method 'selectItem(String)' in JComboBoxFixture now uses the specified cell reader to find a matching value in the JComboBox. Fixes 140. Thanks to Wim Deblauwe. alruiz
add Added methods 'showPopupMenuAt(int)' and 'showPopupMenuAt(String)' to JTableHeaderFixture. Fixes 141. Thanks to BA. alruiz
add Added methods 'enterValue(TableCell, String)' to org.fest.swing.fixture.JTableFixture. Fixes 142. Thanks to Simeon Fitch, Matthias Otterbach. wanghy, alruiz
add Added methods 'requireEditable(TableCell)' and 'requireNotEditable(TableCell)' to org.fest.swing.fixture.JTableFixture. Fixes 142. Thanks to Simeon Fitch, Matthias Otterbach. alruiz, wanghy
add Added methods 'requireEditable()' and 'requireNotEditable()' to org.fest.swing.fixture.JTableCellFixture. Fixes 142. Thanks to Simeon Fitch, Matthias Otterbach. alruiz, wanghy
add Added methods 'startEditing(),' 'stopEditing(),' 'cancelEditing(),' 'editor(),' and 'enterValue(String)' to org.fest.swing.fixture.JTableCellFixture. Fixes 142. Thanks to Simeon Fitch, Matthias Otterbach. wanghy, alruiz
add Added methods 'findAll(ComponentMatcher)' and 'findAll(Container, ComponentMatcher)' to org.fest.swing.core.ComponentFinder to look up all the components that match certain search criteria. Fixes 144. Thanks to Simeon Fitch. alruiz
fix Fixed mapping of character '+' to a key stroke in org.fest.swing.keystroke.KeyStrokeMappingProvider_en. Fixes 145. Thanks to Juhos Csaba-Zsolt. alruiz
fix Fixed multiple selection in JListDriver, JTableDriver and JTreeDriver. Fixes 147. Thanks to Juhos Csaba-Zsolt. alruiz
fix Fixed implementation of 'selectItems(JList, int, int)' in org.fest.swing.driver.JListDriver. Fixes 152. Thanks to Juhos Csaba-Zsolt. wanghy
fix All fixtures now throw IllegalArgumentException if any constructor argument is null (with the exception of the name of the component to look up.) Fixes 153. Thanks to Juhos Csaba-Zsolt. alruiz, wanghy
fix JMenuItemFixture now supports the screen menu bar in Mac OS. Fixes 157. Thanks to Andriy Tsykholyas, Simeon Fitch. wanghy
fix Fixed bug in org.fest.swing.core.RobotFixture. Closing a window that is not shown resulted in an ActionFailedException. wanghy
add Renamed methods 'slideToMax' and 'slideToMin' in JSliderFixture to 'slideToMaximum' and 'slideToMinimum' respectively. wanghy
add Added class 'org.fest.swing.launcher.ApplicationLauncher' to start application from the 'main' method. wanghy
remove Removed methods 'increment' and 'decrement' in JSliderFixture. These methods were not communicating their intention properly and are not needed since JSliderFixture has the methods 'slideToMaximum' and 'slideToMinimum'. wanghy
add Added method 'controlOrCommandMask' to org.fest.swing.util.Platform. alruiz
add Added method 'pressAndReleaseKey(KeyPressInfo)' to all component fixtures. alruiz

Release 1.0a2 - 2008-05-19

Type Changes By
add Added method 'selectPaths(String...)' and 'selectRows(int...)' to JTreeFixture. Fixes 68. wanghy, alruiz
add Method 'requireSelection(String)' and 'requireSelection(row)' in JTreeFixture now take an array as argument to verify multi-selection in a JTree. The new signatures are 'requireSelection(String...)' and 'requireSelection(int...)' respectively. Fixes 68. wanghy, alruiz
add Created JTableCellReader (with default implementation BasicJTableCellReader) which reads the value of a cell in a JTable. BasicJTableCellReader supports JLabels, JComboBoxes and JCheckBoxes as cell renderers of a JTable. Fixes 99. Thanks to J. Simmons. alruiz, wanghy
add Added methods 'fontAt(TableCell)', 'backgroundAt(TableCell)' and 'foregroundAt(TableCell)' to JTableFixture to verify the font, background and foreground of an specific cell in a JTable. Fixes 99. Thanks to J. Simmons. alruiz, wanghy
add Added methods 'font()', 'background()' and 'foreground()' to JTableCellFixture to verify the font, background and foreground of an specific cell in a JTable. Fixes 99. Thanks to J. Simmons. alruiz, wanghy
fix Fixed NullPointerException in method 'enterText' in org.fest.core.RobotFixture. Fixes 123. Thanks to Manuel Kueblboeck. alruiz
fix Added method 'selection' to JListFixture. This method returns the String representation of the selection of a JList. Fixes 124. Thanks to Woody Folsom. alruiz
fix Introduced 'JListCellReader' to read values from JLists. Users can implement their own JListCellReaders when using custom cell renderers in JLists. After creating a JListCellRendering, users only need to pass an instance to the method 'cellReader(JListCellReader)' in JListFixture. Fixes 124. Thanks to Woody Folsom. alruiz
fix Fixed regression. JToolBarFixture extends ComponentFixture. Fixes 125. Thanks to Woody Folsom. alruiz
add Created JComboBoxCellReader and BasicJComboBoxReader to support custom cell renderers in JComboBoxFixture. Fixes 128. alruiz
add Created JTreeCellReader and BasicJTreeReader to support custom cell renderers in JTreeFixture. Fixes 130. alruiz, wanghy
add Added method 'requireNoSelection' to JComboBoxFixture, JListFixture, JTableFixture and JTreeFixture. Fixes 131. wanghy, alruiz
fix JTreeFixture now scrolls (up or down) to the row or path to select, drag or drop. Fixes 133. alruiz
add Added method 'contents' to JTableFixture. This method returns the String representation of the cell values of a JTable. Fixes 135. alruiz
add Added method 'requireContents(String[][])' to JTableFixture. Fixes 135. alruiz
add Component finders (WindowFinder, JFileChooserFinder and JOptionPaneFinder) can perform lookups using GenericTypeMatchers. Many thanks to Mariusz Saternus. wanghy, alruiz
add Added method 'font' to all fixtures. This method returns a FontFixture. alruiz
add Added method 'background' to all fixtures. This method returns a ColorFixture. alruiz
add Added method 'foreground' to all fixtures. This method returns a ColorFixture. alruiz
fix Renamed method 'selectionContents' to 'selectionValue' in JTableFixture. alruiz
fix Renamed method 'contentAt' to 'valueAt' in JTableFixture. This change was made to keep name consistency between JComboBoxFixture, JListFixture and JTableFixture. alruiz
add Added method 'requireValue(String)' to JTableCellFixture. alruiz
add Added method 'requireSelection(String)' to JTreeFixture. This method verifies that a JTree has the given path selected. The path is specified as a String, for example "root/node1/node1.1". alruiz, wanghy
add Added method 'requireSelection(int)' to JTreeFixture. This method verifies that a JTree has the row selected. alruiz, wanghy
add Added methods 'showPopupMenuAt(int)' and 'showPopupMenuAt(String)' to JTreeFixture. These methods show a JPopupMenu in a given row and node path respectively. wanghy
add Replaced TreePath as method parameter in JTreeFixture with a String specifying the path. For example, now a path can be set as "root/node1/node1.1". alruiz, wanghy

Release 1.0a1 - 2008-04-07

Type Changes By
add Added methods 'selectAllText' and 'replaceText(String)' to JComboBoxFixture. wanghy
fix Replaced constants that indicate the operating system with methods in org.fest.swing.util.Platform. alruiz
remove Eliminated some project dependencies. FEST-Swing now depends on FEST-Assert, FEST-Reflect and FEST-Util only. alruiz, wanghy
fix Fixed regression. JPanelFixture extends ComponentFixture. Fixes 121. Thanks to Frederik Martens. alruiz
fix Fixed regression. JInternalFrameFixture extends ComponentFixture. Fixes 120. Thanks to Manuel Kueblboeck. alruiz
add Renamed method names that start with 'mouse' in org.fest.swing.core.Robot. For example, the method 'mouseMove' is now 'moveMouse'. This change was done to keep method naming consistency. wanghy
add Added method 'pressModifiers(int)' and 'releaseModifiers(int)' to org.fest.swing.core.Robot. wanghy, alruiz
add Added methods 'focus(Component)' and 'focusAndWaitForFocusGain(Component)' to org.fest.swing.core.Robot. alruiz

Release 0.9 - 2008-03-21

Type Changes By
fix Fixed JListDriver and JTableDriver to scroll to the item to select, drag or drop. wanghy, alruiz
fix Selecting items in JComboBox now scroll drop-down list to get to the item to select. Fixes 116. Thanks to Rich Toulouse. wanghy, alruiz
add Added method 'tableHeader' to JTableFixture. This method returns a JTableHeaderFixture. Fixes 110. Thanks to Dan Dyer. wanghy
add Added JTableHeaderFixture to test instances of JTableHeader. Fixes 110. Thanks to Dan Dyer. wanghy
fix Made methods of class org.fest.core.Settings not static. To set a particular setting, an instance of Settings should be retrieved from a Robot. wanghy
add Added methods 'includeHierarchyIfComponentNotFound' and 'includeHierarchyIfComponentNotFound(boolean)' to org.fest.swing.core.ComponentFinder to indicate if the component hierarchy should be included in a ComponentLookupException thrown when a component cannot be found. Fixes 118. Thanks to Lukasz Tutaj. alruiz
add Added method 'component' to ComponentFixture. It returns the GUI component in a fixture. Fixes 95. Thanks to Fabien Barbero. alruiz
add Added methods 'requireEditable' and 'requireNotEditable' to JComboBoxFixture, JTextComponentFixture and JTreeFixture. Fixes 95. Thanks to Fabien Barbero. alruiz
add Added method 'requireNoJOptionPaneIsShowing' to RobotFixture. Fixes 92. Thanks to Wim Deblauwe. alruiz, wanghy
add Renamed ComponentPrinter to BasicComponentPrinter (in package org.fest.swing.core). Introduced interface ComponentPrinter. alruiz
add Renamed ComponentFinder to BasicComponentFinder (in package org.fest.swing.core). Introduced interface ComponentFinder. alruiz
fix Moved methods from org.fest.swing.util.Swing to org.fest.swing.util.AWT. Deleted class org.fest.swing.util.Swing. alruiz
add Created interface org.fest.swing.core.Robot and made RobotFixture implement it, to facilitate unit testing. alruiz
add Added method 'showPopupMenuAt(String)' to JListFixture. alruiz

Release 0.8.1 - 2008-02-04

Type Changes By
add Updated dependency versions: fest-assert-0.9.1, fest-reflect-0.3, fest-util-0.3. alruiz
add Due to the introduction of component drivers, fest-reflect is a required, compile-time dependency. alruiz
add All component formatters in org.fest.swing.formatter display the properties 'visible' and 'showing'. Thanks to Wim Deblauwe. alruiz
fix ComponentFinderTemplate uses the specified name to find a component. Fixes 108. Thanks to Wim Boffe. alruiz
fix Fixed constructors in ContainerFixture to use lookup scope from org.fest.swing.core.Settings. Fixes 105. Thanks to Woody Folsom. alruiz
add Added method 'click(TableCell, MouseButton)' to JTableFixture. wanghy, alruiz
add Added method 'click(TableCell, MouseClickInfo)' to JTableFixture. wanghy, alruiz
add Added method 'scrollTo(int)' to JScrollBarFixture. wanghy, alruiz
add Added method 'found' to ComponentLookupException. This method returns all the GUI components found when looking up for a single component. alruiz
add Moved methods 'showPopupMenu' and 'findActivePopupMenu' from org.fest.swing.core.RobotFixture to org.fest.swing.driver.JPopupMenuDriver. alruiz
add Added method 'pressAndReleaseKey(int keyCode, int modifiers)' to org.fest.swing.core.RobotFixture. Fixes 104. Thanks to Fabien Barbero. alruiz
add Added the following component drivers to replace Abbot's testers: ComponentDriver, ContainerDriver, FrameDriver, JComboBoxDriver, JComponentDriver, JInternalFrameDriver, JListDriver, JMenuItem, JPopupMenu, JScrollBarDriver, JSliderDriver, JSpinnerDriver, JTabbedPane, JTable, JTextComponentDriver, JToolBarDriver, JTreeDriver. Component drivers are intended for internal use only. alruiz, wanghy
add Added method 'enterText(String)' to class org.fest.swing.core.RobotFixture. alruiz
add Added method 'timeoutToFindPopup' to class org.fest.swing.core.Settings. This method sets the number of milliseconds to wait before failing to find a pop-up menu that should appear. alruiz
add Added method 'click(Component, Point)' to org.fest.swing.core.RobotFixture. alruiz
add Added several constants to org.fest.swing.core.Settings that indicate the operating system the tests are running on (e.g. 'IS_WINDOWS', 'IS_OS_X', etc.) alruiz
fix Renamed method 'robotAutoDelay' to 'delayBetweenEvents' in class org.fest.swing.core.Settings. alruiz
add Added method 'timeoutToBeVisible' to class org.fest.swing.core.Settings. This method sets the the number of milliseconds to wait for a component to be visible. alruiz
fix Fixed bug in which IntrospectionComponentFormatter could show the value of the property 'showing'. alruiz

Release 0.8 - 2008-01-09

Type Changes By
fix Renamed method 'menuItem(String...)' in ContainerFixture to 'menuItemWithPath(String...)'. Fixes 88. Thanks to Rich Toulouse. alruiz
fix Added global setting 'componentLookupScope' (in class Settings) to configure scope of component lookup (in fixtures only.) Fixes 80. Thanks to Win Deblauwe, Volker Berlin. alruiz
fix Added enum ComponentLookupScope to configure component lookup to consider showing components only. Fixes 80. Thanks to Win Deblauwe, Volker Berlin. alruiz
add Added JScrollBarFixture and JScrollPaneFixture. Fixes 75. Thanks to Fabien Barbero. wanghy, alruiz
fix Component lookup using a org.fest.swing.core.ComponentFinder now throws ComponentLookupException if more than one component matching the given search criteria is found. Fixes 81. Thanks to Win Deblauwe. alruiz, wanghy
fix Moved 'print' methods from org.fest.swing.core.ComponentFinder to the new class org.fest.swing.core.ComponentPrinter. Fixes 81. Thanks to Win Deblauwe. alruiz
add Added NameAndTypeMatcher to lookup GUI components by name and type. alruiz
add Added method 'printer()' to RobotFixture. This method returns a ComponentPrinter using the same component hierarchy as the RobotFixture. alruiz
fix ComponentFinders now match components if 'isShowing()' is true, instead of checking for 'isVisible()'. Fixes 76. Thanks to Win Deblauwe. alruiz
fix When components are not found, the message in the thrown ComponentLookupException now includes list of Components in the hierarchy. Fixes 71. Thanks to Win Deblauwe. alruiz, wanghy
add Added methods 'printComponents(PrintStream, Container)' and 'printComponents(PrintStream, Class, Container)' to ComponentFinder. Fixes 71. Thanks to Win Deblauwe. wanghy
fix Added 'toString' implementation to org.fest.swing.core.NameMatcher to facilitate debugging. Fixes 71. Thanks to Wim Deblauwe. alruiz
fix Added 'toString' implementation to org.fest.swing.core.TypeMatcher to facilitate debugging. Fixes 71. Thanks to Wim Deblauwe. alruiz
fix Added 'toString' implementation to org.fest.swing.fixture.JMenuItemMatcher to facilitate debugging. Fixes 71. Thanks to Wim Deblauwe. alruiz
fix Added 'toString' implementation to org.fest.swing.fixture.JButtonMatcher to facilitate debugging. Fixes 71. Thanks to Wim Deblauwe. alruiz
add Renamed methods 'wait' and 'delay' in RobotFixture to 'pause'. Then moved methods 'pause' to the new class Pause. alruiz
add Added method 'robotAutoDelay' in class 'org.fest.swing.core.Settings' to configure test speed. Fixes 69. Thanks to Wim Deblauwe. wanghy, alruiz
add Added JInternalFrameFixture. Fixes 70. Thanks to Ken Geis. wanghy, alruiz
add Added method 'moveTo(Point)' to FrameFixture and DialogFixture. wanghy, alruiz
add Added method 'requireValue(Object)' to JSpinnerFixture. Fixes 73. Thanks to Wim Deblauwe. alruiz
add Added method 'increment(int)' to JSpinnerFixture. Fixes 74. Thanks to Wim Deblauwe. alruiz
add Added method 'decrement(int)' to JSpinnerFixture. alruiz
add Added class JListItemFixture. that knows how to simulate user input on a specific item of a JList. Fixes 63. Thanks to Fabien Barbero. alruiz, wanghy
add Added method 'item(int)' and 'item(String)' to JListFixture. These methods return a JListItemFixture. Fixes 63. Thanks to Fabien Barbero. alruiz, wanghy
add Added method 'showPopupMenuAt(Point)' to ComponentFixture (and therefore to all fixtures). Fixes 63. Thanks to Fabien Barbero. alruiz
remove Removed unnecessary generic types in ItemGroupFixture, TextInputFixture and TextDisplayFixture. alruiz, wanghy
add Added method 'requireSelection(String)' to JComboBoxFixture. Fixes 52. Thanks to John Stephi. alruiz
add Added method 'requireSelection(String)' to JListFixture. Fixes 52. Thanks to Wim Deblauwe. alruiz
add Added method 'requireSelectedItems(String...)' to JListFixture. Fixes 52. Thanks to Wim Deblauwe. alruiz
add Added method 'selectItems(int...)' to allow multiple-selection a JListFixture. Fixes 64. Thanks to Fabien Barbero. alruiz
add Added method 'selectItems(String...)' to allow multiple-selection a JListFixture. Fixes 64. Thanks to Fabien Barbero. alruiz
add Added method 'selectItems(Range.From, Range.To)' to allow selection of a range of items in a JListFixture. Fixes 64. Thanks to Wim Deblauwe. alruiz
add Added methods 'okButton', 'cancelButton', 'yesButton' and 'noButton' to JOptionPaneFixture. These methods return a JButtonFixture wrapping the buttons in a JOptionPane Fixes 66. Thanks to Wim Deblauwe, Volker Berlin. alruiz
fix Added method 'panel' to class ContainerFixture. FrameFixture and DialogFixture can now lookup a JPanel (or subclass by type (if only one JPanel in the container,) by name or by custom search criteria. Fixes 67. Thanks to Rich Toulouse. alruiz
add Added method 'invokeAndWait(Runnable)' to RobotFixture. alruiz

Release 0.7 - 2007-11-27

Type Changes By
add Added method 'takeScreenshotOf' to class ScreenshotTaker. This method takes screenshots of a particular GUI component. Thanks to Steve Tom. wanghy, alruiz
add Added method 'saveComponentAsPng' to class ScreenshotTaker. This method takes screenshots of a particular GUI component and saves it as PNG. Thanks to Steve Tom. wanghy, alruiz
add Added method 'printComponents' (with overloaded version) to ComponentFinder. Fixes 58. Thanks to Volker Berlin. alruiz
add Added method 'toggleButton' (and overloaded versions) to org.fest.swing.fixture.ContainerFixture. Fixes 60. Thanks to Volker Berlin. alruiz
add Added org.fest.swing.fixture.JToggleButtonFixture to handle javax.swing.JToggleButton(s). Fixes 60. Thanks to Volker Berlin. alruiz
remove Renamed org.fest.swing.fixture.JToggleButtonFixture to org.fest.fixture.TwoStateButtonFixture. Fixes 60. Thanks to Volker Berlin. alruiz
add Moved Ant task-related classes from the package 'org.fest.swing.junit' to 'org.fest.swing.junit.ant'. Fixes 55. Thanks to Volker Berlin. alruiz, wanghy
add Added support for taking screenshots of failing tests with JUnit inside an IDE. Fixes 55. Thanks to Volker Berlin. alruiz, wanghy
fix Moved org.swing.fest.GUITest and org.fest.swing.util.GUITestFinder to package org.fest.swing.annotation. Fixes 59. alruiz
fix Moved exception classes in package org.fest.swing to org.fest.swing.exception. Fixes 59. alruiz
fix Moved classes in package org.fest.swing to org.fest.swing.core. Fixes 59. alruiz
fix Renamed package org.fest.swing.fixture.util to org.fest.swing.finder. Fixes 59. alruiz
add Added method 'requireEnabled(Timeout)' to all component fixtures. Fixes 56. Thanks to Volker Berlin. wanghy
add Added class JOptionPaneFinder to find a JOptionPane with timeout support. Fixes 56. Thanks to Volker Berlin. wanghy
add Added factory method 'timeout(long, java.util.concurrent.TimeUnit)' to class org.fest.swing.core.Timeout. wanghy, alruiz
fix Renamed method 'time' to 'duration' in class org.fest.swing.core.Timeout. wanghy
fix Renamed method 'checkbox' to 'checkBox' in ContainerFixture. Fixes 57. Thanks to John Stephi. wanghy
add Added method 'click(Component, Point, MouseButton, int)' to RobotFixture. This method simulates a user clicking on the given component, at the specific point, with the given mouse button, the given number of times. wanghy
add Added methods 'doubleClickItem(int)' and 'doubleClickItem(String)' to JListFixture. Fixes 40. Thanks to Fabien Barbero. wanghy
add Uploaded source attachments to Maven repository. alruiz
add Added class JPanelFixture. Fixes 42. wanghy
fix Moved ImageException and ScreenshotTaker from package org.fest.swing.util to package org.fest.swing.image. alruiz
fix Renamed org.fest.swing.util.GUITests to org.fest.swing.annotation.GUITestFinder. alruiz
add Add timeout for RobotFixture.wait(Condition): RobotFixture.wait(Condition, Timeout). Fixes 45. wanghy
add Added method 'close' to WindowFixture (superclass of FrameFixture and DialogFixture). Fixes 44. Thanks to Javier Sandino. alruiz
fix Created class JFileChooserFinder. Fixes 50. Thanks to Javier Sandino. alruiz

Release 0.6.1 - 2007-09-26

Type Changes By
fix Added methods 'radioButton' and 'table' to ContainerFixture (superclass of DialogFixture and FrameFixture). Thanks to Pavol Bernhauser. alruiz
fix Added static methods 'leftButton', 'middleButton' and 'rightButton' to MouseClickInfo. Thanks to Andres Almiray. alruiz

Release 0.6 - 2007-09-25

Type Changes By
add Assertion failures in all fixtures now provide better feedback. Fixes 27. Thanks to Jesper Thaning. alruiz
add Added support for time delays in RobotFixture. Fixes 34. wanghy
add Added method 'pressAndReleaseKeys(int...)', 'pressAndReleaseKey(int)', and 'releaseKey(int)' to all fixtures. wanghy
add Added method 'rightClick' to all fixtures. Fixes 33. alruiz
add Added method 'doubleClick' to all fixtures. wanghy
add Added method 'click(MouseButton)' to all fixtures; this method simulates a user clicking the specified mouse button. wanghy
add Added method 'click(MouseClickInfo)' to all fixtures; this method simulates a user clicking the specified mouse button, the specified number of times. wanghy
add Added method 'showPopupMenu' to all fixtures. This method shows a pop-up menu on a component and returns a JPopupMenuFixture. alruiz
remove Replaced class JTableFixture.Cell with TableCell. alruiz
add In JTableFixture, the methods that used to take two int values as the row and column indices as arguments, now take a TableCell as argument. alruiz
add Added method 'cell(TableCell)' to JTableFixture, which returns a fixture that can manage the specified table cell. alruiz
add Added support for JPopupMenu, JRadioButton and JSplitPane. wanghy
remove Renamed method 'contents' to 'selectionContents' in JTableFixture. alruiz
remove Removed method testerCastedTo from ComponentFixture. alruiz

Release 0.5 - 2007-08-30

Type Changes By
add Added drag 'n drop support for JList, JTable and JTree. Thanks to Fabien Barbero. alruiz
add Added support for custom matchers for component lookup. This feature is useful when testing GUI components that don't have an associated name (e.g. testing legacy applications.) wanghy
add Added utility class Platform, which contains platform-specific utility methods. alruiz
add ContainerFixture now recognizes JFileChooserFixture and JListFixture. Thanks to Fabien Barbero. alruiz

Release 0.5-SNAPSHOT - 2007-08-06

Type Changes By
add Support for testing time-consuming tasks Fixes 15. alruiz, wanghy
add Swing module and the extensions for TestNG and JUnit are included in one zip file. alruiz, wanghy

Release 0.4 - 2007-07-17

Type Changes By
add Now it is possible to embed screenshots of failing GUI tests in JUnit's HTML report. Fixes 3. alruiz, wanghy
add Added support for more Swing components: JTable, JSpinner, JSlider and JFileChooser. alruiz, wanghy
add Separated the TestNG and JUnit extensions (screenshots of failing tests) into their own separate projects. alruiz, wanghy

Release 0.3 - 2007-06-04

Type Changes By
fix Added class ScreenLock to guarantee real sequential execution of GUI tests, regardless of the testing framework being used (JUnit or TestNG.) Fixes 1. alruiz
add Added capability to add a screenshot of the desktop to a TestNG HTML test report when a test fails. alruiz, wanghy
add Added support for testing JTrees. Thanks to Keith Coughtrey. alruiz
add Replaced prefix 'should' with 'require' in fixture assertions to make API more concise (e.g. the method 'shouldBeVisible' is now 'requireVisible.') Thanks to Jeff Bay. alruiz
fix Renamed method 'shouldHaveThisText' to 'requireText' in interface TextDisplayFixture. Thanks to Jeff Bay. alruiz
fix Removed prefix 'find' from methods in ContainerFixture (e.g. the method 'findLabel' is now 'label.') Thanks to Jeff Bay. alruiz
add Added Maven 2 tasks for Ant for dependency management. alruiz, wanghy
add Created a Maven 2 pom.xml file for Abbot. alruiz, wanghy
add Created a Maven 2 local repository containing all FEST dependencies. This way, it is not necessary to download any dependency from a remote Maven repository when building FEST. alruiz
add Added module fest-reflect, which provides a 'fluent interface' that simplifies the usage of Java reflection. alruiz, wanghy