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

Reduce test flakiness #202

Merged
merged 11 commits into from
Sep 24, 2024
Merged

Conversation

ChrisJohnNOAA
Copy link
Contributor

Description

This reduces flakiness of tests. The majority of fixes are focused on making some tests more lenient, particularly around how results can differ on different machines (mainly Windows vs. Linux which have multiple differences).

There is also a change to force full dataset loading during tests (EDDTestDataset.getdatasetId) to help ensure consistent behavior (and reduce differences between tests with and without a data cache).

There was a difference in how EDDTable.java set max value for datasets with/without cached data. This is fixed now to be consistent.

Zarr file loading logic was improved.

A filehandle leak (in certain circumstances when an error was thrown) was found and fixed.

Type of change

  • [ X ] Bug fix (non-breaking change which fixes an issue)

Checklist before requesting a review

  • [ X ] I have performed a self-review of my code
  • [ X ] My code follows the style guidelines of this project
  • [ X ] I have commented my code, particularly in hard-to-understand areas
  • [ X ] I have made corresponding changes to the documentation
  • [ X ] My changes generate no new warnings
  • [ X ] I have added tests that prove my fix is effective or that my feature works
  • [ X ] New and existing unit tests pass locally with my changes

ChrisJohnNOAA and others added 11 commits September 17, 2024 09:32
… in a test EDDTestDataset.get{id}() request wait for file copies/data caching to finish instead of throwing an error due to no files (or using whatever subset of files were copied). There's also a fix for metadata in EDDTable where the max value was incorrect in some circumstances when loading a dataset without a cache.

In some error cases table writers were not getting closed. This possible leak of file handles is fixed.
@ChrisJohnNOAA ChrisJohnNOAA merged commit 5a0d0c8 into ERDDAP:main Sep 24, 2024
srstsavage pushed a commit to srstsavage/erddap that referenced this pull request Sep 29, 2024
* Make tests less flaky. The biggest change for this is having datasets in a test EDDTestDataset.get{id}() request wait for file copies/data caching to finish instead of throwing an error due to no files (or using whatever subset of files were copied). There's also a fix for metadata in EDDTable where the max value was incorrect in some circumstances when loading a dataset without a cache.

In some error cases table writers were not getting closed. This possible leak of file handles is fixed.

* Fix zarr files

* Format code, set SAX parser to true for tests.

* Have tests handle differences on different machines better.

* fix check for testPmelTaoAirt

* Deflake intetgration tests on linux (and turn off the saveopendap test due to external server)

* Clean up changes relating to testing XInclude (XInclude testing/example will come later).

---------

Co-authored-by: Chris John <[email protected]>
@ChrisJohnNOAA ChrisJohnNOAA deleted the ReduceTestFlakiness branch September 30, 2024 18:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants