RFR: 8298500: Create test to initially show stage with various attributes (iconified, maximized, full screen) [v2]

Lukasz Kostyra lkostyra at openjdk.org
Fri Sep 15 14:43:23 UTC 2023


> PR adds tests mentioned in the title - a new `AttributesTest` class is added testing iconification, maximization and full-screen-ification of a Stage.
> 
> All variants are tested with decorated stage style.
> 
> Iconification is tested via overlaying two stages on top of one another, and then iconifying the top one - this is similar to already existing `IconifyTest.java` but it tests just the iconfication process and nothing more.
> 
> Maximization and FullScreen are both tested by creating two stages _not_ overlapping each other. After maximization/fullscreen top stage (being always on top as well) should cover the bottom stage. Moreover, FullScreen and Maximize are differentiated by checking if window decoration exists - maximized Stage will have its decoration taking space on top of the screen, whereas FullScreen one will not.
> 
> **NOTE:** on macOS I had issues with `getColor()` returning a valid color when called a second time. This only happened on macOS and with FullScreen test (others worked fine). Unfortunately I couldn't figure out why it returned (0, 0, 0, 255) or (255, 255, 255, 255). To mitigate that I moved color checks into separate `runAndWait()`-s with a small sleep between them, which seemed to help `getColor()` return proper values.
> 
> Verified to work on Windows 11, macOS and Linux.

Lukasz Kostyra has updated the pull request incrementally with three additional commits since the last revision:

 - Add pre-stage-show tests
 - Address review issues
 - Rename AttributesTest -> StageAttributesTest

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

Changes:
  - all: https://git.openjdk.org/jfx/pull/1240/files
  - new: https://git.openjdk.org/jfx/pull/1240/files/0924d43b..819144b8

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jfx&pr=1240&range=01
 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1240&range=00-01

  Stats: 478 lines in 2 files changed: 291 ins; 187 del; 0 mod
  Patch: https://git.openjdk.org/jfx/pull/1240.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1240/head:pull/1240

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


More information about the openjfx-dev mailing list