Improveconstraints#1176
Conversation
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.
|
Thanks for your patience @OsirisTerje! Reviewing this now |
SeanKilleen
left a comment
There was a problem hiding this comment.
I think once the Claude plan is deleted this can be merged. Really nice work on this @OsirisTerje!
| @@ -0,0 +1,289 @@ | |||
| # NUnit Constraints Documentation Improvement Plan | |||
There was a problem hiding this comment.
This needs to be deleted since it's just the claude plan.
Fixes #1175