Skip to content

8280948: Write a test to verify that typing 'Enter' key generates ActionEvent on focused Button in Windows #7296

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 6 commits into from

Conversation

manukumarvs
Copy link
Member

@manukumarvs manukumarvs commented Feb 1, 2022

Write a regression test for JDK-4659800.
This test checks whether typing 'Enter' key generates ActionEvent on focused Button or not, in Windows and Windows Classic Look And Feels in Windows platform.
This test is run 10 times on windows and it passed all the times.


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed

Issue

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/7296/head:pull/7296
$ git checkout pull/7296

Update a local copy of the PR:
$ git checkout pull/7296
$ git pull https://git.openjdk.java.net/jdk pull/7296/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 7296

View PR using the GUI difftool:
$ git pr show -t 7296

Using diff file

Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/7296.diff

@bridgekeeper
Copy link

bridgekeeper bot commented Feb 1, 2022

👋 Welcome back mvs! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk openjdk bot added the rfr Pull request is ready for review label Feb 1, 2022
@openjdk
Copy link

openjdk bot commented Feb 1, 2022

@manukumarvs The following label will be automatically applied to this pull request:

  • client

When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command.

@openjdk openjdk bot added the client client-libs-dev@openjdk.org label Feb 1, 2022
@mlbridge
Copy link

mlbridge bot commented Feb 1, 2022

Webrevs

@manukumarvs
Copy link
Member Author

manukumarvs commented Feb 1, 2022

@pankaj-bansal Can you please review it.

@manukumarvs manukumarvs changed the title 8280948: [TESTBUG] Colocate tonga test bug4659800.java to a regression test 8280948: [TESTBUG] Write a regression test for JDK-4659800 Feb 2, 2022
@aivanov-jdk
Copy link
Member

I must be missing something but JDK-4659800 talks about the Enter key, not the Space key: Hitting enter on focused JButton no longer causes action.

It looks you're testing a completely different thing.

Yes, Space key always activates the focused button. Whether Enter key activates focused button is L&F dependent. The test case in JDK-4659800 changes the L&F to WindowsLookAndFeel therefore Enter key is expected to cause the ActionEvent; if you leave the default MetalLookAndFeel or use NimbusLookAndFeel, pressing the Enter key should not send the ActionEvent.

Copy link
Member

@aivanov-jdk aivanov-jdk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please take into account all the comments in #7278 as well as my comment about Enter vs Space.

@manukumarvs
Copy link
Member Author

manukumarvs commented Feb 3, 2022

I must be missing something but JDK-4659800 talks about the Enter key, not the Space key: Hitting enter on focused JButton no longer causes action.

It looks you're testing a completely different thing.

Yes, Space key always activates the focused button. Whether Enter key activates focused button is L&F dependent. The test case in JDK-4659800 changes the L&F to WindowsLookAndFeel therefore Enter key is expected to cause the ActionEvent; if you leave the default MetalLookAndFeel or use NimbusLookAndFeel, pressing the Enter key should not send the ActionEvent.

Yea, you are correct, I first tried with ENTER key and it was failing with MetalLookAndFeel and NimbusLookAndFeel, so I thought of changing it to SPACE so that it will pass in all LnFs, may be I can add that use-case also here, or it would be a separate test case by itself?

@aivanov-jdk
Copy link
Member

aivanov-jdk commented Feb 3, 2022

Yea, you are correct, I first tried with key and it was failing with MetalLookAndFeel or use NimbusLookAndFeel, so I thought of changing it to so that it pass in all LnFs, may be I can add that use-case also here, or it would be a separate test case by itself?

But then it's not a regression test for JDK-4659800, it's a new test.

I'm not sure it's worth testing that pressing Space key on a button sends ActionEvent. I think it should be covered by an existing test, probably in JCK, but I haven't checked one exists.

If you like, you can create two separate tests: SpaceKeyActivatesButton and EnterKeyActivatesButton where the latter is limited to Windows platform and Windows and Windows Classic Look-and-Feel.

In recent years, test files are usually given meaningful names rather than bugNNNN.

@openjdk
Copy link

openjdk bot commented Feb 4, 2022

@manukumarvs This change now passes all automated pre-integration checks.

ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.

After integration, the commit message for the final commit will be:

8280948: [TESTBUG] Write a regression test for JDK-4659800

