Skip to main content

dynamo-unit-testing

Write comprehensive NUnit tests for the Dynamo codebase following Dynamo testing patterns, conventions, and architectural constraints. Use this skill when writing test methods, test classes, setting up test infrastructure, mocking dependencies, testing with .dyn files, or reviewing test code in Dynamo.

Source facts

Repository
DynamoDS/Dynamo
Last source activity
May 19, 2026 at 16:01
Detected SKILL.md language
English
Stars
2,052
Forks
681

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
3 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
dynamo-unit-testing
description
Write comprehensive NUnit tests for the Dynamo codebase following Dynamo testing patterns, conventions, and architectural constraints. Use this skill when writing test methods, test classes, setting up test infrastructure, mocking dependencies, testing with .dyn files, or reviewing test code in Dynamo.
# Dynamo Unit Testing ## When to use - Writing new test methods or test classes for Dynamo components - Setting up test infrastructure (base classes, setup/teardown) - Testing nodes, workspaces, or UI components - Working with .dyn test files or sample graphs - Reviewing existing tests for quality and patterns - Debugging test failures or flaky tests ## When not to use - General coding questions -- use dynamo-dotnet-expert instead - Architecture questions -- use dynamo-onboarding instead - PR descriptions -- use dynamo-pr-description instead ## Inputs expected Test requirements, failing functionality to test, existing code to cover, or test code to review. ## Output format Complete test classes with proper setup, test methods using Dynamo patterns, and explanations of testing approach. --- ## Workflow > 🚀 **Quick Start**: [test-patterns.md](./assets/test-patterns.md) has ready-to-use templates ### 1. Choose Your Base Class Select the appropriate test base class based on what you're testing: - **UnitTestBase** - Utilities, algorithms, no Dynamo model needed - **DynamoModelTestBase** - Nodes, workspaces, commands (most common) - **DSEvaluationUnitTestBase** - DesignScript expression evaluation ### 2. Apply Testing Standards - [Dynamo Coding Standards](https://github.com/DynamoDS/Dynamo/wiki/Coding-Standards) - [Dynamo Naming Standards](https://github.com/DynamoDS/Dynamo/wiki/Naming-Standards) ### 3. Write Focused Tests One behavior per test, descriptive names, Arrange-Act-Assert structure. ## Testing Principles - **NUnit only** - Use NUnit framework exclusively (never xUnit/MSTest) - **One behavior per test** - Each test validates exactly one scenario - **Pragmatic .dyn testing** - .dyn file tests allowed in unit categories for focused functionality ## Documentation **Assets & References:** - **[test-patterns.md](./assets/test-patterns.md)** - Base classes, code templates, common scenarios, complete examples - **[quality-checklist.md](./references/quality-checklist.md)** - Quality guidelines, anti-patterns, best practices **Related Skills:** - dynamo-dotnet-expert - dynamo-onboarding
View on GitHub