Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
thomhurst
/
TUnit
Public
Uh oh!
There was an error while loading.
Please reload this page
.
Notifications
You must be signed in to change notification settings
Fork
138
Star
4k
Code
Issues
11
Pull requests
3
Discussions
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Discussions
Actions
Projects
Security and quality
Insights
Restructure the test runner for better code coherency
- #3093
#3093
Merged
thomhurst
merged 72 commits into
main
thomhurst/TUnit:main
from
bug/3044
thomhurst/TUnit:bug/3044
Copy head branch name to clipboard
Sep 18, 2025
Conversation
Commits
72
(72)
Checks
Files changed
Merged
Restructure the test runner for better code coherency
#3093
thomhurst
merged 72 commits into
main
thomhurst/TUnit:main
from
bug/3044
thomhurst/TUnit:bug/3044
Copy head branch name to clipboard
Commits
Commits on Sep 11, 2025
Before(Class) and After(Class) appear to be parallel when in different ParallelGroups
thomhurst
committed
164fd70
View commit details
Copy full SHA for 164fd70
Browse repository at this point
feat: add ExecutionContext and TestExecutionContext for improved parallel execution handling
thomhurst
committed
01bfcd8
View commit details
Copy full SHA for 01bfcd8
Browse repository at this point
refactor: clean up whitespace and improve code readability in HookOrchestrator
thomhurst
committed
0ae6c41
View commit details
Copy full SHA for 0ae6c41
Browse repository at this point
feat: implement SequentialCoordinator for managing sequential execution contexts
thomhurst
committed
5836409
View commit details
Copy full SHA for 5836409
Browse repository at this point
fix: resolve HookOrchestrator semaphore deadlock by refactoring coordination logic
Show description for 7cb6b05
thomhurst
and
claude
committed
7cb6b05
View commit details
Copy full SHA for 7cb6b05
Browse repository at this point
fix: resolve race condition in semaphore coordination logic
Show description for 868143c
thomhurst
and
claude
committed
868143c
View commit details
Copy full SHA for 868143c
Browse repository at this point
fix: resolve hook orchestrator deadlock through improved coordination
Show description for 5e008d6
thomhurst
and
claude
committed
5e008d6
View commit details
Copy full SHA for 5e008d6
Browse repository at this point
refactor: rename RestoreContextAsyncLocal to SetAsyncLocalContext and clean up unused usings
thomhurst
committed
6b8a5ef
View commit details
Copy full SHA for 6b8a5ef
Browse repository at this point
feat: add timeout support for test execution with TimeoutHelper utility
thomhurst
committed
7dbb121
View commit details
Copy full SHA for 7dbb121
Browse repository at this point
fix: detect and handle circular dependencies in test execution
thomhurst
committed
7c63684
View commit details
Copy full SHA for 7c63684
Browse repository at this point
Commits on Sep 12, 2025
refactor: change class accessibility from public to internal for encapsulation
thomhurst
committed
cf7b9e0
View commit details
Copy full SHA for cf7b9e0
Browse repository at this point
fix: wrap hook execution in try-catch to handle exceptions and improve error reporting
thomhurst
committed
9cfad2d
View commit details
Copy full SHA for 9cfad2d
Browse repository at this point
fix: remove unused CompleteHookChain class and streamline hook processing logic
thomhurst
committed
397a3e2
View commit details
Copy full SHA for 397a3e2
Browse repository at this point
fix: generate individual files for data source helpers, hooks, and property injections
thomhurst
committed
5a6f662
View commit details
Copy full SHA for 5a6f662
Browse repository at this point
fix: implement IEquatable for multiple data model classes and improve hash code generation
thomhurst
committed
1554b24
View commit details
Copy full SHA for 1554b24
Browse repository at this point
fix: rename ITestOrchestrator to ITestCoordinator and update references
thomhurst
committed
c722088
View commit details
Copy full SHA for c722088
Browse repository at this point
fix: update context property setters to maintain synchronization across related contexts
thomhurst
committed
fddbc98
View commit details
Copy full SHA for fddbc98
Browse repository at this point
fix: refactor hook initializers and streamline test source generation
thomhurst
committed
38e8955
View commit details
Copy full SHA for 38e8955
Browse repository at this point
fix: append GUID to hook metadata and update related test file namespaces
thomhurst
committed
a0c64da
View commit details
Copy full SHA for a0c64da
Browse repository at this point
Commits on Sep 13, 2025
Merge branch 'main' into bug/3044
thomhurst
committed
680f1a9
View commit details
Copy full SHA for 680f1a9
Browse repository at this point
fix: skip execution for tests marked as skipped
thomhurst
committed
f319902
View commit details
Copy full SHA for f319902
Browse repository at this point
fix: inject properties into test instance after creation
thomhurst
committed
fd5056b
View commit details
Copy full SHA for fd5056b
Browse repository at this point
Merge branch 'main' into bug/3044 - keeping TestRunner refactoring
thomhurst
committed
53abc5b
View commit details
Copy full SHA for 53abc5b
Browse repository at this point
feat: add support for maximum parallel test execution limit
thomhurst
committed
96e9107
View commit details
Copy full SHA for 96e9107
Browse repository at this point
fix: update source generator test snapshots for restructured test runner
Show description for 26ab310
thomhurst
and
claude
committed
26ab310
View commit details
Copy full SHA for 26ab310
Browse repository at this point
fix: update line numbers in verified test files for accuracy
thomhurst
committed
efe663e
View commit details
Copy full SHA for efe663e
Browse repository at this point
fix: ensure only first test failure bubbles up with fail-fast enabled
Show description for fe027a5
thomhurst
committed
fe027a5
View commit details
Copy full SHA for fe027a5
Browse repository at this point
Fix critical hook execution bugs
Show description for 92af694
thomhurst
and
claude
committed
92af694
View commit details
Copy full SHA for 92af694
Browse repository at this point
Update public API snapshots
Show description for 7144b90
thomhurst
and
claude
committed
7144b90
View commit details
Copy full SHA for 7144b90
Browse repository at this point
Merge branch 'main' into bug/3044
thomhurst
authored
758772d
View commit details
Copy full SHA for 758772d
Browse repository at this point
fix: prevent assembly hooks from executing multiple times
Show description for c2f6163
thomhurst
committed
c2f6163
View commit details
Copy full SHA for c2f6163
Browse repository at this point
fix: handle skipped tests properly to avoid cast exceptions
Show description for 3e224ce
thomhurst
committed
3e224ce
View commit details
Copy full SHA for 3e224ce
Browse repository at this point
fix: report test run as failed when all tests are skipped
Show description for f29fe6b
thomhurst
committed
f29fe6b
View commit details
Copy full SHA for f29fe6b
Browse repository at this point
fix: correct logic for skipped test failure - only trigger when NO tests pass
Show description for 64df731
thomhurst
committed
64df731
View commit details
Copy full SHA for 64df731
Browse repository at this point
fix: ensure test run is marked as failed when all tests are skipped
thomhurst
committed
bc85647
View commit details
Copy full SHA for bc85647
Browse repository at this point
Fix skipped test detection by checking after instance creation
Show description for 60f8c59
thomhurst
and
claude
committed
60f8c59
View commit details
Copy full SHA for 60f8c59
Browse repository at this point
Fix skipped test session outcome using CloseTestSessionResult
Show description for 1e733df
claude[bot]
and
thomhurst
committed
1e733df
View commit details
Copy full SHA for 1e733df
Browse repository at this point
Commits on Sep 14, 2025
fix: remove unnecessary reference to TUnit.Assertions.dll in project file
thomhurst
committed
bd03514
View commit details
Copy full SHA for bd03514
Browse repository at this point
Merge branch 'main' into bug/3044
thomhurst
committed
136a399
View commit details
Copy full SHA for 136a399
Browse repository at this point
fix: remove return type from ExecuteTestAsync and related message creation logic
thomhurst
committed
4ddca57
View commit details
Copy full SHA for 4ddca57
Browse repository at this point
fix: remove unused parameters and clean up code in TestCoordinator and TestExecutor
thomhurst
committed
e8032ff
View commit details
Copy full SHA for e8032ff
Browse repository at this point
fix: replace ConcurrentDictionary with GetOnlyDictionary in BeforeHookTaskCache and update exception messages
thomhurst
committed
80df829
View commit details
Copy full SHA for 80df829
Browse repository at this point
fix: initialize test class instance before executing test
thomhurst
committed
322cbb3
View commit details
Copy full SHA for 322cbb3
Browse repository at this point
fix: introduce TestInitializer for better test initializer logic and SRP
thomhurst
committed
5eb9018
View commit details
Copy full SHA for 5eb9018
Browse repository at this point
fix: rename DynamicTest to AbstractDynamicTest and update references
thomhurst
committed
f6aef9b
View commit details
Copy full SHA for f6aef9b
Browse repository at this point
fix: refactor DynamicTest to AbstractDynamicTest and update related references
thomhurst
committed
36a1e7e
View commit details
Copy full SHA for 36a1e7e
Browse repository at this point
fix: update test result expectations in DynamicTests to reflect new criteria
thomhurst
committed
775f9ce
View commit details
Copy full SHA for 775f9ce
Browse repository at this point
fix: implement retry logic for test execution in RetryHelper
thomhurst
committed
b71996c
View commit details
Copy full SHA for b71996c
Browse repository at this point
fix: enhance TestInitializer to utilize EventReceiverOrchestrator for object initialization
thomhurst
committed
09c8af5
View commit details
Copy full SHA for 09c8af5
Browse repository at this point
fix: reorder hook execution to ensure BeforeEvery hooks run before Before hooks and After hooks run before AfterEvery hooks
thomhurst
committed
f6c69e0
View commit details
Copy full SHA for f6c69e0
Browse repository at this point
fix: enhance test result handling and refactor test execution flow
thomhurst
committed
81ab03a
View commit details
Copy full SHA for 81ab03a
Browse repository at this point
fix: Fix TestContext reuse in repeated tests and timing initialization
Show description for defa229
thomhurst
and
claude
committed
defa229
View commit details
Copy full SHA for defa229
Browse repository at this point
fix: enhance retry logic to reset test context and improve retry behavior
thomhurst
committed
0b36b74
View commit details
Copy full SHA for 0b36b74
Browse repository at this point
Commits on Sep 15, 2025
fix: replace GetOnlyDictionary with ThreadSafeDictionary for improved thread safety in various components
thomhurst
committed
8b8732e
View commit details
Copy full SHA for 8b8732e
Browse repository at this point
fix: refactor GetOnlyDictionary to ThreadSafeDictionary and introduce ScopedDictionary for improved thread safety and structure
thomhurst
committed
b84361c
View commit details
Copy full SHA for b84361c
Browse repository at this point
fix: refactor NotInParallel test execution to use ExecuteSequentiallyAsync for improved readability and consistency
thomhurst
committed
f8aa1dc
View commit details
Copy full SHA for f8aa1dc
Browse repository at this point
fix: refactor test scheduling to introduce ConstraintKeyScheduler for managing NotInParallel constraints
thomhurst
committed
d723dcb
View commit details
Copy full SHA for d723dcb
Browse repository at this point
fix: remove TestContext.Current assignment to improve test execution consistency
thomhurst
committed
d9c7b11
View commit details
Copy full SHA for d9c7b11
Browse repository at this point
fix: add tests for TestContext isolation to ensure context does not leak across parallel and sequential executions
thomhurst
committed
02bf19c
View commit details
Copy full SHA for 02bf19c
Browse repository at this point
fix: enhance NotInParallel execution tests with improved time handling and tuple property support
thomhurst
committed
9a53b48
View commit details
Copy full SHA for 9a53b48
Browse repository at this point
fix: optimize test grouping by removing unnecessary sorting and enhancing clarity
thomhurst
committed
b7c8bdc
View commit details
Copy full SHA for b7c8bdc
Browse repository at this point
Commits on Sep 18, 2025
fix: enhance test context handling with ClassConstructor support and improve test grouping structure
thomhurst
committed
d528008
View commit details
Copy full SHA for d528008
Browse repository at this point
fix: improve test disposal handling and enhance test grouping sorting logic
thomhurst
committed
30fdbfc
View commit details
Copy full SHA for 30fdbfc
Browse repository at this point
fix: improve test instance disposal handling to prevent resource leaks
thomhurst
committed
ae0dd34
View commit details
Copy full SHA for ae0dd34
Browse repository at this point
fix: enhance test execution order verification and improve disposal handling
thomhurst
committed
dbb37c8
View commit details
Copy full SHA for dbb37c8
Browse repository at this point
fix: enhance test execution reliability with retry logic and relaxed ordering checks
thomhurst
committed
94d0f83
View commit details
Copy full SHA for 94d0f83
Browse repository at this point
fix: update test argument types to ensure consistency with long values
thomhurst
committed
a778c42
View commit details
Copy full SHA for a778c42
Browse repository at this point
fix: improve circular dependency handling in test execution
thomhurst
committed
8b64376
View commit details
Copy full SHA for 8b64376
Browse repository at this point
Merge branch 'main' into bug/3044
thomhurst
committed
d37e4de
View commit details
Copy full SHA for d37e4de
Browse repository at this point
fix: improve cycle detection message and format error output for circular dependencies
thomhurst
committed
6fe5fe3
View commit details
Copy full SHA for 6fe5fe3
Browse repository at this point
Merge branch 'main' into bug/3044
thomhurst
committed
7c8cf0e
View commit details
Copy full SHA for 7c8cf0e
Browse repository at this point
fix: handle SkipTestException and mark test as skipped
thomhurst
committed
a700e70
View commit details
Copy full SHA for a700e70
Browse repository at this point
You can’t perform that action at this time.