Reviewed-by: aivanov

You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.

At the time when this comment was updated there had been 70 new commits pushed to the master branch:

  • 7207f2a: Merge
  • 01f93dd: 8279385: [test] Adjust sun/security/pkcs12/KeytoolOpensslInteropTest.java after 8278344
  • 3d926dd: 8277795: ldap connection timeout not honoured under contention
  • 51b53a8: 8280913: Create a regression test for JRootPane.setDefaultButton() method
  • 46c6c6f: 8281043: Intrinsify recursive ObjectMonitor locking for PPC64
  • c936e70: 8280593: [PPC64, S390] redundant allocation of MacroAssembler in StubGenerator ctor
  • 63e11cf: 8280970: Cleanup dead code in java.security.Provider
  • e44dc63: 8271055: Crash during deoptimization with "assert(bb->is_reachable()) failed: getting result from unreachable basicblock" with -XX:+VerifyStack
  • b6935df: 8251505: Use of types in compiler shared code should be consistent.
  • 130cf46: 4750574: (se spec) Selector spec should clarify calculation of select return value
  • ... and 60 more: https://git.openjdk.java.net/jdk/compare/268880b471eed54535927fba953347160f447fcd...master

As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@aivanov-jdk) but any other Committer may sponsor as well.

➡️ To flag this PR as ready for integration with the above commit message, type /integrate in a new comment. (Afterwards, your sponsor types /sponsor in a new comment to perform the integration).

@openjdk openjdk bot added the ready Pull request is ready to be integrated label Feb 4, 2022
@manukumarvs
Copy link
Member Author

/integrate

@openjdk openjdk bot added the sponsor Pull request is ready to be sponsored label Feb 4, 2022
@openjdk
Copy link

openjdk bot commented Feb 4, 2022

@manukumarvs
Your change (at version f1fecef) is now ready to be sponsored by a Committer.

@aivanov-jdk
Copy link
Member

/sponsor

@openjdk
Copy link

openjdk bot commented Feb 4, 2022

Going to push as commit 66b2c3b.
Since your change was applied there have been 70 commits pushed to the master branch:

  • 7207f2a: Merge
  • 01f93dd: 8279385: [test] Adjust sun/security/pkcs12/KeytoolOpensslInteropTest.java after 8278344
  • 3d926dd: 8277795: ldap connection timeout not honoured under contention
  • 51b53a8: 8280913: Create a regression test for JRootPane.setDefaultButton() method
  • 46c6c6f: 8281043: Intrinsify recursive ObjectMonitor locking for PPC64
  • c936e70: 8280593: [PPC64, S390] redundant allocation of MacroAssembler in StubGenerator ctor
  • 63e11cf: 8280970: Cleanup dead code in java.security.Provider
  • e44dc63: 8271055: Crash during deoptimization with "assert(bb->is_reachable()) failed: getting result from unreachable basicblock" with -XX:+VerifyStack
  • b6935df: 8251505: Use of types in compiler shared code should be consistent.
  • 130cf46: 4750574: (se spec) Selector spec should clarify calculation of select return value
  • ... and 60 more: https://git.openjdk.java.net/jdk/compare/268880b471eed54535927fba953347160f447fcd...master

Your commit was automatically rebased without conflicts.

@openjdk openjdk bot added the integrated Pull request has been integrated label Feb 4, 2022
@openjdk openjdk bot closed this Feb 4, 2022
@openjdk openjdk bot removed ready Pull request is ready to be integrated rfr Pull request is ready for review sponsor Pull request is ready to be sponsored labels Feb 4, 2022
@openjdk
Copy link

openjdk bot commented Feb 4, 2022

@aivanov-jdk @manukumarvs Pushed as commit 66b2c3b.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

@manukumarvs manukumarvs changed the title 8280948: [TESTBUG] Write a regression test for JDK-4659800 8280948: Write a regression test for JDK-4659800 Feb 20, 2022
@manukumarvs manukumarvs deleted the 8280948 branch May 4, 2022 07:48
@manukumarvs manukumarvs changed the title 8280948: Write a regression test for JDK-4659800 8280948: Write a test to verify that typing 'Enter' key generates ActionEvent on focused Button in Windows Oct 28, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client client-libs-dev@openjdk.org integrated Pull request has been integrated
Development

Successfully merging this pull request may close these issues.

3 participants