Skip to content

PHPLIB-616 Continuous Matrix Testing for 4.2 era drivers #812

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

Merged
merged 2 commits into from
Mar 4, 2021

Conversation

alcaeus
Copy link
Member

@alcaeus alcaeus commented Feb 19, 2021

PHPLIB-616

This branch skips tests that fail when running the 4.2 driver against newer servers. The patch build has been updated to test 4.2 as well: https://spruce.mongodb.com/version/602f72fc9ccd4e172a60e6e8/tasks

The failing tests are tricky: these are single tests in some of the spec tests which we can't skip due to how data providers work. Skipping the entire test suite seems overkill, so I'll have to figure out another way to fix this.

@alcaeus alcaeus requested a review from jmikola February 19, 2021 21:21
@alcaeus alcaeus self-assigned this Feb 19, 2021
@jmikola
Copy link
Member

jmikola commented Feb 22, 2021

The failing tests are tricky: these are single tests in some of the spec tests which we can't skip due to how data providers work. Skipping the entire test suite seems overkill, so I'll have to figure out another way to fix this.

What is this referring to? Is the PR incomplete as-is?

@alcaeus
Copy link
Member Author

alcaeus commented Feb 23, 2021

What is this referring to? Is the PR incomplete as-is?

The PR works, but it does not fix all failing tests (which is not bad per se, but makes it harder to spot new failures if a server patch release changes something). The failing tests are hard to skip, as they are single tests from a suite of spec tests where we have no way of applying groups selectively. I have yet to try and figure out if I can get PHPUnit to apply groups to single tests from a data provider, but for the time being we can either leave failing tests in place, or skip the entire failing test suite.

@alcaeus alcaeus force-pushed the v1.5-matrix-testing branch from 9cc586b to e130249 Compare March 1, 2021 13:40
@alcaeus
Copy link
Member Author

alcaeus commented Mar 1, 2021

@jmikola upon further investigation, there's no way (currently) to add a group to a single data provider test, so I've skipped the entire retryable reads spec tests for matrix testing. I'll revisit this separately. I've also backported a fix to the spec test runner that avoids dropping the admin database, as that caused additional failures.

Tests now pass: https://spruce.mongodb.com/version/603d13a8d1fe075a9b7cf65c/tasks

Copy link
Member

@jmikola jmikola left a comment

Choose a reason for hiding this comment

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

One question about group naming that I didn't think about in #810. LGTM otherwise.

* @group matrix-testing-server-5.0-driver-4.0
* @group matrix-testing-server-5.0-driver-4.2
Copy link
Member

Choose a reason for hiding this comment

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

I realize this format dates back to https://github.com/mongodb/mongo-php-library/pull/810/files#r579294457 (already merged in v1.4), but seeing this again I wonder if it makes sense to add something to this name that communicates the tests are actually skipped for this server/driver combination.

My first impression reading this after not thinking about it for some time is that these are tests for this particular version, not incompatible tests intended to be skipped.

Maybe just prefix "exclude-" to these?

Copy link
Member Author

Choose a reason for hiding this comment

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

Adding a prefix sounds good. I'll make the change in 1.4 and merge up, fixing things along the way.

@alcaeus alcaeus merged commit 7f889f4 into mongodb:v1.5 Mar 4, 2021
@alcaeus alcaeus deleted the v1.5-matrix-testing branch March 4, 2021 12:44
alcaeus added a commit that referenced this pull request Mar 4, 2021
* v1.5:
  Rename matrix testing exclusion groups
  PHPLIB-616 Continuous Matrix Testing for 4.2 era drivers (#812)
  PHPLIB-617 Continuous Matrix Testing for 4.0 era drivers (#810)
alcaeus added a commit that referenced this pull request Mar 4, 2021
* v1.6:
  Rename matrix testing exclusion groups
  PHPLIB-616 Continuous Matrix Testing for 4.2 era drivers (#812)
  PHPLIB-617 Continuous Matrix Testing for 4.0 era drivers (#810)
alcaeus added a commit that referenced this pull request Mar 5, 2021
* v1.7:
  PHPLIB-615 Matrix testing for 4.4 era drivers (#813)
  Rename matrix testing exclusion groups
  PHPLIB-616 Continuous Matrix Testing for 4.2 era drivers (#812)
  PHPLIB-617 Continuous Matrix Testing for 4.0 era drivers (#810)
alcaeus added a commit that referenced this pull request Mar 9, 2021
* v1.8:
  Fix test failures due to wrong merge
  PHPLIB-615 Matrix testing for 4.4 era drivers (#813)
  Rename matrix testing exclusion groups
  PHPLIB-616 Continuous Matrix Testing for 4.2 era drivers (#812)
  PHPLIB-617 Continuous Matrix Testing for 4.0 era drivers (#810)
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