[SERVER-26261] MongoRunner.versionIterator.iterator.toString() should not advance the iterator Created: 22/Sep/16 Updated: 19/Nov/16 Resolved: 09/Nov/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Testing Infrastructure |
| Affects Version/s: | None |
| Fix Version/s: | 3.4.0-rc3 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | David Storch | Assignee: | Max Hirschhorn |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Minor Change | ||||||||
| Sprint: | TIG 2016-10-31, TIG 2016-11-21 | ||||||||
| Participants: | |||||||||
| Description |
|
MongoRunner.versionIterator is a way to express that a test should be run for multiple binVersions. It currently exposes a single method called toString() which both gets the current value of the iterator and advances it. Instead, it should have separate peek() and next() methods for reading and advancing the value respectively. This is important because it is easy to subtly break a test in the multiVersion suite by calling toString() on the iterator. This advances the iterator and causes MongoRunner to later launch the wrong version. After this is fixed, we should be able to re-enable the following tests:
|
| Comments |
| Comment by Githook User [ 09/Nov/16 ] |
|
Author: {u'username': u'visemet', u'name': u'Max Hirschhorn', u'email': u'max.hirschhorn@mongodb.com'}Message: |
| Comment by Esha Maharishi (Inactive) [ 27/Sep/16 ] |
|
just happened to notice this: https://github.com/mongodb/mongo/blob/3.3.12/src/mongo/shell/servers.js#L122-L125 |