RFR: 8314906: [testbug] Create behavior tests for text input controls [v5]

Andy Goryachev angorya at openjdk.org
Thu Sep 14 21:09:22 UTC 2023


> Creating the first batch of tests and testing framework that enables writing behavior tests for javafx controls, focusing on key bindings.  The idea is to make writing such tests a simple process.  
> 
> This PR deals with the descendants of TextInputControl (TextField, PasswordField, TextArea).  Most of the tests are headless, but in some cases (TextArea) a headful test is required because the behavior needs rendered text to function (example: page up / page down / line start / line end and the like).
> 
> The tests exercise the key bindings registered by the Skin (or, rather the associated Behavior) at least once, and sometimes more than once.
> 
> Some mappings cannot be tested due to Robot not supporting keypad events (created [JDK-8316307](https://bugs.openjdk.org/browse/JDK-8316307)).
> 
> In addition, the key bindings are documented in /doc-files/behavior markdown documents:
> 
> https://github.com/andy-goryachev-oracle/jfx/blob/8314906.behavior.test/doc-files/behavior/PasswordField.md
> https://github.com/andy-goryachev-oracle/jfx/blob/8314906.behavior.test/doc-files/behavior/TextArea.md
> https://github.com/andy-goryachev-oracle/jfx/blob/8314906.behavior.test/doc-files/behavior/TextField.md
> https://github.com/andy-goryachev-oracle/jfx/blob/8314906.behavior.test/doc-files/behavior/TextInputControl.md

Andy Goryachev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 38 additional commits since the last revision:

 - Merge remote-tracking branch 'origin/master' into 8314906.behavior.test
 - cleanup
 - key modifier
 - Merge remote-tracking branch 'origin/8314906.behavior.test' into 8314906.behavior.test
 - win
 - platform util
 - disabled keypad tests
 - text area tests
 - docs
 - text area doc
 - ... and 28 more: https://git.openjdk.org/jfx/compare/2194d0c9...911e6d33

-------------

Changes:
  - all: https://git.openjdk.org/jfx/pull/1221/files
  - new: https://git.openjdk.org/jfx/pull/1221/files/a90b4691..911e6d33

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jfx&pr=1221&range=04
 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1221&range=03-04

  Stats: 124 lines in 10 files changed: 84 ins; 7 del; 33 mod
  Patch: https://git.openjdk.org/jfx/pull/1221.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1221/head:pull/1221

PR: https://git.openjdk.org/jfx/pull/1221


More information about the openjfx-dev mailing list