OpenLiberty / liberty-tools-intellij

IntelliJ IDEA extension for Liberty
https://plugins.jetbrains.com/plugin/14856-open-liberty-tools
Eclipse Public License 2.0
13 stars 26 forks source link

Create UI test to catch hover documentation bug #850

Open TrevCraw opened 4 months ago

TrevCraw commented 4 months ago

Add a new automated UI test to the UI test set to help catch the potential resurfacing of a bug like https://github.com/OpenLiberty/liberty-tools-intellij/issues/844

Before starting, investigate current UI hover tests to understand why they do not catch the bug identified in https://github.com/OpenLiberty/liberty-tools-intellij/issues/844

SuparnaSuresh commented 1 month ago

Test case passed scenario is able to reproduce using LSP4IJ nightly build - 0.0.2-20240615-013020. Test is passing for the cases where the diagnostics are available for the first hover and the second page which is blank.

https://github.com/user-attachments/assets/a46dbf0a-1cef-4abc-9396-3055cb2003d8

For the cases where will not get the message (blank) in the first page will get failed even if the expected message appears on the second page [LSP4IJ build - 0.0.2-20240614-013035].

https://github.com/user-attachments/assets/41e40e49-d277-495b-a684-5c9e812e03d1

SuparnaSuresh commented 1 month ago

The current test testMicroProfileConfigHover() does not contain the code snippet to go and check the next page of hover screen, it is directly checking the message in first page of hover screen and validating the message. So below suggestion can be considered to handle the scenario, after calling  getHoverStringData() for the first page, need to add the click action code snippet for forward button of hover screen if it is required.  Then to fetch the message for the second screen again make a call to getHoverStringData() method and can validate the same using validateHoverData().