Deduplicate path separator duplicates#10646
Conversation
2d03f00 to
53fd7b0
Compare
geekosaur
left a comment
There was a problem hiding this comment.
I'm confused: is the .md file a GitHub artifact, or did you really add two changelog.d entries?
53fd7b0 to
ca61a07
Compare
Thanks for catching that mistake of mine @geekosaur. I let the Can we use a |
|
|
|
Reverting to draft while I settle some Windows versus POSIX file path issues. |
bfda13a to
14850de
Compare
Yes it was and I'll have to squash those ~70 commits before applying a merge label. |
24af359 to
ed55098
Compare
|
Label merge+no rebase is necessary when the pull request is from an organisation. |
- Manually replace path separators before anything else - Use pathSeparator instead of literal char - Use isPathSeparator predicate
ed55098 to
5d3c1a0
Compare
- Add else.project test - Use normalizeWindowsOutput - Add a changelog entry - Update expectation - Use concatOutput on needle - Include output - Align lines - Show modified output - Apply concatOutput to the needle - Show start and end of lines with ASCII ^ and $h - Can't print pilcrow so use grep char for marking end of line - Marking the start of line distinguishes "expected" intro from its content too, same for "output" - Use \n in multiline string expectation - Add NeedleHaystack - Add expectNeedleInHaystack field to NeedleHaystack - Remove 3 assert*Contains functions - Add TxContains record - Apply the txBwd transformations before display - Add displayHaystack field - Switch to using <EOL> as the marker - Sort language pragmas - Use ++ rather than cons with reversals - Rerun ParseErrorProvenance test - Add doctests for single line strings - Read exected multiline string from file - Use lineBreaksToSpaces - Add module Test.Cabal.NeedleHaystack - Redo ConditionalAndImport with multiline expectations - Add test of string expectation start and end marking - Rename encodeLf and decodeLfMarkLines - Rename original concatOutput to lineBreaksToSpaces - Add assertOutputContainsWrapped - Use multiline and wrapped assertions - DedupUsingConfigFromComplex multiline assertion - Remove redundant tests that fail on Windows - Use normalizeWindowsOutput in ConditionalAndImport - Forward conversion applied twice by mistake - Easier diff when assertOn follows assertOutputContains - Add readVerbatimFile - Have readVerbatimFile read contents strictly - Add normalizePathSeparator - Don't modify path separator for URIs - Don't normalize path with anything URI-like - Normalize expected output - Rename to normalizePathSeparators - Add an explicit export list to NeedleHaystack - Drop unlines . lines added trailing newline - Show example of normalizePathSeparators - Use local unsnoc definition to avoid CPP - Define local unlines - Satisfy fix-whitespace - Don't use <EOL> - Rename to delimitLines - Rename the changelog with *.md extension - Add a section on cabal-testsuite changes - Rename the function to readFileVerbatim - Add to contributing and cabal-testsuite's readme - Use setup for the noun - Typo s/displaying/display - Typo "can easier" - Use unsnoc from Cabal-syntax Utils.Generic - Add a note [Multiline Needles] - Remove doctests available elsewhere - Substitute encodeLf for concatOutput for assertOutputMatches
- Add oops.expect.txt - Add cabal-missing-package.expect.txt - Add hops.expect.txt - Add DedupUsingConfigFromComplex/errors.expect.txt - Add using configuration from to errors.expect.txt
5539c23 to
32b820b
Compare
|
@Mergifyio backport 3.14 |
✅ Backports have been createdDetails
|
|
@Mergifyio backport 3.14 |
✅ Backports have been createdDetails
|
|
bloody hell. |
|
@Mergifyio backport 3.14 |
✅ Backports have been createdDetails
|
|
curse you, mergify! |
Fixes #10645, a small Windows gotcha missed with #10546.
I really had to get into the weeds with this one. The
assertOutputContainsfunction was modifying the output (a test actual value) before comparision with the unmodified actual value. This change was not visible. I've added anassertOnfunction (thatassertOutputContainscalls) that takes aNeedleHaystackconfiguration for how the search, expectation and display are made. I had wanted to add a pilcrow¶for line endings but the terminal output is restricted to ASCII so I've marked line beginnings with^and line endings with$. The needle (the expected output fragment) is shown annotated this way as can the haystack (the output). The haystack is not shown annotated with line delimiters but can be.The
concatOutputfunction, I've renamed tolineBreaksToSpaces. There's more detail on thecabal-testsuitechanges in the changelog entry. One benefit of using an.mdextension forchangelog.d/pr-10646.mdis that typos are caught by CI.significance: significantin the changelog file.