Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8038631

Create wrapper for awt.Robot with additional functionality


    • Type: Enhancement
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 9
    • Fix Version/s: 9
    • Component/s: client-libs
    • Labels:
    • Subcomponent:
    • Resolved In Build:


      Presently for testing of JDK client we use test suites of two kinds, historically called regression and functional (internal). In JDK9 we plan an attempt to unify them and ultimately get rid of the functional suites.

      One of the first technical problems in this refactoring attempt is a multitude of the java.awt.Robot wrappers. There are some really elaborate libraries enhansing Robot which all we cannot and should not port to jtreg.

      Fortunately, test writers almost never use complex features of these wrappers. So here's our plan:
      (1) describe the real practice of the robot use in the functional tests (please don't worry, that's out of scope of this request);
      (2) write a minimal useful RobotWrapper extending java.awt.Robot;
      (3) start functional tests refactoring;
      (4) cautiously move enhancements to the java.awt.Robot trying not to break backward compatibility of thousands existing tests. For instance, waitForIdle should use realSync() but there definitely
      are plenty of tests using it on EDT: or maybe not -- we should spent some time for background research in parallel with (3).


          Issue Links



              • Assignee:
                dermashov Dmitriy Ermashov (Inactive)
                dermashov Dmitriy Ermashov (Inactive)
              • Votes:
                0 Vote for this issue
                2 Start watching this issue


                • Created: