More API iteration
- Added IMethodInfo.GetParameters()
- Added IParameterInfo and IReflectionParameterInfo
- Added ITestCase.SkipReason
- Added ITestObserver<T>
- Updated XunitTestCase to support DisplayName and SkipReason
- Added several new mocks of the reflection abstractions
- Started Executor2 (enumeration)
- Started Executor2Wrapper (enumeration)
- Brought over MockAssembly for acceptance tests
- Brought over AcceptanceTestInNewAppDomain
Added TraitAttribute and support for it to XunitTestCase
Made Executor2 more testable. Moved some tests from Executor2Wrapper to Executor2. Introduced a background-threaded message bus to Executor2.
Added source line information to test discovery
Replaced ExecutorWrapper with a controller pattern
- IXunitController is a single xUnit.net version controller
- IXunitControllerFactory is the factory for detecting xUnit.net versions and creating controllers
- AppDomainXunitController is a base class used by controllers which run test frameworks in separate app domains
- Xunit2Controller is the implementation of IXunitController for xunit2.dll
- XunitFrontController encapsulates support for various versions of xUnit.net via the factories
Removed Executor2 in favor of directly using ITestFramework instances
Created skeleton Xunit1Controller based on code from ExecutorWrapper
Started implementing the test running for Xunit2Controller
More cleanup around test running
- Moved running of tests cases to XunitTestCase.Run()
- Made objects returned by Reflector2 into MBRO objects
- Moved the end-to-end tests to Xunit2AcceptanceTests
Remove ITestObserver
Add IDisposable support to XunitTestCase
Add support for BeforeAfterTestAttribute on test methods and test classes
Checkpoint, implementing TdNet runner
Ported over Assert, exceptions, and tests
- Ported Assert (& exceptions) to xunit2
- Split assertions into partial classes based on logical groupings
- Moved CollectionAssert and ExceptionAssert to xunit2
- Fixed issue with TdNet runner and nested inner classes
- Fixed inconsistency around "Xxx() Failure" vs. "Xxx() failure"
- Rename Reflector2 to Reflector
- Fix bugs in Reflector with non-serializable attribute data
- Fix bugs in TdNet runner with embedded test classes
- Reorganized & reviewed the tests for Assert to match the new file structure in xunit2
Deleted ExecutorTests (commented out)
Tests for ResultVisitor in TdNet runner
Added more tests for xunit.runner.tdnet
Split discovery from execution in test frameworks