It also introduces a kind of hook-system, where hooks are executed during execution of TcUnit-Runner.
These hooks are for example:
after solution has been loaded
before build
after build
before activating configuration
after running tests
...
A plugin must implement these hooks, e.g. IAfterSolutionLoadedHook.
Additionally, configuration of these hooks is done via a dotfile named .TcUnitRunner.
Since plugins are optional and only available on runtime, they could help to mitigate issues regarding newer TwinCAT versions/funktions, like
24 or #25.
I've marked this PR as 'draft', to discuss if this proposal is useful, or introduces other unforeseen issues/problems.
This PR adds plugin/hook system to TcUnit-Runner, and The plugins are loaded via Managed Extensibility Framework (MEF), see https://learn.microsoft.com/en-us/dotnet/framework/mef/
It also introduces a kind of hook-system, where hooks are executed during execution of TcUnit-Runner. These hooks are for example:
A plugin must implement these hooks, e.g.
IAfterSolutionLoadedHook
. Additionally, configuration of these hooks is done via a dotfile named.TcUnitRunner
.Since plugins are optional and only available on runtime, they could help to mitigate issues regarding newer TwinCAT versions/funktions, like
24 or #25.
I've marked this PR as 'draft', to discuss if this proposal is useful, or introduces other unforeseen issues/problems.
Thanks in advance!