Repository navigation
Move to the paged document support in Verify 33.3 - #905
Merged
Merged
Conversation
This was referenced Oct 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Moves Verify.ImageMagick onto the source and derived targets that Verify 33.3 added for paged documents (Verify#1951), and takes the package from 3.11.0 to 4.0.0.
The converter now says which of its targets is the document and which were computed from it. Verify compares the document first, so a file derived from it is only given the benefit of its comparer while the document itself is unchanged, and DiffEngine's viewer shows the files derived from a document beneath it and accepts them with it.
It is a major version because what an existing test suite has to change is listed below.
Verifyand its adapter are pinned at 33.3.0.Migrating from 3.x
Version 4 moves to the paged document support in Verify 33.3. The options of this plugin that chose what was verified are now settings of Verify:
Initialize(ImageMagickOutputs.None)Initialize()andVerifierSettings.ExcludeDerivedTargets("png")Initialize(ImageMagickOutputs.Png)orInitialize(ImageMagickOutputs.All)Initialize().PagesToInclude(2), an extension method of this plugin.PagesToInclude(2), a member of Verify'sSettingsTaskandVerifySettingsA call to
PagesToIncludecompiles unchanged. It can now also take a delegate, and both it andExcludeDerivedTargetscan be set for one verification or, onVerifierSettings, for all of them.The page of a pdf is named by its number, which is 1 based. It was named by an index, which was 0 based and missing for a pdf with one page. A pdf also has an info file now, holding its page count:
Tests.Report#00.verified.pngTests.Report#page_0001.verified.pngTests.Report#01.verified.pngTests.Report#page_0002.verified.pngTests.Report.verified.png, of a pdf with one pageTests.Report#page_0001.verified.pngTests.Mail#Attachment.00.verified.png, of a pdf that is a target namedAttachmentTests.Mail#Attachment.page_0001.verified.pngTests.Report.verified.txt, the info fileThe
.verified.pdfis unchanged, and so are the.verified.svgand.verified.pngof an svg.Renamed snapshots show as a new file and a pending delete. Accepting both, or running once with AutoVerify, moves a test over. A page draws as it did, but ImageMagick writes the time into every png it renders, so an accepted page differs from the file it replaces by those bytes, and source control shows a rename with a small change.
Testing
Built in Release and run with the commands CI uses, against Verify 33.3.0 from nuget.org: 20 passed.