Add diffToolBuilder
for building complex diff command messages
#840
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds
SnapshotTesting.diffToolBuilder
closure for building complex diff tool command messages or clickable urls in Xcode. It takes the existing and the failure snapshot as arguments, and thus complex commands which are not just prefixed with the existingdiffTool
can be created.For instance, to open Differati from a clickable link in Xcode the following
diffToolBuilder
closure can be provided, which URL encodes the paths (in case they contain spaces etc) and builds an url openable by the app:Which gives us an Xcode test failure bubble like this, with a clickable url that takes us directly into the diffing app:
Or it can be used to build a complex diff command with the path arguments aren't simply a suffix, as requested in #780: