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

E2E test fixing and bring back reports #9238

Merged
merged 8 commits into from
Mar 5, 2024
Merged

Conversation

farmaazon
Copy link
Contributor

@farmaazon farmaazon commented Mar 1, 2024

Pull Request Description

After investigating some errors, I found another two missing awaits in our tests. Because those are so easy to overlook, I added a lint rule which makes failure on unhandled promise (for e2e tests only).

Also, enabled HTML reports again, with traces this time, to enable closer investigation of any failure in the future. @mwu-tow added code for uploading them in GH.

Important Notes

Checklist

Please ensure that the following checklist has been satisfied before submitting the PR:

  • The documentation has been updated, if necessary.
  • [ ] Screenshots/screencasts have been attached, if there are any visual changes. For interactive or animated visual changes, a screencast is preferred.
  • All code follows the
    Scala,
    Java,
    and
    Rust
    style guides. In case you are using a language not listed above, follow the Rust style guide.
  • All code has been tested:
    • [ ] Unit tests have been written where possible.
    • [ ] If GUI codebase was changed, the GUI was tested when built using ./run ide build.

@farmaazon farmaazon added CI: Clean build required CI runners will be cleaned before and after this PR is built. CI: No changelog needed Do not require a changelog entry for this PR. -ci -gui labels Mar 1, 2024
@farmaazon farmaazon self-assigned this Mar 1, 2024
@farmaazon farmaazon marked this pull request as ready for review March 4, 2024 14:05
@@ -50,6 +57,16 @@ const conf = [
'vue/multi-word-component-names': 0,
},
},
// We must make sure our E2E tests await all steps, otherwise they're flacky.
Copy link
Contributor

Choose a reason for hiding this comment

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

typo, flaky tests

trace: 'on-first-retry',
// We have a problem with many transient failures; to investigate them, we need trace on all
// tests.
trace: 'on',
Copy link
Contributor

Choose a reason for hiding this comment

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

Could this be retain-on-first-failure?

Comment on lines +86 to +87
.instrument(span)
.boxed()
Copy link
Contributor

Choose a reason for hiding this comment

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

Why .boxed() instead of .await? Also, this whole change could probably be an #[instrument] annotation instead.

Copy link
Contributor

Choose a reason for hiding this comment

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

This is a convention to avoid unnecessary lifetime dependencies on futures — we don't want to force caller to keep arguments alive while the artifacts are uploading. To avoid spurious lifetime dependencies we avoid using async fn here, which in turn makes it impossible to use #[instrument].

See rust-lang/rust#42940

Copy link
Contributor

@somebody1234 somebody1234 left a comment

Choose a reason for hiding this comment

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

approving the saving of playwright reports

@farmaazon farmaazon added the CI: Ready to merge This PR is eligible for automatic merge label Mar 5, 2024
@mergify mergify bot merged commit ba9b7f1 into develop Mar 5, 2024
26 of 29 checks passed
@mergify mergify bot deleted the wip/farmaazon/fix-e2e-tests branch March 5, 2024 07:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-ci -gui CI: Clean build required CI runners will be cleaned before and after this PR is built. CI: No changelog needed Do not require a changelog entry for this PR. CI: Ready to merge This PR is eligible for automatic merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants