Fix cross-platfrom issues with test suite#529
Conversation
|
Ian, the risk of this PR is much lower than all the solution paths we discussed before you left. I erred on the side of fixing the test suite, without attempting cleverness, rather than implementing a strategic solution which would be a backwards incompatibility nightmare. Right now, the folders given by users, are allowed not to exist. All the common approaches validate the strings using existence, rather than say, a regex based approach. |
| split = line.split(':') | ||
| if 'win' in sys.platform: | ||
| if len(split) == 5: | ||
| drive, path, x, y, msg = split |
There was a problem hiding this comment.
Can you leave comments explaining what kind of situation would result in having 5 items? (Likewise for the elif checking for a length of 4) Bonus points for an example in the comment.
There was a problem hiding this comment.
Agreed, that will be helpful as we continue to build up the windows support and verify that use case.
|
Hi Folks, it appears your comments slipped through my inbox. I'll get to the feedback on the weekend. |
|
Merge? |
|
The changes to To avoid this being a breaking change, Then your changes to |
Can you explain why they're a breaking change? Does it break plugins or something else? |
|
No. Command line usage also breaks. The changes to the test suite show how it breaks. |
Several minor issues related to test suite inhibit a smooth development workflow on Windows.
The commits are labelled appropriately with the changes. They are independent.
Notice the '*' logic is ignored on the windows test suite. That edge case (feature) may or may not work depending on minor release of python. This is an assumption based on upstream usage. Testing for it, is more of a hassle than it's likely worth.
This was tested locally against 2.7, 3.4 and 3.5. I'm counting on travis for the rest.
I have a more strategic version of the normalize function, which I may finish later and send after this is merged.