Skip to content
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

Intermittent "limit dropdown height to viewport" test failures in webkit #2269

Open
mollykreis opened this issue Jul 15, 2024 · 0 comments
Open
Assignees

Comments

@mollykreis
Copy link
Contributor

mollykreis commented Jul 15, 2024

🧹 Tech Debt

There are intermittent nimble-select and nimble-rich-text-mention-listbox test failures in webkit related to dropdown height :

Select with 500 options should limit dropdown height to viewport FAILED
[test-webkit:verbose] Expected false to be true.

RichTextMentionListbox should limit dropdown height to viewport FAILED
[test-concurrent:nimble-components] [test-webkit:verbose] Expected false to be true.

The tests will be disabled until this issue is resolved.

Failing runs:
https://github.com/ni/nimble/actions/runs/9914481179/job/27393640409
https://github.com/ni/nimble/actions/runs/9947647052/job/27480698021

@mollykreis mollykreis added tech debt triage New issue that needs to be reviewed labels Jul 15, 2024
rajsite pushed a commit that referenced this issue Jul 15, 2024
# Pull Request

## 🤨 Rationale

I've created #2269 to track that this
test is being disabled.

## 👩‍💻 Implementation

Disable the test on webkit & link the issue

## 🧪 Testing

N/A

## ✅ Checklist

<!--- Review the list and put an x in the boxes that apply or ~~strike
through~~ around items that don't (along with an explanation). -->

- [ ] I have updated the project documentation to reflect my changes or
determined no changes are needed.
@m-akinc m-akinc removed the triage New issue that needs to be reviewed label Jul 15, 2024
@mollykreis mollykreis changed the title Intermittent nimble-select test failure in webkit Intermittent nimble-select test failure in webkit (limit dropdown height to viewport) Jul 15, 2024
@m-akinc m-akinc changed the title Intermittent nimble-select test failure in webkit (limit dropdown height to viewport) Intermittent "limit dropdown height to viewport" test failures in webkit Jul 15, 2024
rajsite pushed a commit that referenced this issue Jul 16, 2024
# Pull Request

## 🤨 Rationale

Added to existing issue #2269 and filed new issue #2274

## 👩‍💻 Implementation

Disable the test on webkit & link the issue

## 🧪 Testing

N/A

## ✅ Checklist

- [x] I have updated the project documentation to reflect my changes or
determined no changes are needed.
@m-akinc m-akinc self-assigned this Jul 23, 2024
@jattasNI jattasNI self-assigned this Aug 16, 2024
jattasNI added a commit that referenced this issue Aug 16, 2024
# Pull Request

## 🤨 Rationale

Occasionally we've seen intermittent tests due to components being
pushed off screen by the karma-jasmine-html-reporter progress UI. While
we've attempted to eliminate those by [placing the component under test
at the top of the
page](https://github.com/ni/nimble/blob/68e220a0e2c188fb76cc1868142db1aa0eef3a3d/packages/nimble-components/src/utilities/tests/fixture.ts#L148-L153),
there is still a risk of behavior changes because the page length is
changing. That progress UI is not visible for headless CI runs anyway,
so I propose removing it.

This is inspired by #2269, #2272, #2274, but I'm planning to submit a
few different attempts to fix those in separate PRs before re-enabling
tests.

## 👩‍💻 Implementation

1. Update the dedicated karma configuration that we use for the `test`
and `test-concurrent` commands that are run on the CI for
`nimble-components` and `spright-components`. Now it uses only the
`spec` reporter (prints tests to console) and not the `kjhtml` reporter
(draws dots on the HTML page).
1. Rename the dedicated karma configuration to "headless" since it
hasn't been "verbose" for a while.
1. Updated other headless commands (`test-chrome`, `test-chrome:watch`,
etc) to use the same configuration. This means they'll start printing
skipped tests to the console instead of just failing tests. Allowed some
commands to be consolidated.
1. Considered making similar changes to karma files for other packages
but they haven't exhibited similar intermittency so it didn't seem
worthwhile.

## 🧪 Testing

- Inspected the build output and confirmed the test report is the same
as before (shows skipped tests and presumably failed tests, but not
passing ones).
- not statistically significant, but the validate step was about a
minute faster than it had been for the last few runs


## ✅ Checklist

<!--- Review the list and put an x in the boxes that apply or ~~strike
through~~ around items that don't (along with an explanation). -->

- [x] I have updated the project documentation to reflect my changes or
determined no changes are needed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Current Iteration
Development

No branches or pull requests

3 participants