Improveconstraints#1176
Open
OsirisTerje wants to merge 9 commits intomasterfrom
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Updates NUnit constraint documentation to address #1175 by standardizing constraint pages (UIDs + consistent sections), adding missing/clarifying docs, and introducing compilable snippet-based examples referenced from the docs.
Changes:
- Added new snippet test files under
docs/snippets/Snippets.NUnit/Constraints/and wired docs to reference them via[!code-csharp]. - Standardized constraint doc pages with DocFX
uid: constraint-...front matter and restructured content (Usage/Modifiers/Examples/Notes/See Also). - Added new documentation pages for async constraint usage and
Contains/Does.Containrouting, plus updated TOC and xref links.
Reviewed changes
Copilot reviewed 82 out of 82 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| docs/snippets/Snippets.NUnit/Constraints/TypeConstraintSnippets.cs | Adds executable snippet examples for type-related constraints. |
| docs/snippets/Snippets.NUnit/Constraints/StringConstraintSnippets.cs | Adds executable snippet examples for string constraints. |
| docs/snippets/Snippets.NUnit/Constraints/SpecialConstraintSnippets.cs | Adds executable snippet examples for special constraints (e.g., delayed, any-of). |
| docs/snippets/Snippets.NUnit/Constraints/PathConstraintSnippets.cs | Adds executable snippet examples for path constraints. |
| docs/snippets/Snippets.NUnit/Constraints/DictionaryConstraintSnippets.cs | Adds executable snippet examples for dictionary constraints. |
| docs/snippets/Snippets.NUnit/Constraints/CompoundConstraintSnippets.cs | Adds executable snippet examples for compound constraints (And/Or/Not). |
| docs/snippets/Snippets.NUnit/Constraints/ComparisonConstraintSnippets.cs | Adds executable snippet examples for comparison/boolean/throws/contains routing examples. |
| docs/snippets/Snippets.NUnit/Constraints/CollectionConstraintSnippets.cs | Adds executable snippet examples for collection constraints. |
| docs/articles/nunit/writing-tests/constraints/XmlSerializableConstraint.md | Adds standardized uid front matter. |
| docs/articles/nunit/writing-tests/constraints/WhiteSpaceConstraint.md | Adds uid, rewrites content, and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/UniqueItemsConstraint.md | Adds uid, rewrites content, and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/TrueConstraint.md | Adds uid, expands guidance/notes, references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/toc.yml | Adds new pages + adds missing constraint pages to constraints TOC. |
| docs/articles/nunit/writing-tests/constraints/ThrowsNothingConstraint.md | Adds uid, rewrites, references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/ThrowsConstraint.md | Standardizes uid, reorganizes usage/modifiers/examples and updates references. |
| docs/articles/nunit/writing-tests/constraints/SubstringConstraint.md | Adds uid, clarifies usage/modifiers, references snippets, links to Contains routing. |
| docs/articles/nunit/writing-tests/constraints/SubPathConstraint.md | Adds uid and switches examples to snippet include. |
| docs/articles/nunit/writing-tests/constraints/StartsWithConstraint.md | Adds uid, restructures, references snippets. |
| docs/articles/nunit/writing-tests/constraints/SomeItemsConstraint.md | Standardizes uid, rewrites structure, references snippets and adds notes/links. |
| docs/articles/nunit/writing-tests/constraints/SamePathOrUnderConstraint.md | Adds uid and switches examples to snippet include. |
| docs/articles/nunit/writing-tests/constraints/SamePathConstraint.md | Adds uid and switches examples to snippet include. |
| docs/articles/nunit/writing-tests/constraints/SameAsConstraint.md | Standardizes uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/ReusableConstraint.md | Adds standardized uid front matter. |
| docs/articles/nunit/writing-tests/constraints/RegexConstraint.md | Adds uid, restructures, references snippets and adds pattern examples. |
| docs/articles/nunit/writing-tests/constraints/RangeConstraint.md | Adds uid, restructures, references snippets, adds notes/see-also. |
| docs/articles/nunit/writing-tests/constraints/PropertyExistsConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/PropertyConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/OrConstraint.md | Adds uid, rewrites and references snippet examples, clarifies precedence. |
| docs/articles/nunit/writing-tests/constraints/NullConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/NotConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/NoItemConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/NaNConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/MultipleOfConstraint.md | New doc page for Is.MultipleOf, Is.Even, Is.Odd with snippet reference. |
| docs/articles/nunit/writing-tests/constraints/LessThanOrEqualConstraint.md | Adds uid, restructures, references snippets, adds notes/see-also. |
| docs/articles/nunit/writing-tests/constraints/LessThanConstraint.md | Adds uid, restructures, references snippets, adds notes/see-also. |
| docs/articles/nunit/writing-tests/constraints/InstanceOfTypeConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/GreaterThanOrEqualConstraint.md | Adds uid, restructures, references snippets, adds notes/see-also. |
| docs/articles/nunit/writing-tests/constraints/GreaterThanConstraint.md | Adds uid, restructures, references snippets, adds notes/see-also. |
| docs/articles/nunit/writing-tests/constraints/FileOrDirectoryExistsConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/FalseConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/ExactTypeConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/ExactCountConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/EqualConstraint.md | Standardizes uid value. |
| docs/articles/nunit/writing-tests/constraints/EndsWithConstraint.md | Adds uid, restructures, references snippets. |
| docs/articles/nunit/writing-tests/constraints/EmptyStringConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/EmptyDirectoryConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/EmptyConstraint.md | Adds standardized uid front matter. |
| docs/articles/nunit/writing-tests/constraints/EmptyCollectionConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/DictionaryContainsValueConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/DictionaryContainsKeyValuePairConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/DictionaryContainsKeyConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/DelayedConstraint.md | Adds uid, rewrites and references snippet examples (including fluent time syntax). |
| docs/articles/nunit/writing-tests/constraints/DefaultConstraint.md | Adds standardized uid front matter. |
| docs/articles/nunit/writing-tests/constraints/ContainsHelper.md | New helper page documenting Contains.* syntax helper. |
| docs/articles/nunit/writing-tests/constraints/ContainsConstraint.md | New page documenting Does.Contain routing behavior and modifiers. |
| docs/articles/nunit/writing-tests/constraints/Constraints.md | Adds links to new topic pages and updates constraint lists. |
| docs/articles/nunit/writing-tests/constraints/CollectionSupersetConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/CollectionSubsetConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/CollectionOrderedConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/CollectionEquivalentConstraint.md | Adds uid and expands examples/notes. |
| docs/articles/nunit/writing-tests/constraints/BinarySerializableConstraint.md | Adds standardized uid front matter. |
| docs/articles/nunit/writing-tests/constraints/AttributeExistsConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/AttributeConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/AsyncConstraints.md | New page documenting patterns for async constraints and best practices. |
| docs/articles/nunit/writing-tests/constraints/AssignableToConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/AssignableFromConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/AnyOfConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/constraints/AndConstraint.md | Adds uid, rewrites and references snippet examples, clarifies precedence. |
| docs/articles/nunit/writing-tests/constraints/AllItemsConstraint.md | Adds uid, rewrites and references snippet examples. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.ThrowsAsync.md | Updates xref to new ThrowsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.Throws.md | Updates xref to new ThrowsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.DoesNotThrowAsync.md | Updates xref to new ThrowsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.DoesNotThrow.md | Updates xref to new ThrowsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.CatchAsync.md | Updates xref to new ThrowsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.Catch.md | Updates xref to new ThrowsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.AreSame.md | Updates xref to new SameAsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.AreNotSame.md | Updates xref to new SameAsConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.AreNotEqual.md | Updates xref to new EqualConstraint UID. |
| docs/articles/nunit/writing-tests/assertions/classic-assertions/Assert.AreEqual.md | Updates xref to new EqualConstraint UID. |
| .claude/skills/constraint-documentation/skill.md | Adds a documented template/guidelines for constraint documentation updates. |
| .claude/settings.local.json | Expands allowed Bash command patterns for local Claude tooling. |
| .claude/plans/constraints-improvement-plan.md | Adds/records the constraint documentation improvement plan and progress. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Arhell
approved these changes
May 8, 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.
Fixes #1175