Unpacking Software Livestream

Join our monthly Unpacking Software livestream to hear about the latest news, chat and opinion on packaging, software deployment and lifecycle management!

Learn More

Chocolatey Product Spotlight

Join the Chocolatey Team on our regular monthly stream where we put a spotlight on the most recent Chocolatey product releases. You'll have a chance to have your questions answered in a live Ask Me Anything format.

Learn More

Chocolatey Coding Livestream

Join us for the Chocolatey Coding Livestream, where members of our team dive into the heart of open source development by coding live on various Chocolatey projects. Tune in to witness real-time coding, ask questions, and gain insights into the world of package management. Don't miss this opportunity to engage with our team and contribute to the future of Chocolatey!

Learn More

Calling All Chocolatiers! Whipping Up Windows Automation with Chocolatey Central Management

Webinar from
Wednesday, 17 January 2024

We are delighted to announce the release of Chocolatey Central Management v0.12.0, featuring seamless Deployment Plan creation, time-saving duplications, insightful Group Details, an upgraded Dashboard, bug fixes, user interface polishing, and refined documentation. As an added bonus we'll have members of our Solutions Engineering team on-hand to dive into some interesting ways you can leverage the new features available!

Watch On-Demand
Chocolatey Community Coffee Break

Join the Chocolatey Team as we discuss all things Community, what we do, how you can get involved and answer your Chocolatey questions.

Watch The Replays
Chocolatey and Intune Overview

Webinar Replay from
Wednesday, 30 March 2022

At Chocolatey Software we strive for simple, and teaching others. Let us teach you just how simple it could be to keep your 3rd party applications updated across your devices, all with Intune!

Watch On-Demand
Chocolatey For Business. In Azure. In One Click.

Livestream from
Thursday, 9 June 2022

Join James and Josh to show you how you can get the Chocolatey For Business recommended infrastructure and workflow, created, in Azure, in around 20 minutes.

Watch On-Demand
The Future of Chocolatey CLI

Livestream from
Thursday, 04 August 2022

Join Paul and Gary to hear more about the plans for the Chocolatey CLI in the not so distant future. We'll talk about some cool new features, long term asks from Customers and Community and how you can get involved!

Watch On-Demand
Hacktoberfest Tuesdays 2022

Livestreams from
October 2022

For Hacktoberfest, Chocolatey ran a livestream every Tuesday! Re-watch Cory, James, Gary, and Rain as they share knowledge on how to contribute to open-source projects such as Chocolatey CLI.

Watch On-Demand

Downloads:

9,933

Downloads of v 1.3.2:

238

Last Update:

07 Apr 2020

Package Maintainer(s):

Software Author(s):

  • Charlie Poole

Tags:

testcentric nunit gui runner test centric testing tdd

TestCentric Runner for NUnit

This is not the latest version of TestCentric Runner for NUnit available.

  • 1
  • 2
  • 3

1.3.2 | Updated: 07 Apr 2020

Downloads:

9,933

Downloads of v 1.3.2:

238

Maintainer(s):

Software Author(s):

  • Charlie Poole

TestCentric Runner for NUnit 1.3.2

This is not the latest version of TestCentric Runner for NUnit available.

Legal Disclaimer: Neither this package nor Chocolatey Software, Inc. are affiliated with or endorsed by Charlie Poole. The inclusion of Charlie Poole trademark(s), if any, upon this webpage is solely to identify Charlie Poole goods or services and not for commercial purposes.

  • 1
  • 2
  • 3

Some Checks Have Failed or Are Not Yet Complete

Not All Tests Have Passed


Validation Testing Passed


Verification Testing Passed

Details

Scan Testing Resulted in Flagged:

This package was submitted (and approved) prior to automated virus scanning integration into the package moderation processs.

We recommend clicking the "Details" link to make your own decision on installing this package.

Details
Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install TestCentric Runner for NUnit, run the following command from the command line or from PowerShell:

>

To upgrade TestCentric Runner for NUnit, run the following command from the command line or from PowerShell:

>

To uninstall TestCentric Runner for NUnit, run the following command from the command line or from PowerShell:

>

Deployment Method:

NOTE

This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)


2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade testcentric-gui -y --source="'INTERNAL REPO URL'" --version="'1.3.2'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:


choco upgrade testcentric-gui -y --source="'INTERNAL REPO URL'" --version="'1.3.2'" 
$exitCode = $LASTEXITCODE

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0
}

Exit $exitCode

- name: Install testcentric-gui
  win_chocolatey:
    name: testcentric-gui
    version: '1.3.2'
    source: INTERNAL REPO URL
    state: present

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.


chocolatey_package 'testcentric-gui' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '1.3.2'
end

See docs at https://docs.chef.io/resource_chocolatey_package.html.


cChocoPackageInstaller testcentric-gui
{
    Name     = "testcentric-gui"
    Version  = "1.3.2"
    Source   = "INTERNAL REPO URL"
}

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.


package { 'testcentric-gui':
  ensure   => '1.3.2',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',
}

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.


4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Package Approved

This package was approved as a trusted package on 07 Apr 2020.

Description

The TestCentric Runner for NUnit (TestCentric) is a GUI runner aimed at eventually supporting a range of .NET testing frameworks. In the 1.x release series, we are concentrating on support of NUnit tests. The user interface is based on the layout and feature set of the of the original NUnit GUI, with the internals modified so as to run NUnit 3 tests.

This package includes the both the standard TestCentric GUI runner (testcentric.exe) and an experiental runner (tc-next.exe) which is available for... wait for it... experimentation! The package incorporates the TestCentric test engine, a modified version of the NUnit engine.

Features

Most features of the NUnit V2 Gui runner are supported. See CHANGES.txt for more detailed information.

NUnit engine extensions are supported but no extensions are bundled with the GUI itself. They must be installed separately using chocolatey. In particular, to run NUnit V2 tests, you should install the NUnit V2 Framework Driver Extension.

Warning: When using the GUI chocolatey package, only chocolatey-packaged extensions will be availble. This is by design.

Prerequisites

TestCentric requires .NET 4.5 or later in order to function, although your tests may run in a separate process under other framework versions.

Projects with tests to be run under TestCentric must already have some version of the NUnit framework installed separtely.


tools\agents\net20\app.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
   Nunit-agent only runs under .NET 2.0 or higher. 
   The setting    useLegacyV2RuntimeActivationPolicy only applies 
   under .NET 4.0 and permits use of mixed mode assemblies, 
   which would otherwise not load correctly. 
  -->
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <!--
     Nunit-agent is normally run by the console or gui
     runners and not independently. In normal usage, 
     the runner specifies which runtime should be used.
     
     Do NOT add any supportedRuntime elements here, 
     since they may prevent the runner from controlling 
     the runtime that is used!
    -->
  </startup>

  <runtime>
    <!-- Ensure that test exceptions don't crash NUnit -->
    <legacyUnhandledExceptionPolicy enabled="1" />

    <!--
     Since legacyUnhandledExceptionPolicy keeps the console from being killed even though an NUnit framework
     test worker thread is killed, this is needed to prevent a hang. NUnit framework can only handle these
     exceptions when this config element is present. (Or if future versions of NUnit framework drop support
     for partial trust which would enable it to use [HandleProcessCorruptedStateExceptions].)
    -->
    <legacyCorruptedStateExceptionsPolicy enabled="true" />

    <!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
    <loadFromRemoteSources enabled="true" />

    <!-- Enable reading source information from Portable and Embedded PDBs when running applications -->
    <!-- built against previous .NET Framework versions on .NET Framework 4.7.2 -->
    <AppContextSwitchOverrides value="Switch.System.Diagnostics.IgnorePortablePDBsInStackTraces=false" />
  </runtime>
  
</configuration>
tools\agents\net20\testcentric-agent-x86.exe
md5: 234338A60DB239C7B7103BD486E69833 | sha1: 3193FAAB879AF9C505670E5535A7AF27D77EC982 | sha256: 934FCA1B6C8900CA9342828E49516AB28E2705DF3DB318C9CFFECE27F6D2FFAA | sha512: BAE0EB9750F9C7AAB67147B0EE47E6489F69FB2997FCE63112D0F871BDFDCDCA8D454A6DE54B77D48178DF02064510D600D6C172FE88E09A6843433395F13710
tools\agents\net20\testcentric-agent-x86.exe.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
   Nunit-agent only runs under .NET 2.0 or higher. 
   The setting    useLegacyV2RuntimeActivationPolicy only applies 
   under .NET 4.0 and permits use of mixed mode assemblies, 
   which would otherwise not load correctly. 
  -->
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <!--
     Nunit-agent is normally run by the console or gui
     runners and not independently. In normal usage, 
     the runner specifies which runtime should be used.
     
     Do NOT add any supportedRuntime elements here, 
     since they may prevent the runner from controlling 
     the runtime that is used!
    -->
  </startup>

  <runtime>
    <!-- Ensure that test exceptions don't crash NUnit -->
    <legacyUnhandledExceptionPolicy enabled="1" />

    <!--
     Since legacyUnhandledExceptionPolicy keeps the console from being killed even though an NUnit framework
     test worker thread is killed, this is needed to prevent a hang. NUnit framework can only handle these
     exceptions when this config element is present. (Or if future versions of NUnit framework drop support
     for partial trust which would enable it to use [HandleProcessCorruptedStateExceptions].)
    -->
    <legacyCorruptedStateExceptionsPolicy enabled="true" />

    <!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
    <loadFromRemoteSources enabled="true" />

    <!-- Enable reading source information from Portable and Embedded PDBs when running applications -->
    <!-- built against previous .NET Framework versions on .NET Framework 4.7.2 -->
    <AppContextSwitchOverrides value="Switch.System.Diagnostics.IgnorePortablePDBsInStackTraces=false" />
  </runtime>
  
</configuration>
tools\agents\net20\testcentric-agent-x86.pdb
 
tools\agents\net20\testcentric-agent.exe
md5: D5FDFBD7FC7A42BBB3777A0C579CE944 | sha1: 4D9A587A769DE4A21DCA1600658070E91B7F7E06 | sha256: 391A2040CB5EB31504307015F08B00F9B9758C7D2DA673169B9167F0F3ADD076 | sha512: B6498651285784E0FBAEB5EA957E0E8D7822EA4C6356CB5F75AED67C09CD2E5B1A1F4F750A92F34DC7C72DFB4BF28CCECDD07725BF448E4C5ABBD1A9F4DF1D87
tools\agents\net20\testcentric-agent.exe.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
   Nunit-agent only runs under .NET 2.0 or higher. 
   The setting    useLegacyV2RuntimeActivationPolicy only applies 
   under .NET 4.0 and permits use of mixed mode assemblies, 
   which would otherwise not load correctly. 
  -->
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <!--
     Nunit-agent is normally run by the console or gui
     runners and not independently. In normal usage, 
     the runner specifies which runtime should be used.
     
     Do NOT add any supportedRuntime elements here, 
     since they may prevent the runner from controlling 
     the runtime that is used!
    -->
  </startup>

  <runtime>
    <!-- Ensure that test exceptions don't crash NUnit -->
    <legacyUnhandledExceptionPolicy enabled="1" />

    <!--
     Since legacyUnhandledExceptionPolicy keeps the console from being killed even though an NUnit framework
     test worker thread is killed, this is needed to prevent a hang. NUnit framework can only handle these
     exceptions when this config element is present. (Or if future versions of NUnit framework drop support
     for partial trust which would enable it to use [HandleProcessCorruptedStateExceptions].)
    -->
    <legacyCorruptedStateExceptionsPolicy enabled="true" />

    <!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
    <loadFromRemoteSources enabled="true" />

    <!-- Enable reading source information from Portable and Embedded PDBs when running applications -->
    <!-- built against previous .NET Framework versions on .NET Framework 4.7.2 -->
    <AppContextSwitchOverrides value="Switch.System.Diagnostics.IgnorePortablePDBsInStackTraces=false" />
  </runtime>
  
</configuration>
tools\agents\net20\testcentric-agent.pdb
 
tools\agents\net20\testcentric.engine.api.dll
md5: D03622C10D9D7635B51FCE9A3E3D8EC0 | sha1: 03607C61ECAEBDB4A4F673F7AC84AFF61E6F657D | sha256: C11358113A942DFEF9762C3CE7234CE46EB8E941EF9A79F73AC57BA08DD91E88 | sha512: 4102A9C83D8F43DDDF884B7E5A8EED1B623F5C31E7162359A1E817D1EA599834607A67C37C2AF94279596A9D8F077D8522483BD75B0809735772F23E0F3307DC
tools\agents\net20\testcentric.engine.api.pdb
 
tools\agents\net20\testcentric.engine.api.xml
<?xml version="1.0"?>
<doc>
    <assembly>
        <name>testcentric.engine.api</name>
    </assembly>
    <members>
        <member name="T:TestCentric.Engine.NUnitEngineException">
            <summary>
            NUnitEngineException is thrown when the engine has been
            called with improper values or when a particular facility
            is not available.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineException.#ctor(System.String)">
            <summary>
            Construct with a message
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineException.#ctor(System.String,System.Exception)">
            <summary>
            Construct with a message and inner exception
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization constructor
            </summary>
        </member>
        <member name="T:TestCentric.Engine.NUnitEngineNotFoundException">
            <summary>
            The exception that is thrown if a valid test engine is not found
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineNotFoundException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.NUnitEngineNotFoundException"/> class.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineNotFoundException.#ctor(System.Version)">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.NUnitEngineNotFoundException"/> class.
            </summary>
            <param name="minVersion">The minimum version.</param>
        </member>
        <member name="T:TestCentric.Engine.NUnitEngineUnloadException">
            <summary>
            NUnitEngineUnloadException is thrown when a test run has completed successfully
            but one or more errors were encountered when attempting to unload
            and shut down the test run cleanly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.String)">
            <summary>
            Construct with a message
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.String,System.Exception)">
            <summary>
            Construct with a message and inner exception
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.Collections.Generic.ICollection{System.Exception})">
            <summary>
            Construct with a message and a collection of exceptions.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization constructor.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.NUnitEngineUnloadException.AggregatedExceptions">
            <summary>
            Gets the collection of exceptions .
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.ExtensionAttribute">
            <summary>
            The ExtensionAttribute is used to identify a class that is intended
            to serve as an extension.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.ExtensionAttribute.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.Extensibility.ExtensionAttribute"/> class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.Path">
            <summary>
            A unique string identifying the ExtensionPoint for which this Extension is 
            intended. This is an optional field provided NUnit is able to deduce the
            ExtensionPoint from the Type of the extension class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.Description">
            <summary>
            An optional description of what the extension does.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.Enabled">
            <summary>
            Flag indicating whether the extension is enabled.
            </summary>
            <value><c>true</c> if enabled; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.EngineVersion">
            <summary>
            The minimum Engine version for which this extension is designed
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.ExtensionPointAttribute">
            <summary>
            ExtensionPointAttribute is used at the assembly level to identify and
            document any ExtensionPoints supported by the assembly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.ExtensionPointAttribute.#ctor(System.String,System.Type)">
            <summary>
            Construct an ExtensionPointAttribute
            </summary>
            <param name="path">A unique string identifying the extension point.</param>
            <param name="type">The required Type of any extension that is installed at this extension point.</param>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPointAttribute.Path">
            <summary>
            The unique string identifying this ExtensionPoint. This identifier
            is typically formatted as a path using '/' and the set of extension 
            points is sometimes viewed as forming a tree.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPointAttribute.Type">
            <summary>
            The required Type (usually an interface) of any extension that is 
            installed at this ExtensionPoint.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPointAttribute.Description">
            <summary>
            An optional description of the purpose of the ExtensionPoint
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute">
            <summary>
            The ExtensionPropertyAttribute is used to specify named properties for an extension.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute.#ctor(System.String,System.String)">
            <summary>
            Construct an ExtensionPropertyAttribute
            </summary>
            <param name="name">The name of the property</param>
            <param name="value">The property value</param>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute.Name">
            <summary>
            The name of the property.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute.Value">
            <summary>
            The property value
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IDriverFactory">
            <summary>
            Interface implemented by a Type that knows how to create a driver for a test assembly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IDriverFactory.IsSupportedTestFramework(System.Reflection.AssemblyName)">
            <summary>
            Gets a flag indicating whether a given AssemblyName
            represents a test framework supported by this factory.
            </summary>
            <param name="reference">An AssemblyName referring to the possible test framework.</param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IDriverFactory.GetDriver(System.AppDomain,System.Reflection.AssemblyName)">
            <summary>
            Gets a driver for a given test assembly and a framework
            which the assembly is already known to reference.
            </summary>
            <param name="domain">The domain in which the assembly will be loaded</param>
            <param name="reference">An AssemblyName referring to the test framework.</param>
            <returns></returns>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IExtensionNode">
            <summary>
            The IExtensionNode interface is implemented by a class that represents a
            single extension being installed on a particular extension point.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.TypeName">
            <summary>
            Gets the full name of the Type of the extension object.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.Enabled">
            <summary>
            Gets a value indicating whether this <see cref="T:TestCentric.Engine.Extensibility.IExtensionNode"/> is enabled.
            </summary>
            <value><c>true</c> if enabled; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.Path">
            <summary>
            Gets the unique string identifying the ExtensionPoint for which
            this Extension is intended. This identifier may be supplied by the attribute
            marking the extension or deduced by NUnit from the Type of the extension class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.Description">
            <summary>
            Gets an optional description of what the extension does.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.TargetFramework">
            <summary>
            The TargetFramework of the extension assembly.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.PropertyNames">
            <summary>
            Gets a collection of the names of all this extension's properties
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IExtensionNode.GetValues(System.String)">
            <summary>
            Gets a collection of the values of a particular named property
            If none are present, returns an empty enumerator.
            </summary>
            <param name="name">The property name</param>
            <returns>A collection of values</returns>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.AssemblyPath">
            <summary>
            The path to the assembly implementing this extension.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.AssemblyVersion">
            <summary>
            The version of the assembly implementing this extension.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IExtensionPoint">
            <summary>
            An ExtensionPoint represents a single point in the TestEngine
            that may be extended by user addins and extensions.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.Path">
            <summary>
            Gets the unique path identifying this extension point.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.Description">
            <summary>
            Gets the description of this extension point. May be null.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.TypeName">
            <summary>
            Gets the FullName of the Type required for any extension to be installed at this extension point.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.Extensions">
            <summary>
            Gets an enumeration of IExtensionNodes for extensions installed on this extension point.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IFrameworkDriver">
            <summary>
            The IFrameworkDriver interface is implemented by a class that
            is able to use an external framework to explore or run tests
            under the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IFrameworkDriver.ID">
            <summary>
            Gets and sets the unique identifier for this driver,
            used to ensure that test ids are unique across drivers.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.Load(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
            <summary>
            Loads the tests in an assembly.
            </summary>
            <returns>An Xml string representing the loaded test</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.CountTestCases(System.String)">
            <summary>
            Count the test cases that would be executed.
            </summary>
            <param name="filter">An XML string representing the TestFilter to use in counting the tests</param>
            <returns>The number of test cases counted</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.Run(TestCentric.Engine.ITestEventListener,System.String)">
            <summary>
            Executes the tests in an assembly.
            </summary>
            <param name="listener">An ITestEventHandler that receives progress notices</param>
            <param name="filter">A XML string representing the filter that controls which tests are executed</param>
            <returns>An Xml string representing the result</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.Explore(System.String)">
            <summary>
            Returns information about the tests in an assembly.
            </summary>
            <param name="filter">An XML string representing the filter that controls which tests are included</param>
            <returns>An Xml string representing the tests</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.StopRun(System.Boolean)">
            <summary>
            Cancel the ongoing test run. If no  test is running, the call is ignored.
            </summary>
            <param name="force">If true, cancel any ongoing test threads, otherwise wait for them to complete.</param>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IProject">
            <summary>
            Interface for the various project types that the engine can load.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IProject.ProjectPath">
            <summary>
            Gets the path to the file storing this project, if any.
            If the project has not been saved, this is null.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IProject.ActiveConfigName">
            <summary>
            Gets the active configuration, as defined
            by the particular project.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IProject.ConfigNames">
            <summary>
            Gets a list of the configs for this project
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProject.GetTestPackage">
            <summary>
            Gets a test package for the primary or active
            configuration within the project. The package 
            includes all the assemblies and any settings
            specified in the project format.
            </summary>
            <returns>A TestPackage</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProject.GetTestPackage(System.String)">
            <summary>
            Gets a TestPackage for a specific configuration
            within the project. The package includes all the
            assemblies and any settings specified in the 
            project format.
            </summary>
            <param name="configName">The name of the config to use</param>
            <returns>A TestPackage for the named configuration.</returns>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IProjectLoader">
            <summary>
            The IProjectLoader interface is implemented by any class
            that knows how to load projects in a specific format.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProjectLoader.CanLoadFrom(System.String)">
            <summary>
            Returns true if the file indicated is one that this
            loader knows how to load.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>True if the loader knows how to load this file, otherwise false</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProjectLoader.LoadFrom(System.String)">
            <summary>
            Loads a project of a known format.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>An IProject interface to the loaded project or null if the project cannot be loaded</returns>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IResultWriter">
            <summary>
            Common interface for objects that process and write out test results
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IResultWriter.CheckWritability(System.String)">
            <summary>
            Checks if the output path is writable. If the output is not
            writable, this method should throw an exception.
            </summary>
            <param name="outputPath"></param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IResultWriter.WriteResultFile(System.Xml.XmlNode,System.String)">
            <summary>
            Writes result to the specified output path.
            </summary>
            <param name="resultNode">XmlNode for the result</param>
            <param name="outputPath">Path to which it should be written</param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IResultWriter.WriteResultFile(System.Xml.XmlNode,System.IO.TextWriter)">
            <summary>
            Writes result to a TextWriter.
            </summary>
            <param name="resultNode">XmlNode for the result</param>
            <param name="writer">TextWriter to which it should be written</param>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute">
            <summary>
            TypeExtensionPointAttribute is used to bind an extension point
            to a class or interface.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.#ctor(System.String)">
            <summary>
            Construct a TypeExtensionPointAttribute, specifying the path.
            </summary>
            <param name="path">A unique string identifying the extension point.</param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.#ctor">
            <summary>
            Construct an TypeExtensionPointAttribute, without specifying the path.
            The extension point will use a path constructed based on the interface
            or class to which the attribute is applied.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.Path">
            <summary>
            The unique string identifying this ExtensionPoint. This identifier
            is typically formatted as a path using '/' and the set of extension 
            points is sometimes viewed as forming a tree.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.Description">
            <summary>
            An optional description of the purpose of the ExtensionPoint
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IAvailableRuntimes">
            <summary>
            Interface that returns a list of available runtime frameworks.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IAvailableRuntimes.AvailableRuntimes">
            <summary>
            Gets a list of available runtime frameworks.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IExtensionService">
            <summary>
            The IExtensionService interface allows a runner to manage extensions.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IExtensionService.ExtensionPoints">
            <summary>
            Gets an enumeration of all ExtensionPoints in the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IExtensionService.Extensions">
            <summary>
            Gets an enumeration of all installed Extensions.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IExtensionService.GetExtensionPoint(System.String)">
            <summary>
            Get an ExtensionPoint based on its unique identifying path.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IExtensionService.GetExtensionNodes(System.String)">
            <summary>
            Get an enumeration of ExtensionNodes based on their identifying path.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IExtensionService.EnableExtension(System.String,System.Boolean)">
            <summary>
            Enable or disable an extension
            </summary>
            <param name="typeName"></param>
            <param name="enabled"></param>
        </member>
        <member name="T:TestCentric.Engine.ILogger">
            <summary>
            Interface for logging within the engine
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Error(System.String)">
            <summary>
            Logs the specified message at the error level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Error(System.String,System.Object[])">
            <summary>
            Logs the specified message at the error level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Warning(System.String)">
            <summary>
            Logs the specified message at the warning level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Warning(System.String,System.Object[])">
            <summary>
            Logs the specified message at the warning level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Info(System.String)">
            <summary>
            Logs the specified message at the info level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Info(System.String,System.Object[])">
            <summary>
            Logs the specified message at the info level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Debug(System.String)">
            <summary>
            Logs the specified message at the debug level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Debug(System.String,System.Object[])">
            <summary>
            Logs the specified message at the debug level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="T:TestCentric.Engine.ILogging">
            <summary>
            Interface to abstract getting loggers
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ILogging.GetLogger(System.String)">
            <summary>
            Gets the logger.
            </summary>
            <param name="name">The name of the logger to get.</param>
            <returns></returns>
        </member>
        <member name="T:TestCentric.Engine.InternalTraceLevel">
            <summary>
            InternalTraceLevel is an enumeration controlling the
            level of detailed presented in the internal log.
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Default">
            <summary>
            Use the default settings as specified by the user.
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Off">
            <summary>
            Do not display any trace messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Error">
            <summary>
            Display Error messages only
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Warning">
            <summary>
            Display Warning level and higher messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Info">
            <summary>
            Display informational and higher messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Debug">
            <summary>
            Display debug messages and higher - i.e. all messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Verbose">
            <summary>
            Display debug messages and higher - i.e. all messages
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IProjectService">
            <summary>
            The IProjectService interface is implemented by ProjectService.
            It knows how to load projects in a specific format and can expand
            TestPackages based on projects.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IProjectService.CanLoadFrom(System.String)">
            <summary>
            Returns true if the file indicated is one that this
            loader knows how to load.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>True if the loader knows how to load this file, otherwise false</returns>
        </member>
        <member name="M:TestCentric.Engine.IProjectService.LoadFrom(System.String)">
            <summary>
            Loads a project of a known format.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>An IProject interface to the loaded project or null if the project cannot be loaded</returns>
        </member>
        <member name="M:TestCentric.Engine.IProjectService.ExpandProjectPackage(TestCentric.Engine.TestPackage)">
            <summary>
            Expands a TestPackage based on a known project format, populating it
            with the project contents and any settings the project provides. 
            Note that the package file path must be checked to ensure that it is
            a known project format before calling this method.
            </summary>
            <param name="package">The TestPackage to be expanded</param>
        </member>
        <member name="T:TestCentric.Engine.IResultService">
            <summary>
            IResultWriterService provides result writers for a specified
            well-known format.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IResultService.Formats">
            <summary>
            Gets an array of the available formats
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IResultService.GetResultWriter(System.String,System.Object[])">
            <summary>
            Gets a ResultWriter for a given format and set of arguments.
            </summary>
            <param name="format">The name of the format to be used</param>
            <param name="args">A set of arguments to be used in constructing the writer or null if non arguments are needed</param>
            <returns>An IResultWriter</returns>
        </member>
        <member name="T:TestCentric.Engine.IRuntimeFramework">
            <summary>
            Interface implemented by objects representing a runtime framework.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.Id">
            <summary>
            Gets the inique Id for this runtime, such as "net-4.5"
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.DisplayName">
            <summary>
            Gets the display name of the framework, such as ".NET 4.5"
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.FrameworkVersion">
            <summary>
            Gets the framework version: usually contains two components, Major
            and Minor, which match the corresponding CLR components, but not always.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.ClrVersion">
            <summary>
            Gets the Version of the CLR for this framework
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.Profile">
            <summary>
            Gets a string representing the particular profile installed,
            or null if there is no profile. Currently. the only defined 
            values are Full and Client.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IRuntimeFrameworkService">
            <summary>
            Implemented by a type that provides information about the
            current and other available runtimes.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IRuntimeFrameworkService.IsAvailable(System.String)">
            <summary>
            Returns true if the runtime framework represented by
            the string passed as an argument is available.
            </summary>
            <param name="framework">A string representing a framework, like 'net-4.0'</param>
            <returns>True if the framework is available, false if unavailable or nonexistent</returns>
        </member>
        <member name="M:TestCentric.Engine.IRuntimeFrameworkService.SelectRuntimeFramework(TestCentric.Engine.TestPackage)">
             <summary>
             Selects a target runtime framework for a TestPackage based on
             the settings in the package and the assemblies themselves.
             The package RuntimeFramework setting may be updated as a 
             result and the selected runtime is returned.
            
             Note that if a package has subpackages, the subpackages may run on a different
             framework to the top-level package. In future, this method should
             probably not return a simple string, and instead require runners
             to inspect the test package structure, to find all desired frameworks.
             </summary>
             <param name="package">A TestPackage</param>
             <returns>The selected RuntimeFramework</returns>
        </member>
        <member name="T:TestCentric.Engine.ServiceStatus">
            <summary>
            Enumeration representing the status of a service
            </summary>
        </member>
        <member name="F:TestCentric.Engine.ServiceStatus.Stopped">
            <summary>Service was never started or has been stopped</summary>
        </member>
        <member name="F:TestCentric.Engine.ServiceStatus.Started">
            <summary>Started successfully</summary>
        </member>
        <member name="F:TestCentric.Engine.ServiceStatus.Error">
            <summary>Service failed to start and is unavailable</summary>
        </member>
        <member name="T:TestCentric.Engine.IService">
            <summary>
            The IService interface is implemented by all Services. Although it
            is extensible, it does not reside in the Extensibility namespace
            because it is so widely used by the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IService.ServiceContext">
            <summary>
            The ServiceContext
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IService.Status">
            <summary>
            Gets the ServiceStatus of this service
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IService.StartService">
            <summary>
            Initialize the Service
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IService.StopService">
            <summary>
            Do any cleanup needed before terminating the service
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IServiceLocator">
            <summary>
            IServiceLocator allows clients to locate any NUnit services
            for which the interface is referenced. In normal use, this
            linits it to those services using interfaces defined in the 
            testcentric.engine.api assembly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IServiceLocator.GetService``1">
            <summary>
            Return a specified type of service
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IServiceLocator.GetService(System.Type)">
            <summary>
            Return a specified type of service
            </summary>
        </member>
        <member name="T:TestCentric.Engine.ITestEngine">
            <summary>
            ITestEngine represents an instance of the test engine.
            Clients wanting to discover, explore or run tests start
            require an instance of the engine, which is generally
            acquired from the TestEngineActivator class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestEngine.Services">
            <summary>
            Gets the IServiceLocator interface, which gives access to
            certain services provided by the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestEngine.WorkDirectory">
            <summary>
            Gets and sets the directory path used by the engine for saving files.
            Some services may ignore changes to this path made after initialization.
            The default value is the current directory.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestEngine.InternalTraceLevel">
            <summary>
            Gets and sets the InternalTraceLevel used by the engine. Changing this
            setting after initialization will have no effect. The default value
            is the value saved in the NUnit settings.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestEngine.Initialize">
             <summary>
             Initialize the engine. This includes initializing mono addins,
             setting the trace level and creating the standard set of services
             used in the Engine.
            
             This interface is not normally called by user code. Programs linking
             only to the testcentric.engine.api assembly are given a
             pre-initialized instance of TestEngine. Programs
             that link directly to testcentric.engine usually do so
             in order to perform custom initialization.
             </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestEngine.GetRunner(TestCentric.Engine.TestPackage)">
            <summary>
            Returns a test runner instance for use by clients in discovering,
            exploring and executing tests.
            </summary>
            <param name="package">The TestPackage for which the runner is intended.</param>
            <returns>An ITestRunner.</returns>
        </member>
        <member name="T:TestCentric.Engine.ITestEventListener">
            <summary>
            The ITestListener interface is used to receive notices of significant
            events while a test is running. Its single method accepts an Xml string,
            which may represent any event generated by the test framework, the driver
            or any of the runners internal to the engine. Use of Xml means that
            any driver and framework may add additional events and the engine will
            simply pass them on through this interface.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestEventListener.OnTestEvent(System.String)">
            <summary>
            Handle a progress report or other event.
            </summary>
            <param name="report">An XML progress report.</param>
        </member>
        <member name="T:TestCentric.Engine.ITestFilterBuilder">
            <summary>
            Interface to a TestFilterBuilder, which is used to create TestFilters
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterBuilder.AddTest(System.String)">
            <summary>
            Add a test to be selected
            </summary>
            <param name="fullName">The full name of the test, as created by NUnit</param>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterBuilder.SelectWhere(System.String)">
            <summary>
            Specify what is to be included by the filter using a where clause.
            </summary>
            <param name="whereClause">A where clause that will be parsed by NUnit to create the filter.</param>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterBuilder.GetFilter">
            <summary>
            Get a TestFilter constructed according to the criteria specified by the other calls.
            </summary>
            <returns>A TestFilter.</returns>
        </member>
        <member name="T:TestCentric.Engine.ITestFilterService">
            <summary>
            The TestFilterService provides builders that can create TestFilters
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterService.GetTestFilterBuilder">
            <summary>
            Get an uninitialized TestFilterBuilder
            </summary>
        </member>
        <member name="T:TestCentric.Engine.ITestRun">
            <summary>
            The ITestRun class represents an ongoing test run.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestRun.Result">
            <summary>
            Get the result of the test.
            </summary>
            <returns>An XmlNode representing the test run result</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRun.Wait(System.Int32)">
            <summary>
            Blocks the current thread until the current test run completes
            or the timeout is reached
            </summary>
            <param name="timeout">A <see cref="T:System.Int32"/> that represents the number of milliseconds to wait or -1 milliseconds to wait indefinitely. </param>
            <returns>True if the run completed</returns>
        </member>
        <member name="T:TestCentric.Engine.ITestRunner">
            <summary>
            Interface implemented by all test runners.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestRunner.IsTestRunning">
            <summary>
            Get a flag indicating whether a test is running
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Load">
            <summary>
            Load a TestPackage for possible execution
            </summary>
            <returns>An XmlNode representing the loaded package.</returns>
            <remarks>
            This method is normally optional, since Explore and Run call
            it automatically when necessary. The method is kept in order
            to make it easier to convert older programs that use it.
            </remarks>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Unload">
            <summary>
            Unload any loaded TestPackage. If none is loaded,
            the call is ignored.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Reload">
            <summary>
            Reload the current TestPackage
            </summary>
            <returns>An XmlNode representing the loaded package.</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.CountTestCases(TestCentric.Engine.TestFilter)">
            <summary>
            Count the test cases that would be run under
            the specified filter.
            </summary>
            <param name="filter">A TestFilter</param>
            <returns>The count of test cases</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Run(TestCentric.Engine.ITestEventListener,TestCentric.Engine.TestFilter)">
            <summary>
            Run the tests in the loaded TestPackage and return a test result. The tests
            are run synchronously and the listener interface is notified as it progresses.
            </summary>
            <param name="listener">The listener that is notified as the run progresses</param>
            <param name="filter">A TestFilter used to select tests</param>
            <returns>An XmlNode giving the result of the test execution</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.RunAsync(TestCentric.Engine.ITestEventListener,TestCentric.Engine.TestFilter)">
            <summary>
            Start a run of the tests in the loaded TestPackage. The tests are run
            asynchronously and the listener interface is notified as it progresses.
            </summary>
            <param name="listener">The listener that is notified as the run progresses</param>
            <param name="filter">A TestFilter used to select tests</param>
            <returns></returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.StopRun(System.Boolean)">
            <summary>
            Cancel the ongoing test run. If no  test is running, the call is ignored.
            </summary>
            <param name="force">If true, cancel any ongoing test threads, otherwise wait for them to complete.</param>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Explore(TestCentric.Engine.TestFilter)">
            <summary>
            Explore a loaded TestPackage and return information about the tests found.
            </summary>
            <param name="filter">The TestFilter to be used in selecting tests to explore.</param>
            <returns>An XmlNode representing the tests found.</returns>
        </member>
        <member name="T:TestCentric.Engine.TestEngineActivator">
            <summary>
            TestEngineActivator creates an instance of the test engine and returns an ITestEngine interface.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestEngineActivator.CreateInstance(System.Boolean)">
            <summary>
            Create an instance of the test engine.
            </summary>
            <param name="unused">This parameter is no longer used but has not been removed to ensure API compatibility.</param>
            <exception cref="T:TestCentric.Engine.NUnitEngineNotFoundException">Thrown when a test engine of the required minimum version is not found</exception>
            <returns>An <see cref="T:TestCentric.Engine.ITestEngine"/></returns>
        </member>
        <member name="M:TestCentric.Engine.TestEngineActivator.CreateInstance(System.Version,System.Boolean)">
            <summary>
            Create an instance of the test engine with a minimum version.
            </summary>
            <param name="minVersion">The minimum version of the engine to return inclusive.</param>
            <param name="unused">This parameter is no longer used but has not been removed to ensure API compatibility.</param>
            <exception cref="T:TestCentric.Engine.NUnitEngineNotFoundException">Thrown when a test engine of the required minimum version is not found</exception>
            <returns>An <see cref="T:TestCentric.Engine.ITestEngine"/></returns>
        </member>
        <member name="T:TestCentric.Engine.TestFilter">
            <summary>
            Abstract base for all test filters. A filter is represented
            by an XmlNode with &lt;filter&gt; as its topmost element.
            In the console runner, filters serve only to carry this
            XML representation, as all filtering is done by the engine.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestFilter.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.TestFilter"/> class.
            </summary>
            <param name="xmlText">The XML text that specifies the filter.</param>
        </member>
        <member name="F:TestCentric.Engine.TestFilter.Empty">
            <summary>
            The empty filter - one that always passes.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestFilter.Text">
            <summary>
            Gets the XML representation of this filter as a string.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.TestPackage">
            <summary>
            TestPackage holds information about a set of test files to
            be loaded by a TestRunner. Each TestPackage represents
            tests for one or more test files. TestPackages may be named
            or anonymous, depending on the constructor used.
            
            Upon construction, a package is given an ID (string), which
            remains unchanged for the lifetime of the TestPackage instance.
            The package ID is passed to the test framework for use in generating
            test IDs.
            
            A runner that reloads test assemblies and wants the ids to remain stable
            should avoid creating a new package but should instead use the original
            package, changing settings as needed. This gives the best chance for the
            tests in the reloaded assembly to match those originally loaded.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.#ctor(System.String)">
            <summary>
            Construct a named TestPackage, specifying a file path for
            the assembly or project to be used.
            </summary>
            <param name="filePath">The file path.</param>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.#ctor(System.Collections.Generic.IList{System.String})">
            <summary>
            Construct an anonymous TestPackage that wraps test files.
            </summary>
            <param name="testFiles"></param>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.ID">
            <summary>
            Every test package gets a unique ID used to prefix test IDs within that package.
            </summary>
            <remarks>
            The generated ID is only unique for packages created within the same application domain.
            For that reason, NUnit pre-creates all test packages that will be needed.
            </remarks>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.SetID(System.String)">
            <summary>
            Set the ID on a package that has already been created. This is separate from the
            ID property itself because it's a temporary addition, necessitated by the way
            projects work. It allows us to reload a project using a new config without changing
            the test IDs. A broad engine API change may be needed to handle this correctly.
            </summary>
            <param name="id"></param>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.Name">
            <summary>
            Gets the name of the package
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.FullName">
            <summary>
            Gets the path to the file containing tests. It may be
            an assembly or a recognized project type.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.SubPackages">
            <summary>
            Gets the list of SubPackages contained in this package
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.Settings">
            <summary>
            Gets the settings dictionary for this package.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.AddSubPackage(TestCentric.Engine.TestPackage)">
            <summary>
            Add a subproject to the package.
            </summary>
            <param name="subPackage">The subpackage to be added</param>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.AddSetting(System.String,System.Object)">
            <summary>
            Add a setting to a package and all of its subpackages.
            </summary>
            <param name="name">The name of the setting</param>
            <param name="value">The value of the setting</param>
            <remarks>
            Once a package is created, subpackages may have been created
            as well. If you add a setting directly to the Settings dictionary
            of the package, the subpackages are not updated. This method is
            used when the settings are intended to be reflected to all the
            subpackages under the package.
            </remarks>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.GetSetting``1(System.String,``0)">
            <summary>
            Return the value of a setting or a default.
            </summary>
            <param name="name">The name of the setting</param>
            <param name="defaultSetting">The default value</param>
            <returns></returns>
        </member>
        <member name="T:TestCentric.Engine.TestSelectionParserException">
            <summary>
            TestSelectionParserException is thrown when an error
            is found while parsing the selection expression.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestSelectionParserException.#ctor(System.String)">
            <summary>
            Construct with a message
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestSelectionParserException.#ctor(System.String,System.Exception)">
            <summary>
            Construct with a message and inner exception
            </summary>
            <param name="message"></param>
            <param name="innerException"></param>
        </member>
        <member name="M:TestCentric.Engine.TestSelectionParserException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization constructor
            </summary>
        </member>
    </members>
</doc>
tools\agents\net20\testcentric.engine.core.dll
md5: 82B3BC67AE8401D0FE42F8362A806B1A | sha1: DF29A2025B0C719C1BD2C98D87F7C7FFE3B8B90B | sha256: 628F7384153F4B9DA4BD97616CDC7DFE17E45CB1D05686F95430ABFC395E4028 | sha512: 93EF596D967A1F5AED1762D1AB1413D65D2EC986B44398029C2F9E56C25609C274ADABBF951991C0E09DC53C760F76C097443F6E8694E7BFA15F0393F635B882
tools\agents\net20\testcentric.engine.core.pdb
 
tools\agents\net20\testcentric.engine.metadata.dll
tools\agents\net20\testcentric.engine.metadata.pdb
tools\agents\net40\app.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
   Nunit-agent only runs under .NET 2.0 or higher. 
   The setting    useLegacyV2RuntimeActivationPolicy only applies 
   under .NET 4.0 and permits use of mixed mode assemblies, 
   which would otherwise not load correctly. 
  -->
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <!--
     Nunit-agent is normally run by the console or gui
     runners and not independently. In normal usage, 
     the runner specifies which runtime should be used.
     
     Do NOT add any supportedRuntime elements here, 
     since they may prevent the runner from controlling 
     the runtime that is used!
    -->
  </startup>

  <runtime>
    <!-- Ensure that test exceptions don't crash NUnit -->
    <legacyUnhandledExceptionPolicy enabled="1" />

    <!--
     Since legacyUnhandledExceptionPolicy keeps the console from being killed even though an NUnit framework
     test worker thread is killed, this is needed to prevent a hang. NUnit framework can only handle these
     exceptions when this config element is present. (Or if future versions of NUnit framework drop support
     for partial trust which would enable it to use [HandleProcessCorruptedStateExceptions].)
    -->
    <legacyCorruptedStateExceptionsPolicy enabled="true" />

    <!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
    <loadFromRemoteSources enabled="true" />

    <!-- Enable reading source information from Portable and Embedded PDBs when running applications -->
    <!-- built against previous .NET Framework versions on .NET Framework 4.7.2 -->
    <AppContextSwitchOverrides value="Switch.System.Diagnostics.IgnorePortablePDBsInStackTraces=false" />
  </runtime>
  
</configuration>
tools\agents\net40\testcentric-agent-x86.exe
md5: 50DAF3BD528E4F39000325737787E896 | sha1: 91C28B072810F243CCF1B396BFF4BBC3295E555C | sha256: 54ED20609C85D5DF796A02937FDE336045EA0CE7956392B558567A08E7337E1A | sha512: 0B01E6A960E4D099CD687AAD403EDFDAE6179E45E0D6EEFAFEC16E93526DDA7A6C065920EB79D98B861388D3C0460D49532E2B3B380D9010DD9F7743D5A9910F
tools\agents\net40\testcentric-agent-x86.exe.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
   Nunit-agent only runs under .NET 2.0 or higher. 
   The setting    useLegacyV2RuntimeActivationPolicy only applies 
   under .NET 4.0 and permits use of mixed mode assemblies, 
   which would otherwise not load correctly. 
  -->
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <!--
     Nunit-agent is normally run by the console or gui
     runners and not independently. In normal usage, 
     the runner specifies which runtime should be used.
     
     Do NOT add any supportedRuntime elements here, 
     since they may prevent the runner from controlling 
     the runtime that is used!
    -->
  </startup>

  <runtime>
    <!-- Ensure that test exceptions don't crash NUnit -->
    <legacyUnhandledExceptionPolicy enabled="1" />

    <!--
     Since legacyUnhandledExceptionPolicy keeps the console from being killed even though an NUnit framework
     test worker thread is killed, this is needed to prevent a hang. NUnit framework can only handle these
     exceptions when this config element is present. (Or if future versions of NUnit framework drop support
     for partial trust which would enable it to use [HandleProcessCorruptedStateExceptions].)
    -->
    <legacyCorruptedStateExceptionsPolicy enabled="true" />

    <!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
    <loadFromRemoteSources enabled="true" />

    <!-- Enable reading source information from Portable and Embedded PDBs when running applications -->
    <!-- built against previous .NET Framework versions on .NET Framework 4.7.2 -->
    <AppContextSwitchOverrides value="Switch.System.Diagnostics.IgnorePortablePDBsInStackTraces=false" />
  </runtime>
  
</configuration>
tools\agents\net40\testcentric-agent-x86.pdb
 
tools\agents\net40\testcentric-agent.exe
md5: D95056FD6721D4CA28F27503487B942E | sha1: 548BD8F3AB1BB43FD8AAF7BEBA9DFCDE8E250DD3 | sha256: 601E972E858099BE5564FB31A19C7070B86B3F23DABEF1D5F3E16A9BC6344543 | sha512: E44DB4A0B110589924296E5FBC1565972F047ADECB7CB01BF8DE5136B8800EF24E96C5480D6F76403524FF83D213E5589E8856C1CA7F14F8E05C4B27C6FF097F
tools\agents\net40\testcentric-agent.exe.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
   Nunit-agent only runs under .NET 2.0 or higher. 
   The setting    useLegacyV2RuntimeActivationPolicy only applies 
   under .NET 4.0 and permits use of mixed mode assemblies, 
   which would otherwise not load correctly. 
  -->
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <!--
     Nunit-agent is normally run by the console or gui
     runners and not independently. In normal usage, 
     the runner specifies which runtime should be used.
     
     Do NOT add any supportedRuntime elements here, 
     since they may prevent the runner from controlling 
     the runtime that is used!
    -->
  </startup>

  <runtime>
    <!-- Ensure that test exceptions don't crash NUnit -->
    <legacyUnhandledExceptionPolicy enabled="1" />

    <!--
     Since legacyUnhandledExceptionPolicy keeps the console from being killed even though an NUnit framework
     test worker thread is killed, this is needed to prevent a hang. NUnit framework can only handle these
     exceptions when this config element is present. (Or if future versions of NUnit framework drop support
     for partial trust which would enable it to use [HandleProcessCorruptedStateExceptions].)
    -->
    <legacyCorruptedStateExceptionsPolicy enabled="true" />

    <!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
    <loadFromRemoteSources enabled="true" />

    <!-- Enable reading source information from Portable and Embedded PDBs when running applications -->
    <!-- built against previous .NET Framework versions on .NET Framework 4.7.2 -->
    <AppContextSwitchOverrides value="Switch.System.Diagnostics.IgnorePortablePDBsInStackTraces=false" />
  </runtime>
  
</configuration>
tools\agents\net40\testcentric-agent.pdb
 
tools\agents\net40\testcentric.engine.api.dll
md5: 35991757F1529621B9B5A36D6A54383C | sha1: 6734665DBCB2C5D03E28821BF3C747CF1DC2BE61 | sha256: EB01DD46F79FEB2D62CD23ED2B7695B21D8D3B86D40DC1DE698E3ECE4F913544 | sha512: 4CAC066B0950E1394F509308362D656E6BC1AFC31B4AE9710A9D9A9CB0FC619AEF279EC62042B99215BC85D679C552240C401B6C326806BFA9B2F2C27906BEF8
tools\agents\net40\testcentric.engine.api.pdb
 
tools\agents\net40\testcentric.engine.api.xml
<?xml version="1.0"?>
<doc>
    <assembly>
        <name>testcentric.engine.api</name>
    </assembly>
    <members>
        <member name="T:TestCentric.Engine.NUnitEngineException">
            <summary>
            NUnitEngineException is thrown when the engine has been
            called with improper values or when a particular facility
            is not available.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineException.#ctor(System.String)">
            <summary>
            Construct with a message
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineException.#ctor(System.String,System.Exception)">
            <summary>
            Construct with a message and inner exception
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization constructor
            </summary>
        </member>
        <member name="T:TestCentric.Engine.NUnitEngineNotFoundException">
            <summary>
            The exception that is thrown if a valid test engine is not found
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineNotFoundException.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.NUnitEngineNotFoundException"/> class.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineNotFoundException.#ctor(System.Version)">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.NUnitEngineNotFoundException"/> class.
            </summary>
            <param name="minVersion">The minimum version.</param>
        </member>
        <member name="T:TestCentric.Engine.NUnitEngineUnloadException">
            <summary>
            NUnitEngineUnloadException is thrown when a test run has completed successfully
            but one or more errors were encountered when attempting to unload
            and shut down the test run cleanly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.String)">
            <summary>
            Construct with a message
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.String,System.Exception)">
            <summary>
            Construct with a message and inner exception
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.Collections.Generic.ICollection{System.Exception})">
            <summary>
            Construct with a message and a collection of exceptions.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.NUnitEngineUnloadException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization constructor.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.NUnitEngineUnloadException.AggregatedExceptions">
            <summary>
            Gets the collection of exceptions .
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.ExtensionAttribute">
            <summary>
            The ExtensionAttribute is used to identify a class that is intended
            to serve as an extension.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.ExtensionAttribute.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.Extensibility.ExtensionAttribute"/> class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.Path">
            <summary>
            A unique string identifying the ExtensionPoint for which this Extension is 
            intended. This is an optional field provided NUnit is able to deduce the
            ExtensionPoint from the Type of the extension class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.Description">
            <summary>
            An optional description of what the extension does.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.Enabled">
            <summary>
            Flag indicating whether the extension is enabled.
            </summary>
            <value><c>true</c> if enabled; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionAttribute.EngineVersion">
            <summary>
            The minimum Engine version for which this extension is designed
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.ExtensionPointAttribute">
            <summary>
            ExtensionPointAttribute is used at the assembly level to identify and
            document any ExtensionPoints supported by the assembly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.ExtensionPointAttribute.#ctor(System.String,System.Type)">
            <summary>
            Construct an ExtensionPointAttribute
            </summary>
            <param name="path">A unique string identifying the extension point.</param>
            <param name="type">The required Type of any extension that is installed at this extension point.</param>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPointAttribute.Path">
            <summary>
            The unique string identifying this ExtensionPoint. This identifier
            is typically formatted as a path using '/' and the set of extension 
            points is sometimes viewed as forming a tree.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPointAttribute.Type">
            <summary>
            The required Type (usually an interface) of any extension that is 
            installed at this ExtensionPoint.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPointAttribute.Description">
            <summary>
            An optional description of the purpose of the ExtensionPoint
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute">
            <summary>
            The ExtensionPropertyAttribute is used to specify named properties for an extension.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute.#ctor(System.String,System.String)">
            <summary>
            Construct an ExtensionPropertyAttribute
            </summary>
            <param name="name">The name of the property</param>
            <param name="value">The property value</param>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute.Name">
            <summary>
            The name of the property.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.ExtensionPropertyAttribute.Value">
            <summary>
            The property value
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IDriverFactory">
            <summary>
            Interface implemented by a Type that knows how to create a driver for a test assembly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IDriverFactory.IsSupportedTestFramework(System.Reflection.AssemblyName)">
            <summary>
            Gets a flag indicating whether a given AssemblyName
            represents a test framework supported by this factory.
            </summary>
            <param name="reference">An AssemblyName referring to the possible test framework.</param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IDriverFactory.GetDriver(System.AppDomain,System.Reflection.AssemblyName)">
            <summary>
            Gets a driver for a given test assembly and a framework
            which the assembly is already known to reference.
            </summary>
            <param name="domain">The domain in which the assembly will be loaded</param>
            <param name="reference">An AssemblyName referring to the test framework.</param>
            <returns></returns>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IExtensionNode">
            <summary>
            The IExtensionNode interface is implemented by a class that represents a
            single extension being installed on a particular extension point.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.TypeName">
            <summary>
            Gets the full name of the Type of the extension object.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.Enabled">
            <summary>
            Gets a value indicating whether this <see cref="T:TestCentric.Engine.Extensibility.IExtensionNode"/> is enabled.
            </summary>
            <value><c>true</c> if enabled; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.Path">
            <summary>
            Gets the unique string identifying the ExtensionPoint for which
            this Extension is intended. This identifier may be supplied by the attribute
            marking the extension or deduced by NUnit from the Type of the extension class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.Description">
            <summary>
            Gets an optional description of what the extension does.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.TargetFramework">
            <summary>
            The TargetFramework of the extension assembly.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.PropertyNames">
            <summary>
            Gets a collection of the names of all this extension's properties
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IExtensionNode.GetValues(System.String)">
            <summary>
            Gets a collection of the values of a particular named property
            If none are present, returns an empty enumerator.
            </summary>
            <param name="name">The property name</param>
            <returns>A collection of values</returns>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.AssemblyPath">
            <summary>
            The path to the assembly implementing this extension.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionNode.AssemblyVersion">
            <summary>
            The version of the assembly implementing this extension.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IExtensionPoint">
            <summary>
            An ExtensionPoint represents a single point in the TestEngine
            that may be extended by user addins and extensions.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.Path">
            <summary>
            Gets the unique path identifying this extension point.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.Description">
            <summary>
            Gets the description of this extension point. May be null.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.TypeName">
            <summary>
            Gets the FullName of the Type required for any extension to be installed at this extension point.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IExtensionPoint.Extensions">
            <summary>
            Gets an enumeration of IExtensionNodes for extensions installed on this extension point.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IFrameworkDriver">
            <summary>
            The IFrameworkDriver interface is implemented by a class that
            is able to use an external framework to explore or run tests
            under the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IFrameworkDriver.ID">
            <summary>
            Gets and sets the unique identifier for this driver,
            used to ensure that test ids are unique across drivers.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.Load(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
            <summary>
            Loads the tests in an assembly.
            </summary>
            <returns>An Xml string representing the loaded test</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.CountTestCases(System.String)">
            <summary>
            Count the test cases that would be executed.
            </summary>
            <param name="filter">An XML string representing the TestFilter to use in counting the tests</param>
            <returns>The number of test cases counted</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.Run(TestCentric.Engine.ITestEventListener,System.String)">
            <summary>
            Executes the tests in an assembly.
            </summary>
            <param name="listener">An ITestEventHandler that receives progress notices</param>
            <param name="filter">A XML string representing the filter that controls which tests are executed</param>
            <returns>An Xml string representing the result</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.Explore(System.String)">
            <summary>
            Returns information about the tests in an assembly.
            </summary>
            <param name="filter">An XML string representing the filter that controls which tests are included</param>
            <returns>An Xml string representing the tests</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IFrameworkDriver.StopRun(System.Boolean)">
            <summary>
            Cancel the ongoing test run. If no  test is running, the call is ignored.
            </summary>
            <param name="force">If true, cancel any ongoing test threads, otherwise wait for them to complete.</param>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IProject">
            <summary>
            Interface for the various project types that the engine can load.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IProject.ProjectPath">
            <summary>
            Gets the path to the file storing this project, if any.
            If the project has not been saved, this is null.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IProject.ActiveConfigName">
            <summary>
            Gets the active configuration, as defined
            by the particular project.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.IProject.ConfigNames">
            <summary>
            Gets a list of the configs for this project
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProject.GetTestPackage">
            <summary>
            Gets a test package for the primary or active
            configuration within the project. The package 
            includes all the assemblies and any settings
            specified in the project format.
            </summary>
            <returns>A TestPackage</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProject.GetTestPackage(System.String)">
            <summary>
            Gets a TestPackage for a specific configuration
            within the project. The package includes all the
            assemblies and any settings specified in the 
            project format.
            </summary>
            <param name="configName">The name of the config to use</param>
            <returns>A TestPackage for the named configuration.</returns>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IProjectLoader">
            <summary>
            The IProjectLoader interface is implemented by any class
            that knows how to load projects in a specific format.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProjectLoader.CanLoadFrom(System.String)">
            <summary>
            Returns true if the file indicated is one that this
            loader knows how to load.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>True if the loader knows how to load this file, otherwise false</returns>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IProjectLoader.LoadFrom(System.String)">
            <summary>
            Loads a project of a known format.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>An IProject interface to the loaded project or null if the project cannot be loaded</returns>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.IResultWriter">
            <summary>
            Common interface for objects that process and write out test results
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IResultWriter.CheckWritability(System.String)">
            <summary>
            Checks if the output path is writable. If the output is not
            writable, this method should throw an exception.
            </summary>
            <param name="outputPath"></param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IResultWriter.WriteResultFile(System.Xml.XmlNode,System.String)">
            <summary>
            Writes result to the specified output path.
            </summary>
            <param name="resultNode">XmlNode for the result</param>
            <param name="outputPath">Path to which it should be written</param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.IResultWriter.WriteResultFile(System.Xml.XmlNode,System.IO.TextWriter)">
            <summary>
            Writes result to a TextWriter.
            </summary>
            <param name="resultNode">XmlNode for the result</param>
            <param name="writer">TextWriter to which it should be written</param>
        </member>
        <member name="T:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute">
            <summary>
            TypeExtensionPointAttribute is used to bind an extension point
            to a class or interface.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.#ctor(System.String)">
            <summary>
            Construct a TypeExtensionPointAttribute, specifying the path.
            </summary>
            <param name="path">A unique string identifying the extension point.</param>
        </member>
        <member name="M:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.#ctor">
            <summary>
            Construct an TypeExtensionPointAttribute, without specifying the path.
            The extension point will use a path constructed based on the interface
            or class to which the attribute is applied.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.Path">
            <summary>
            The unique string identifying this ExtensionPoint. This identifier
            is typically formatted as a path using '/' and the set of extension 
            points is sometimes viewed as forming a tree.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.Extensibility.TypeExtensionPointAttribute.Description">
            <summary>
            An optional description of the purpose of the ExtensionPoint
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IAvailableRuntimes">
            <summary>
            Interface that returns a list of available runtime frameworks.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IAvailableRuntimes.AvailableRuntimes">
            <summary>
            Gets a list of available runtime frameworks.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IExtensionService">
            <summary>
            The IExtensionService interface allows a runner to manage extensions.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IExtensionService.ExtensionPoints">
            <summary>
            Gets an enumeration of all ExtensionPoints in the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IExtensionService.Extensions">
            <summary>
            Gets an enumeration of all installed Extensions.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IExtensionService.GetExtensionPoint(System.String)">
            <summary>
            Get an ExtensionPoint based on its unique identifying path.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IExtensionService.GetExtensionNodes(System.String)">
            <summary>
            Get an enumeration of ExtensionNodes based on their identifying path.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IExtensionService.EnableExtension(System.String,System.Boolean)">
            <summary>
            Enable or disable an extension
            </summary>
            <param name="typeName"></param>
            <param name="enabled"></param>
        </member>
        <member name="T:TestCentric.Engine.ILogger">
            <summary>
            Interface for logging within the engine
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Error(System.String)">
            <summary>
            Logs the specified message at the error level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Error(System.String,System.Object[])">
            <summary>
            Logs the specified message at the error level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Warning(System.String)">
            <summary>
            Logs the specified message at the warning level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Warning(System.String,System.Object[])">
            <summary>
            Logs the specified message at the warning level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Info(System.String)">
            <summary>
            Logs the specified message at the info level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Info(System.String,System.Object[])">
            <summary>
            Logs the specified message at the info level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Debug(System.String)">
            <summary>
            Logs the specified message at the debug level.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:TestCentric.Engine.ILogger.Debug(System.String,System.Object[])">
            <summary>
            Logs the specified message at the debug level.
            </summary>
            <param name="format">The message.</param>
            <param name="args">The arguments.</param>
        </member>
        <member name="T:TestCentric.Engine.ILogging">
            <summary>
            Interface to abstract getting loggers
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ILogging.GetLogger(System.String)">
            <summary>
            Gets the logger.
            </summary>
            <param name="name">The name of the logger to get.</param>
            <returns></returns>
        </member>
        <member name="T:TestCentric.Engine.InternalTraceLevel">
            <summary>
            InternalTraceLevel is an enumeration controlling the
            level of detailed presented in the internal log.
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Default">
            <summary>
            Use the default settings as specified by the user.
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Off">
            <summary>
            Do not display any trace messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Error">
            <summary>
            Display Error messages only
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Warning">
            <summary>
            Display Warning level and higher messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Info">
            <summary>
            Display informational and higher messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Debug">
            <summary>
            Display debug messages and higher - i.e. all messages
            </summary>
        </member>
        <member name="F:TestCentric.Engine.InternalTraceLevel.Verbose">
            <summary>
            Display debug messages and higher - i.e. all messages
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IProjectService">
            <summary>
            The IProjectService interface is implemented by ProjectService.
            It knows how to load projects in a specific format and can expand
            TestPackages based on projects.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IProjectService.CanLoadFrom(System.String)">
            <summary>
            Returns true if the file indicated is one that this
            loader knows how to load.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>True if the loader knows how to load this file, otherwise false</returns>
        </member>
        <member name="M:TestCentric.Engine.IProjectService.LoadFrom(System.String)">
            <summary>
            Loads a project of a known format.
            </summary>
            <param name="path">The path of the project file</param>
            <returns>An IProject interface to the loaded project or null if the project cannot be loaded</returns>
        </member>
        <member name="M:TestCentric.Engine.IProjectService.ExpandProjectPackage(TestCentric.Engine.TestPackage)">
            <summary>
            Expands a TestPackage based on a known project format, populating it
            with the project contents and any settings the project provides. 
            Note that the package file path must be checked to ensure that it is
            a known project format before calling this method.
            </summary>
            <param name="package">The TestPackage to be expanded</param>
        </member>
        <member name="T:TestCentric.Engine.IResultService">
            <summary>
            IResultWriterService provides result writers for a specified
            well-known format.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IResultService.Formats">
            <summary>
            Gets an array of the available formats
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IResultService.GetResultWriter(System.String,System.Object[])">
            <summary>
            Gets a ResultWriter for a given format and set of arguments.
            </summary>
            <param name="format">The name of the format to be used</param>
            <param name="args">A set of arguments to be used in constructing the writer or null if non arguments are needed</param>
            <returns>An IResultWriter</returns>
        </member>
        <member name="T:TestCentric.Engine.IRuntimeFramework">
            <summary>
            Interface implemented by objects representing a runtime framework.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.Id">
            <summary>
            Gets the inique Id for this runtime, such as "net-4.5"
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.DisplayName">
            <summary>
            Gets the display name of the framework, such as ".NET 4.5"
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.FrameworkVersion">
            <summary>
            Gets the framework version: usually contains two components, Major
            and Minor, which match the corresponding CLR components, but not always.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.ClrVersion">
            <summary>
            Gets the Version of the CLR for this framework
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IRuntimeFramework.Profile">
            <summary>
            Gets a string representing the particular profile installed,
            or null if there is no profile. Currently. the only defined 
            values are Full and Client.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IRuntimeFrameworkService">
            <summary>
            Implemented by a type that provides information about the
            current and other available runtimes.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IRuntimeFrameworkService.IsAvailable(System.String)">
            <summary>
            Returns true if the runtime framework represented by
            the string passed as an argument is available.
            </summary>
            <param name="framework">A string representing a framework, like 'net-4.0'</param>
            <returns>True if the framework is available, false if unavailable or nonexistent</returns>
        </member>
        <member name="M:TestCentric.Engine.IRuntimeFrameworkService.SelectRuntimeFramework(TestCentric.Engine.TestPackage)">
             <summary>
             Selects a target runtime framework for a TestPackage based on
             the settings in the package and the assemblies themselves.
             The package RuntimeFramework setting may be updated as a 
             result and the selected runtime is returned.
            
             Note that if a package has subpackages, the subpackages may run on a different
             framework to the top-level package. In future, this method should
             probably not return a simple string, and instead require runners
             to inspect the test package structure, to find all desired frameworks.
             </summary>
             <param name="package">A TestPackage</param>
             <returns>The selected RuntimeFramework</returns>
        </member>
        <member name="T:TestCentric.Engine.ServiceStatus">
            <summary>
            Enumeration representing the status of a service
            </summary>
        </member>
        <member name="F:TestCentric.Engine.ServiceStatus.Stopped">
            <summary>Service was never started or has been stopped</summary>
        </member>
        <member name="F:TestCentric.Engine.ServiceStatus.Started">
            <summary>Started successfully</summary>
        </member>
        <member name="F:TestCentric.Engine.ServiceStatus.Error">
            <summary>Service failed to start and is unavailable</summary>
        </member>
        <member name="T:TestCentric.Engine.IService">
            <summary>
            The IService interface is implemented by all Services. Although it
            is extensible, it does not reside in the Extensibility namespace
            because it is so widely used by the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IService.ServiceContext">
            <summary>
            The ServiceContext
            </summary>
        </member>
        <member name="P:TestCentric.Engine.IService.Status">
            <summary>
            Gets the ServiceStatus of this service
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IService.StartService">
            <summary>
            Initialize the Service
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IService.StopService">
            <summary>
            Do any cleanup needed before terminating the service
            </summary>
        </member>
        <member name="T:TestCentric.Engine.IServiceLocator">
            <summary>
            IServiceLocator allows clients to locate any NUnit services
            for which the interface is referenced. In normal use, this
            linits it to those services using interfaces defined in the 
            testcentric.engine.api assembly.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IServiceLocator.GetService``1">
            <summary>
            Return a specified type of service
            </summary>
        </member>
        <member name="M:TestCentric.Engine.IServiceLocator.GetService(System.Type)">
            <summary>
            Return a specified type of service
            </summary>
        </member>
        <member name="T:TestCentric.Engine.ITestEngine">
            <summary>
            ITestEngine represents an instance of the test engine.
            Clients wanting to discover, explore or run tests start
            require an instance of the engine, which is generally
            acquired from the TestEngineActivator class.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestEngine.Services">
            <summary>
            Gets the IServiceLocator interface, which gives access to
            certain services provided by the engine.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestEngine.WorkDirectory">
            <summary>
            Gets and sets the directory path used by the engine for saving files.
            Some services may ignore changes to this path made after initialization.
            The default value is the current directory.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestEngine.InternalTraceLevel">
            <summary>
            Gets and sets the InternalTraceLevel used by the engine. Changing this
            setting after initialization will have no effect. The default value
            is the value saved in the NUnit settings.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestEngine.Initialize">
             <summary>
             Initialize the engine. This includes initializing mono addins,
             setting the trace level and creating the standard set of services
             used in the Engine.
            
             This interface is not normally called by user code. Programs linking
             only to the testcentric.engine.api assembly are given a
             pre-initialized instance of TestEngine. Programs
             that link directly to testcentric.engine usually do so
             in order to perform custom initialization.
             </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestEngine.GetRunner(TestCentric.Engine.TestPackage)">
            <summary>
            Returns a test runner instance for use by clients in discovering,
            exploring and executing tests.
            </summary>
            <param name="package">The TestPackage for which the runner is intended.</param>
            <returns>An ITestRunner.</returns>
        </member>
        <member name="T:TestCentric.Engine.ITestEventListener">
            <summary>
            The ITestListener interface is used to receive notices of significant
            events while a test is running. Its single method accepts an Xml string,
            which may represent any event generated by the test framework, the driver
            or any of the runners internal to the engine. Use of Xml means that
            any driver and framework may add additional events and the engine will
            simply pass them on through this interface.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestEventListener.OnTestEvent(System.String)">
            <summary>
            Handle a progress report or other event.
            </summary>
            <param name="report">An XML progress report.</param>
        </member>
        <member name="T:TestCentric.Engine.ITestFilterBuilder">
            <summary>
            Interface to a TestFilterBuilder, which is used to create TestFilters
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterBuilder.AddTest(System.String)">
            <summary>
            Add a test to be selected
            </summary>
            <param name="fullName">The full name of the test, as created by NUnit</param>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterBuilder.SelectWhere(System.String)">
            <summary>
            Specify what is to be included by the filter using a where clause.
            </summary>
            <param name="whereClause">A where clause that will be parsed by NUnit to create the filter.</param>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterBuilder.GetFilter">
            <summary>
            Get a TestFilter constructed according to the criteria specified by the other calls.
            </summary>
            <returns>A TestFilter.</returns>
        </member>
        <member name="T:TestCentric.Engine.ITestFilterService">
            <summary>
            The TestFilterService provides builders that can create TestFilters
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestFilterService.GetTestFilterBuilder">
            <summary>
            Get an uninitialized TestFilterBuilder
            </summary>
        </member>
        <member name="T:TestCentric.Engine.ITestRun">
            <summary>
            The ITestRun class represents an ongoing test run.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestRun.Result">
            <summary>
            Get the result of the test.
            </summary>
            <returns>An XmlNode representing the test run result</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRun.Wait(System.Int32)">
            <summary>
            Blocks the current thread until the current test run completes
            or the timeout is reached
            </summary>
            <param name="timeout">A <see cref="T:System.Int32"/> that represents the number of milliseconds to wait or -1 milliseconds to wait indefinitely. </param>
            <returns>True if the run completed</returns>
        </member>
        <member name="T:TestCentric.Engine.ITestRunner">
            <summary>
            Interface implemented by all test runners.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.ITestRunner.IsTestRunning">
            <summary>
            Get a flag indicating whether a test is running
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Load">
            <summary>
            Load a TestPackage for possible execution
            </summary>
            <returns>An XmlNode representing the loaded package.</returns>
            <remarks>
            This method is normally optional, since Explore and Run call
            it automatically when necessary. The method is kept in order
            to make it easier to convert older programs that use it.
            </remarks>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Unload">
            <summary>
            Unload any loaded TestPackage. If none is loaded,
            the call is ignored.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Reload">
            <summary>
            Reload the current TestPackage
            </summary>
            <returns>An XmlNode representing the loaded package.</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.CountTestCases(TestCentric.Engine.TestFilter)">
            <summary>
            Count the test cases that would be run under
            the specified filter.
            </summary>
            <param name="filter">A TestFilter</param>
            <returns>The count of test cases</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Run(TestCentric.Engine.ITestEventListener,TestCentric.Engine.TestFilter)">
            <summary>
            Run the tests in the loaded TestPackage and return a test result. The tests
            are run synchronously and the listener interface is notified as it progresses.
            </summary>
            <param name="listener">The listener that is notified as the run progresses</param>
            <param name="filter">A TestFilter used to select tests</param>
            <returns>An XmlNode giving the result of the test execution</returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.RunAsync(TestCentric.Engine.ITestEventListener,TestCentric.Engine.TestFilter)">
            <summary>
            Start a run of the tests in the loaded TestPackage. The tests are run
            asynchronously and the listener interface is notified as it progresses.
            </summary>
            <param name="listener">The listener that is notified as the run progresses</param>
            <param name="filter">A TestFilter used to select tests</param>
            <returns></returns>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.StopRun(System.Boolean)">
            <summary>
            Cancel the ongoing test run. If no  test is running, the call is ignored.
            </summary>
            <param name="force">If true, cancel any ongoing test threads, otherwise wait for them to complete.</param>
        </member>
        <member name="M:TestCentric.Engine.ITestRunner.Explore(TestCentric.Engine.TestFilter)">
            <summary>
            Explore a loaded TestPackage and return information about the tests found.
            </summary>
            <param name="filter">The TestFilter to be used in selecting tests to explore.</param>
            <returns>An XmlNode representing the tests found.</returns>
        </member>
        <member name="T:TestCentric.Engine.TestEngineActivator">
            <summary>
            TestEngineActivator creates an instance of the test engine and returns an ITestEngine interface.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestEngineActivator.CreateInstance(System.Boolean)">
            <summary>
            Create an instance of the test engine.
            </summary>
            <param name="unused">This parameter is no longer used but has not been removed to ensure API compatibility.</param>
            <exception cref="T:TestCentric.Engine.NUnitEngineNotFoundException">Thrown when a test engine of the required minimum version is not found</exception>
            <returns>An <see cref="T:TestCentric.Engine.ITestEngine"/></returns>
        </member>
        <member name="M:TestCentric.Engine.TestEngineActivator.CreateInstance(System.Version,System.Boolean)">
            <summary>
            Create an instance of the test engine with a minimum version.
            </summary>
            <param name="minVersion">The minimum version of the engine to return inclusive.</param>
            <param name="unused">This parameter is no longer used but has not been removed to ensure API compatibility.</param>
            <exception cref="T:TestCentric.Engine.NUnitEngineNotFoundException">Thrown when a test engine of the required minimum version is not found</exception>
            <returns>An <see cref="T:TestCentric.Engine.ITestEngine"/></returns>
        </member>
        <member name="T:TestCentric.Engine.TestFilter">
            <summary>
            Abstract base for all test filters. A filter is represented
            by an XmlNode with &lt;filter&gt; as its topmost element.
            In the console runner, filters serve only to carry this
            XML representation, as all filtering is done by the engine.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestFilter.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:TestCentric.Engine.TestFilter"/> class.
            </summary>
            <param name="xmlText">The XML text that specifies the filter.</param>
        </member>
        <member name="F:TestCentric.Engine.TestFilter.Empty">
            <summary>
            The empty filter - one that always passes.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestFilter.Text">
            <summary>
            Gets the XML representation of this filter as a string.
            </summary>
        </member>
        <member name="T:TestCentric.Engine.TestPackage">
            <summary>
            TestPackage holds information about a set of test files to
            be loaded by a TestRunner. Each TestPackage represents
            tests for one or more test files. TestPackages may be named
            or anonymous, depending on the constructor used.
            
            Upon construction, a package is given an ID (string), which
            remains unchanged for the lifetime of the TestPackage instance.
            The package ID is passed to the test framework for use in generating
            test IDs.
            
            A runner that reloads test assemblies and wants the ids to remain stable
            should avoid creating a new package but should instead use the original
            package, changing settings as needed. This gives the best chance for the
            tests in the reloaded assembly to match those originally loaded.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.#ctor(System.String)">
            <summary>
            Construct a named TestPackage, specifying a file path for
            the assembly or project to be used.
            </summary>
            <param name="filePath">The file path.</param>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.#ctor(System.Collections.Generic.IList{System.String})">
            <summary>
            Construct an anonymous TestPackage that wraps test files.
            </summary>
            <param name="testFiles"></param>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.ID">
            <summary>
            Every test package gets a unique ID used to prefix test IDs within that package.
            </summary>
            <remarks>
            The generated ID is only unique for packages created within the same application domain.
            For that reason, NUnit pre-creates all test packages that will be needed.
            </remarks>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.SetID(System.String)">
            <summary>
            Set the ID on a package that has already been created. This is separate from the
            ID property itself because it's a temporary addition, necessitated by the way
            projects work. It allows us to reload a project using a new config without changing
            the test IDs. A broad engine API change may be needed to handle this correctly.
            </summary>
            <param name="id"></param>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.Name">
            <summary>
            Gets the name of the package
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.FullName">
            <summary>
            Gets the path to the file containing tests. It may be
            an assembly or a recognized project type.
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.SubPackages">
            <summary>
            Gets the list of SubPackages contained in this package
            </summary>
        </member>
        <member name="P:TestCentric.Engine.TestPackage.Settings">
            <summary>
            Gets the settings dictionary for this package.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.AddSubPackage(TestCentric.Engine.TestPackage)">
            <summary>
            Add a subproject to the package.
            </summary>
            <param name="subPackage">The subpackage to be added</param>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.AddSetting(System.String,System.Object)">
            <summary>
            Add a setting to a package and all of its subpackages.
            </summary>
            <param name="name">The name of the setting</param>
            <param name="value">The value of the setting</param>
            <remarks>
            Once a package is created, subpackages may have been created
            as well. If you add a setting directly to the Settings dictionary
            of the package, the subpackages are not updated. This method is
            used when the settings are intended to be reflected to all the
            subpackages under the package.
            </remarks>
        </member>
        <member name="M:TestCentric.Engine.TestPackage.GetSetting``1(System.String,``0)">
            <summary>
            Return the value of a setting or a default.
            </summary>
            <param name="name">The name of the setting</param>
            <param name="defaultSetting">The default value</param>
            <returns></returns>
        </member>
        <member name="T:TestCentric.Engine.TestSelectionParserException">
            <summary>
            TestSelectionParserException is thrown when an error
            is found while parsing the selection expression.
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestSelectionParserException.#ctor(System.String)">
            <summary>
            Construct with a message
            </summary>
        </member>
        <member name="M:TestCentric.Engine.TestSelectionParserException.#ctor(System.String,System.Exception)">
            <summary>
            Construct with a message and inner exception
            </summary>
            <param name="message"></param>
            <param name="innerException"></param>
        </member>
        <member name="M:TestCentric.Engine.TestSelectionParserException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Serialization constructor
            </summary>
        </member>
    </members>
</doc>
tools\agents\net40\testcentric.engine.core.dll
md5: D7E2132042E70DD290CFB614077F89A1 | sha1: B1F836735C6E1974757271F91A7D6B9E6E462D40 | sha256: 7717979CACECBDFFDA68BF5D4C89D7C4D3DDF7335ACF5BE2FE42967902E5993D | sha512: 0F9F6C3EC98E87C2848286534E9BBA415C60EEFEC0A9039058DC309A62E7B042B0D8007381E4BCCA27EBFE3D7E81687DE38A0460CA4410281AF15E25269948F1
tools\agents\net40\testcentric.engine.core.pdb
 
tools\agents\net40\testcentric.engine.metadata.dll
tools\agents\net40\testcentric.engine.metadata.pdb
tools\CHANGES.txt
TestCentric Runner for NUnit 1.3.2 - March 15, 2020

This release corrects a new bug found in the 1.3.0 release and makes a
number of improvements in the automation of the release process.

Issues Resolved

 * 428 Update assemblyinfo automatically
 * 525 Create a nuget organization for TestCentric
 * 534 Automate packaging and deployment
 * 540 Support for unattended execution of the GUI
 * 542 FIXED: Default process model for 32 bit v1.3.1

TestCentric Runner for NUnit 1.3.1 - March 6, 2020

This release corrects a critical problem in the 1.3.0 release. None of the
1.3.0 packages included agents for use under .NET 4.0 and higher. This
release adds those agents.

Issues Resolved

 * 535 FIXED: Cannot load test assembly after 1.3 update
 * 536 Restructuring the build.cake script
 * 537 FIXED: Missing files in Release 1.3.0
 * 538 Add package checking tasks to build

TestCentric Runner for NUnit 1.3.0 - February 23, 2020

General

 * A NuGet package is now available on nuget.org. While we continue to
   recommend use of the chocolatey.org package for most developers, because
   it provides a central installation point for use with all projects, a
   number of users requested a nuget package as well.

   NOTE: Whichever installation package you use, you should install any
   needed extensions using the same package source.

GUI

 * The runtime selection menu is now disabled when tests are being run in
   process, since no other runtime is available within the GUI process.

Engine

 * The UserSettings service is no longer part of the engine but is handled
   directly in the GUI. This is not considered a breaking change, since
   the engine is not yet released separately from the GUI.

 * A new PackageSettings service has been added to the engine. Its job
   is to analyze all packages, examine assemblies and set default
   parameters for executing them.

 * A pair of agents are provided for .NET 4.0 in addition to the existing
   .NET 2.0 agents. In addition, the engine is now built for both runtimes
   and agents use the appropriate version. The GUI itself uses the 4.0 engine.

Issues Resolved

 * 457 Remove UserSettings from the engine
 * 466 Update Copyright headers in all files
 * 475 Engine Tests will only run in process under GUI
 * 476 Eliminate use of Mono.Cecil from engine core assembly
 * 479 Refactor RuntimeFramework to eliminate unneeded selection options
 * 480 Determine versions of .NET Core we want to support.
 * 483 Disable Runtime menu when running in process
 * 487 Determine supported platforms for the engine.
 * 488 Integrate engine build output
 * 489 Run tests for .NET Core
 * 499 Engine Tests don't run under .NET Core 2.1
 * 502 Create new Service to manage PackageSettings
 * 505 Reorganize output to allow agents for various runtimes and both 32-bit and 64-bit execution
 * 513 Modify logic of TestAgency to initiate correct agents
 * 514 Upgrade engine to target .NET 4.0
 * 517 Net40 engine.core build
 * 518 Create agent process executable for .NET Framework 4.0 and higher
 * 522 Update nuget and chocolatey packages
 * 523 Create a nuget package for the GUI
 * 528 Chocolatey package should use TestCentric icon
 * 526 Update nuget package
 * 531 Create tasks in build script for publishing packages

TestCentric Runner for NUnit 1.2.0 - December 17, 2019

This release is primarily marked by the elimination of our 
dependency on the NUnit Engine in preparation for moving
forward with features that require engine changes.

GUI

 * Inprocess test execution has been deprecated

Experimental GUI

 * The GUI font may be changed from the View menu

 * One or more files may be added to those open

 * Rerun on Change has been implemented

Test Model
 
Engine

 * We now use the TestCentric Engine, Version 0.1, replacing the NUnit Engine. 
 The new engine is based on the NUnit 3.11 engine, with modifications.

 * Engine recognizes and runs assemblies that target .NET Framework 4.6 and up.

 * Engine now recognizes .NET Core assemblies and gives an error message
 if the user attempts to open one.

 * The RecentFilesService is no longer available.

Issues Resolved

 * 215 Experimental GUI: Allow setting the gui font
 * 217 Experimental GUI: Add files to those already open
 * 233 Experimental GUI: Rerun on Change
 * 426 Switch to use of separate TestCentric Engine build
 * 445 Better error message when attempting to load .NET Core assemblies
 * 447 FIXED: Engine will not recognize .NET Framework versions beyond 4.5
 * 449 FIXED: GUI window doesn't retain size between runs
 * 454 Deprecate in-process execution
 * 455 Remove RecentFilesService from engine
 * 456 Rename engine to testcentric engine
 * 461 Convert all projects to use Package References
 * 470 Remove deprecated "Single" option for ProcessModel
 * 473 Establish Initial Version for TestCentric engine

TestCentric Runner for NUnit 1.1.0 - November 9, 2019

General

This release includes new features beyond the 1.0 release, together with some bug fixes.

Features
 * The configuration to be loaded may be specified in the GUI.
 * A new dialog allows setting parameters for the test run.
 * Test Results may be saved in any format for which an extension has been installed.
 * Additional test label options are supported.
 * The GUI uses a custom build of the latest version of the NUnit engine.
 * Includes version 0.16 of the experimental GUI.

Issues Resolved

 *   4 Save test results in alternative formats
 *  77 Setting up test parameters from gui
 * 193 Experimental GUI: Passing parameters from GUI to Tests
 * 216 Experimental GUI: Set project configuration to use
 * 275 Add --debug-agent option to the TestCentric GUI
 * 276 Deprecate old nunit-gui application on Chocolatey
 * 315 Reorganize Settings
 * 340 FIXED: Unable to run selected NUnit V2 tests
 * 347 Add TextOutput labelling of final test result
 * 372 Add command line option for specifying results file location
 * 394 Update engine
 * 395 Display version and path of loaded extensions
 * 397 Fix unhandled NullReferenceException thrown when test fails with Assert.Fail()
 * 399 Show the test assembly name in the main view's title bar.
 * 402 Set Project Configuration to use
 * 406 FIXED: Appveyor rebuild causes error
 * 412 Update link to Chocolatey package
 * 414 FIXED: Testcentric.exe needs icon
 * 415 Better installation documentation
 * 424 Use common dialog for extensions
 * 427 Ensure that agent exes are copied as part of building the project
 * 430 FIXED: Index out of range exception when adding a test file
 * 432 FIXED: TestParametersDialog enables Remove and Edit on startup

TestCentric Runner for NUnit 1.0.1 - August 15, 2019

General

This release fixes a critical error discovered after the release of 1.0.0.

Features

 * Includes version 0.15.1 of the experimental GUI

Issues Resolved

 * 325 Deploy development builds automatically
 * 380 Automate testing of packages
 * 388 FIXED: NUnit process with multiple assemblies will not load

TestCentric Runner for NUnit 1.0.0 - July 27, 2019

General

This is the final release of version 1.0 of the TestCentric Runner for NUnit, which is
primarily based on the layout and feature set of the original NUnit V2 GUI runner with
internals modified so as to run NUnit3 tests. Certain changes were made because of 
differences in how NUnit3 works and are described below under Features.

This new GUI runner was created by the TestCentric team: Charlie Poole, Mikkel Bundgaard,
Manfred Lange, Stefano Nuzzo and Robert Snyder. Community members who contributed code to
this release include Jeff Kryzer, zBrianW, Joseph Musser and Mattias Karlsson. Countless
other folks contributed by filing issues, asking questions and making suggestions.
 
Features

 * TestCentric relies on the NUnit engine to load and run tests. Features that require 
 an engine extension are only available if the appropriate extension is installed. In
 particular, this includes the ability to open both NUnit and Visual Studio projects,
 run NUNit V2 tests and save results in V2 format.
 
 * All direct access to NUnit project contents, such as editing, saving and adding
 configurations, has been removed. The user should use a separate editor such as
 the NUnit Project Editor to perform those tasks.

 * Because the GUI runs under .NET 4.5 or higher, any tests that you cause to execute
 in-process will run under that version of the framework. In some cases, this may give
 different results. By default, tests are run in a separate process and use the target
 framework for which they were built. We recommend you stick with the default.

 * The File menu no longer has entries for Load Fixture or Clear Fixture. New menu 
 items to select Process and AppDomain options for loading have been added and the
 corresponding Settings pages removed.

 * The Project top level menu has been removed since it was mostly used to contain
 entries related to NUnit projects. The "Add Projects" entry has been replaced by 
 "Add Files" on the File menu.

 * The Tools menu no longer has entries for Exception Details or Test Assemblies. 
 The Open Log Directory entry has been replaced with Open Work Directory.

 * The Result Tabs (Errors and Failures, Tests Not Run, and Text Output) may no 
 longer be hidden. The Text Output tab only displays Console output and the ability 
 to tailor it's contents has been removed with the exception of the option to label
 tests by name in various ways.

 * Version 0.15 of the Experimental GUI is included.

Known Problems

 * TestCentric uses the test id to select individual tests to be run. This is not 
 currently supported by the V2 framework driver, which throws an exception when 
 an id filter is encountered. The result for the GUI is that it is not possible
 to select individual tests for execution if any V2 framework tests are loaded.
 For that reason, we recommend that you only use this release for NUnit 3 tests.
 This problem will be fixed when a new version of the V2 driver is available,
 which includes support for an id filter.

Issues Resolved

 * 7 Credit for all contributors
 * 8 Icon and Logo for TestCentric
 * 224 FIXED: Appveyor build doesn't use generated identifier to tag packages 
 * 375 Clean up GUI About box
 * 378 Ensure that error message displays when exception is thrown in engine

TestCentric Runner for NUnit 1.0.0-Beta4 - July 17, 2019

General

This is the fourth beta release of the TestCentric Runner for NUnit. While it is still beta,
it is feature-complete. Since the actual execution of tests is done by the NUnit engine
rather than the GUI itself, it's probably reasonable for developers to use this on the
desktop, provided their CI is based on a stable production-level NUnit runner, such as
the NUnit 3 Console Runner or the NUnit 3 VS adapter.

Features

 * Version 0.14 of the Experimental GUI is included.

Issues Resolved

 * 368 FIXED: Arguments to --process option for GUI don't match NUnit console.
 * 369 Merge Options classes for two GUIs and move to common assembly.
 * 370 FIXED: Beta3: unhandled .net exception

TestCentric Runner for NUnit 1.0.0-Beta3 - July 14, 2019

General

This is the third beta release of the TestCentric Runner for NUnit. While it is still beta,
it is feature-complete. Since the actual execution of tests is done by the NUnit engine
rather than the GUI itself, it's probably reasonable for developers to use this on the
desktop, provided their CI is based on a stable production-level NUnit runner, such as
the NUnit 3 Console Runner or the NUnit 3 VS adapter.

Features

 * Version 0.13 of the Experimental GUI is included.
 * Added command-line options --process, --domain, --inprocess, --x86 and --agents.

Issues Resolved

 * 139 FIXED: Stop Button to interrupt infinite loop
 * 287 Assembly or project full name not shown
 * 337 FIXED: Stopping a long running test from TestCentric gui does not stop right away
 * 350 FIXED: Installed Extensions fields not cleared
 * 352 Incorporate NUnit Engine as a subtree
 * 357 Review whether File menu settings should be saved
 * 358 FIXED: Assemblies Running in Parallel (Regardless of Settings)
 * 361 FIXED: Process Model setting includes Single rather than Separate
 * 364 FIXED: Experimental GUI: Proper icons are not displayed for warnings and failures

TestCentric Runner for NUnit 1.0.0-Beta2 - May 30, 2019

General

This is the second beta release of the TestCentric Runner for NUnit. While it is still beta,
it is feature-complete. Since the actual execution of tests is done by the NUnit engine
rather than the GUI itself, it's probably reasonable for developers to use this on the
desktop, provided their CI is based on a stable production-level NUnit runner, such as
the NUnit 3 Console Runner or the NUnit 3 VS adapter.

Features

 * Version 0.12 of the Experimental GUI is included with support for user-defined icons
   and immediate text output display.

Issues Resolved
 *   5 Add online docs for the GUI
 * 229 Experimental GUI: Multiple and user-defined tree icons
 * 236 Experimental GUI: missing test output
 * 326 Update CONTRIBUTING.md
 * 328 FIXED: Reloading loads the assembly multiple times
 * 327 Document how TestCentric GUI is versioned
 * 333 FIXED: InvalidOperationException is thrown from RunStarting event handler
 * 336 FIXED: In TestCentric gui, Selected Categories are cleared on Reload
 * 345 Show names of settings in Text Output settings dialog

TestCentric Runner for NUnit 1.0.0-Beta - April 13, 2019

General

This is the beta release of the TestCentric Runner for NUnit. While it is still beta,
it is feature-complete. Since the actual execution of tests is done by the NUnit engine
rather than the GUI itself, it's probably reasonable for developers to use this on the
desktop, provided their CI is based on a stable production-level NUnit runner, such as
the NUnit 3 Console Runner or the NUnit 3 VS adapter.

Features

 * Version 0.11 of the Experimental GUI is included with support for saving test results,
   reload on change and reload on run.

Issues Resolved

 22 Create new signing key for TestCentric
212 Experimental GUI: Need SaveResults menu item
213 Experimental GUI: Reload on change
226 Display time in a more natural format
232 Experimental GUI: Reload on Run
306 FIXED: Save TestResult Dialog not initialized correctly
318 Disable ReRun on Change setting

TestCentric Runner for NUnit 1.0.0-Alpha4 - April 5, 2019

General

This is the fourth alpha release of the TestCentric Runner for NUnit. It is not yet recommended
for use in production work.

Features

 * Entries now appear in the tree display for any projects loaded
 * The GUI now uses a custom built version of the engine, based on the NUnit 3.10 engine.

Issues Resolved

164 Update NSubstitute to version 4.0
241 Terminate nunit-agent.exe / nunit-agent-x86.exe once they are no longer in use
273 FIXED: No project elements are present in the test XML received from the engine
285 FIXED: NUnit Agent locks dll
288 FIXED: Property dialog not showing assembly process id or appdomain name
290 Need a way to locate and examine log files
292 Remove project editor integration
294 Document differences from the NUnit V2 GUI
299 FIXED: Choosing "Run as X86" from menu doesn't actually load the X86 agent.
301 FIXED Tree icons of previous run do not clear when starting second run
304 FIXED Use new 3.10 release of NUnit engine

TestCentric Runner for NUnit 1.0.0-Alpha3 - February 27, 2019

General

This is the third alpha release of the TestCentric Runner for NUnit. It is not yet recommended
for use in production work.

Features

 * The Experimental GUI, which was previously a separate project, is now included along with the standard TestCentric GUI.
 * Assemblies and projects are now loadable using all process and domain settings.
 * Process and domain settings are now part of the File menu.
 * A custom engine build is included while waiting for the next NUnit engine release.
 * The zip and chocolatey packagegs now include pdb files.

Issues Resolved

 18 FIXED: Reload on Change not working
138 Double click test to start it
153 Changing font should affect status bar
154 FIXED: When opening solution file non-test assemblies cause an error message
155 FIXED: Redundant menu items under View | Tree
156 FIXED: Changing checkbox setting should not change default
159 FIXED: Project name not shown in tree
161 Create separate GUI Components assembly
163 Create Linux build.
165 Review and merge build script with experimental GUI script
170 Review and merge components assembly
175 FIXED: Start and stop button are misaligned
178 Status Bar height should adjust to font
182 Integrate ToolStripItem and ToolStripMenuItem Elements
185 FIXED: Not building Mono 5.10 or 4.6 under Travis
189 Merge experimental GUI into standard GUI project
238 FIXED: Categories on test fixtures not considered in test list design (Experimental)
251 Show file names when loading
253 FIXED: Add file to open files is broken
256 Use DialogManager to display open and save dialogs
257 FIXED: Error on reload when running in process
261 Run tests under 3.9 console runner
263 FIXED: Cannot load nunit test solution in process
264 Use custom build of NUnit engine
269 FIXED: No option to run using default process model or domain usage
274 Eliminate Default Setting Page for process model and domain usage
278 Include pdb files in packages
279 Remove engine version hack in build script

TestCentric Runner for NUnit 1.0.0-Alpha2 - November 11, 2018

General

This is the second alpha release of the TestCentric Runner for NUnit. It is not yet recommended
for use in production work.

Features

 * The GUI now uses the NUnit 3.9 engine
 * Reloading on each Run is now functional.
 * Alternate images for the tree are now implemented.
 * Saving and Restoring the visual state is now implemented.

Issues Resolved

 12 Use UpDown counter for number of recent files to display
 15 FIXED: Alternate Tree Images not working
 21 FIXED: Disabling Shadow Copy is Ignored
 76 FIXED: Exception "Cross-thread operation not valid: Control 'progressBar' accessed from a thread other than the thread it was created on."
 93 FIXED: NRE when starting the GUI
 95 Implement MVP for main form and sub-views
 99 FIXED: Scrolling not working correctly for ErrorDisplay
100 Don't display "Test-Run" as root node in tree with only one assembly
115 FIXED: Zero Length VisualState.xml file results in exception
132 Create TestCentric.Common assembly
144 Update NUnit Engine to 3.9

TestCentric Runner for NUnit 1.0.0-Alpha1 - August 3, 2018

General

This is the initial alpha release of the TestCentric Runner for NUnit. It is not yet recommended
for use in production work.

Features

This GUI runner resembles the NUnit V2 GUI, but since it runs NUnit 3 tests the internal implementation
is entirely new. In addition, features not available or not easily supported in NUnit 3 have been
removed. Some key differences from the V2 GUI are...

 * The GUI itself targets .NET 4.5, rather than 2.0.
 * We use chocolatey as the primary distribution method for the GUI. This makes extensions that are
 also installed through chocolatey available when running under the GUI. A zip file is also provided.
 * Displaying tests as a flat list of fixtures is not supported.
 * Merging tests in the same namespace across assemblies is not supported.
 * The GUI no longer understands the layout of NUnit project files, which is taken care of by the 
 NUnit test engine. Consequently, menu items relating to creating, editiong and saving such files 
 are no longer present.
 * The ability to open project files, including NUnit and VS projects, is dependent on the presence
 of the approprate engine extensions, which are not bundled with the GUI.

Issues Resolved

  1 Select Target Framework for the GUI
  2 Review of Initial Upload
  9 Update the About box
 10 Correct name for program in --help option
 13 FIXED: Number of Recent Files has no effect
 14 FIXED: Tree always cleared of results on reload
 16 FIXED: Flat list of TestFixtures not working
 17 FIXED: Reload on Run not working
 19 FIXED: Principal Policy not working
 20 FIXED: InternalTrace level not honored
 24 FIXED: Setting number of agents has no effect
 26 FIXED: Clear Results Setting is on wrong page
 27 Create CI Build Script
 28 FIXED: "Clear All" and "Check Failed" has no effect
 29 FIXED: "Run" context menu is never enabled
 32 Renaming test-centric to testcentric
 33 Restore Tree-based Setting Dialog
 39 FIXED: Cannot run the tests in TestCentric.Gui.Model.Tests.dll more than once
 42 FIXED: Not possible to run explicit tests using the GUI
 50 Review and reorganize Settings for NUnit 3
 52 FIXED: Show CheckBoxes throws NRE
 61 Disable or remove non-functional elements on Settings pages
 62 FIXED: Switching between full and mini gui display doesn't happen immediately
 63 FIXED: Check files exist setting has no effect
 64 Better error message when an assembly is not found
 66 FIXED: Project editor menu item not working.
 67 FIXED: Show Checkboxes menu and settings elements are inconsistent
 68 Save results menu should be disabled when no test has been run
 71 FIXED: Multiple files on command-line or in file open dialog not opened
 73 Multiple loaded files have no root in tree
 80 Standardize naming of TestCentric packages and executables
 83 Update tests to use NUnit 3.10.1
tools\Experimental.Gui.Runner.dll
md5: 909B54FCB5116B0F83D2532EDA2AB0C9 | sha1: 2EACB1B4FBAB769A8A8453321A693184D09FF06B | sha256: 7BFCD74D18ED4C3D6ACF2D15B579DA2839A7DF8F4E94F89BD68DB95F3B2324AB | sha512: 69788482A054E77AF06D1492616153F8885F25B35E954F5DAB3F1D6C180214322E632994D1148EAFFC9AA8E555041E60CB033DE8AE26E60B3B04731AAFB6E05E
tools\Experimental.Gui.Runner.pdb
 
tools\Images\DebugTests.png
 
tools\Images\RunTests.png
 
tools\Images\Tree\Circles\Failure.jpg
 
tools\Images\Tree\Circles\Ignored.jpg
 
tools\Images\Tree\Circles\Inconclusive.jpg
 
tools\Images\Tree\Circles\Skipped.jpg
 
tools\Images\Tree\Circles\Success.jpg
 
tools\Images\Tree\Classic\Failure.jpg
 
tools\Images\Tree\Classic\Ignored.jpg
 
tools\Images\Tree\Classic\Inconclusive.jpg
 
tools\Images\Tree\Classic\Skipped.jpg
 
tools\Images\Tree\Classic\Success.jpg
 
tools\Images\Tree\Default\Failure.png
 
tools\Images\Tree\Default\Ignored.png
 
tools\Images\Tree\Default\Inconclusive.png
 
tools\Images\Tree\Default\Skipped.png
 
tools\Images\Tree\Default\Success.png
 
tools\Images\Tree\Default\Warning.png
 
tools\Images\Tree\Visual Studio\Failure.png
 
tools\Images\Tree\Visual Studio\Ignored.png
 
tools\Images\Tree\Visual Studio\Inconclusive.png
 
tools\Images\Tree\Visual Studio\Skipped.png
 
tools\Images\Tree\Visual Studio\Success.png
 
tools\LICENSE.txt
Copyright (c) 2018-2019 Charlie Poole

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

tools\Mono.Cecil.dll
md5: 3D4A4F72FF8281FB8624C062121E8CD0 | sha1: 8747C11210686A2277F6E1755E660E24258023DA | sha256: 80DB0C28D53072ACD056793A8258925FFAE212C6433955758D31010B403CEA0D | sha512: 6EB87F4C9B570AA4BFE83AA5A9C1281372ADA124FC18429ACDF2B1697CC5114E7242AAD31F98984F305C0A536BB2D3F87EF9D884F777A93712810C223CC15E61
tools\NOTICES.txt
The TestCentric GUI Runner 1.0 is based in part on the NUnit 2.x GUI Runner, 
with portions of the code...

    Copyright (c) 2002-2014 Charlie Poole or 
    Copyright (c) 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov or 
    Copyright (c) 2000-2002 Philip A. Craig

The TestCentric GUI Runner uses the NUnit 3 Test Engine to run tests...

    Copyright (c) 2017-2019 Charlie Poole, Rob Prouse
tools\nunit.uiexception.dll
md5: 0FE923CB91AA26135566FD4A0543564B | sha1: 1536CC9F178D3A5C2B645DE5B8B603DFD59146C5 | sha256: CA8326E99EA61117CACE894201EBF265F7439ABCCF54846EACC56E3DEDFEF7FE | sha512: 0488B541313DB14C05AFAFAEB9537FB531BB35B23638255B3FE36AAC36FDD20953BE1F64439B9E8AAE1AD067DDFF5549B41EAE50DC78AA256B14FE7895D6142F
tools\nunit.uiexception.pdb
 
tools\tc-next.exe
md5: 5D895E24454259300728A6D7585E9EA6 | sha1: D8E772FCC37FB5051064EC98B1BF9BB759366857 | sha256: 701D00163611E059F561DEE2EC352AE6883EC03D605EF4615AE93F22CD72F713 | sha512: AB6140A661C49BB454F47A67D05855ACAF4257814072AB6462E21D77D552005B2348F068885594D2FC9C1879A2E01596ACC9CB2180A6D3ECDFB153973727F50A
tools\tc-next.exe.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!--
   The gui runner runs under .NET 2.0 or higher, selecting the
   highest version runtime available.
   
   The setting useLegacyV2RuntimeActivationPolicy only applies 
   under .NET 4.0 and permits use of mixed mode assemblies, 
   which would otherwise not load correctly.
  -->
  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0.30319" />
    <supportedRuntime version="v2.0.50727" />
  </startup>

  <runtime>

    <!-- Ensure that test exceptions don't crash NUnit -->
    <legacyUnhandledExceptionPolicy enabled="1" />

    <!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
    <loadFromRemoteSources enabled="true" />

  </runtime>

</configuration>
tools\tc-next.pdb
 
tools\testcentric-agent-x86.exe.ignore
 
tools\testcentric-agent.exe.ignore
 
tools\testcentric.choco.addins
 
tools\TestCentric.Common.dll
md5: EA773A4CD71EAD6B5C3E4D812A870374 | sha1: 68A2DFB4D351405F6E76589BCF60F0E255539A5E | sha256: F4262F8EE5BB32E9ADD49B00E3AFEB0F136878AC6AE8BB7979987D123DBCB5E0 | sha512: 8468EA082479DBF091FD2D93CEDC5E5B94F52CCDEF0447EF22E24C8B824C1449D018CF939091224FAE08FE27A23D03ED76F7A37903461DB44C1B865F68795253
tools\TestCentric.Common.pdb
 
tools\testcentric.engine.api.dll
md5: 35991757F1529621B9B5A36D6A54383C | sha1: 6734665DBCB2C5D03E28821BF3C747CF1DC2BE61 | sha256: EB01DD46F79FEB2D62CD23ED2B7695B21D8D3B86D40DC1DE698E3ECE4F913544 | sha512: 4CAC066B0950E1394F509308362D656E6BC1AFC31B4AE9710A9D9A9CB0FC619AEF279EC62042B99215BC85D679C552240C401B6C326806BFA9B2F2C27906BEF8
tools\testcentric.engine.api.pdb
 
tools\testcentric.engine.core.dll
md5: D7E2132042E70DD290CFB614077F89A1 | sha1: B1F836735C6E1974757271F91A7D6B9E6E462D40 | sha256: 7717979CACECBDFFDA68BF5D4C89D7C4D3DDF7335ACF5BE2FE42967902E5993D | sha512: 0F9F6C3EC98E87C2848286534E9BBA415C60EEFEC0A9039058DC309A62E7B042B0D8007381E4BCCA27EBFE3D7E81687DE38A0460CA4410281AF15E25269948F1
tools\testcentric.engine.core.pdb
 
tools\testcentric.engine.dll
md5: C4C37A2AC3C235CFF1191D6B526DE20A | sha1: 69B136F3337AD493DD51CB6C95CA04357B9DE14C | sha256: 45709BF88E6DA62239C77A9D019436009189996A98C6896AF996114C50BD5E78 | sha512: AB906B47285CFA21B33FB0475C23AE02848CBF500B383627D7173448E9C602F3F4E8103A2C6E77446D88266CE61A0C5B2A0617191A9872CF0962E7702E1C3C17
tools\testcentric.engine.metadata.dll
tools\testcentric.engine.metadata.pdb
tools\testcentric.engine.pdb
 
tools\testcentric.exe
md5: 2D33903910C8AAFC3F31645B5C7BC102 | sha1: 8C352F61D7F6BBD5C6F35A740B452E4E599FDB5D | sha256: E06D6F9358F0C99C0159D7F04BFBBAA03217C5AE028B40D6EB71ADD46E88CF48 | sha512: 94E7FE1E1FBE6D33FBE2CC03C4DFEE64F3B762E8CFFC6DDAA3AFA22A7227F1230DF2E1D5967A320C2B6A264F3D0FD06CF8F80519DA132BDF8F170ED9C778132B
tools\testcentric.exe.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
	<!--
   The GUI only runs under .NET 2.0 or higher. The
   useLegacyV2RuntimeActivationPolicy setting only
   applies under .NET 4.0 and permits use of mixed 
   mode assemblies, which would otherwise not load 
   correctly.
  -->
	<startup useLegacyV2RuntimeActivationPolicy="true">
		<!-- Comment out the next line to force use of .NET 4.0 -->
	<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup>
	<runtime>
		<!-- Ensure that test exceptions don't crash NUnit -->
		<legacyUnhandledExceptionPolicy enabled="1"/>
		<!-- Run partial trust V2 assemblies in full trust under .NET 4.0 -->
		<loadFromRemoteSources enabled="true"/>
		<!-- Look for addins in the addins directory for now -->
		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
			<probing privatePath="lib;addins"/>
		</assemblyBinding>
	</runtime>
</configuration>
tools\TestCentric.Gui.Components.dll
md5: A5E0669F8103A80018E3169861ECA44E | sha1: FD7848FBD158AD5BDC5F298D0054519F5A600B38 | sha256: 85D3BF86D785ECF887F16CB0215D1AE67DD2287A48A98C5F17898371602519D4 | sha512: A283B16C289C2D34B0866F7857D18D8B78C7B41ADAB53FB96FDDC1E4F4CED5713E6BB262B48530CD02B5B9FD2DD26B93411B117584671E14A7DA311162941D39
tools\TestCentric.Gui.Components.pdb
 
tools\TestCentric.Gui.Model.dll
md5: 719D5F2F4098FF1A5A9F887A395C3899 | sha1: 773F9FC9FE2CF442B57ADEB406B11EFDD7780F7F | sha256: 24C36955572DE3C7C19F6009ED0CE8203DBC53ED07989701DC31ABC4B93AEADC | sha512: A656E6E77E16D7632163501712F71A727EEED002E827AC3497DE37B691FC3AA01060D1DCD531FFB7802AF2487DE312EDDDE31FAFA17EC3FAD7AD15A731B6F2EC
tools\TestCentric.Gui.Model.pdb
 
tools\TestCentric.Gui.Runner.dll
md5: 676AC377E7D0B198DC67B2246D059829 | sha1: C77492C50F0F37A09D8FBABA78D5B5C252231FE8 | sha256: 251A710DA176B03EAEC25174EE60ECA71783D0B03E29C947D1D208A40BA91B2A | sha512: CA622FE218CAC1D07900FE5596679CD146BD89FCD54DA4B11883548B62CB3780D785CE28A4B3EA6EC524A5F9568EC49D50CB3B96C342180E8F6BF22A2898ACF2
tools\TestCentric.Gui.Runner.pdb
 
tools\testcentric.pdb
 
tools\VERIFICATION.txt
VERIFICATION
Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.

This package is published by the author of the software, Charlie Poole.
Any binaries will be identical to other package types published by the 
author at https://github.com/TestCentric/testcentric-gui.

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
testcentric-gui 2.0.0-beta6 48 Wednesday, October 16, 2024 Approved
testcentric-gui 2.0.0-beta5 128 Thursday, May 16, 2024 Approved
testcentric-gui 2.0.0-beta4 557 Thursday, November 23, 2023 Approved
testcentric-gui 2.0.0-beta3-1 73 Wednesday, October 25, 2023 Approved
testcentric-gui 2.0.0-beta3 28 Sunday, October 22, 2023 Exempted
testcentric-gui 2.0.0-beta2 73 Monday, September 4, 2023 Approved
TestCentric Runner for NUnit 2.0.0-beta1 147 Tuesday, May 9, 2023 Exempted
TestCentric Runner for NUnit 2.0.0-alpha8 111 Tuesday, April 25, 2023 Approved
TestCentric Runner for NUnit 2.0.0-alpha7 65 Monday, February 6, 2023 Approved
TestCentric Runner for NUnit 2.0.0-alpha6 102 Saturday, June 18, 2022 Approved
TestCentric Runner for NUnit 2.0.0-alpha5 92 Saturday, May 14, 2022 Approved
TestCentric Runner for NUnit 2.0.0-alpha4 192 Sunday, October 3, 2021 Approved
TestCentric Runner for NUnit 2.0.0-alpha3 84 Thursday, September 30, 2021 Approved
TestCentric Runner for NUnit 2.0.0-alpha2 230 Sunday, August 15, 2021 Approved
TestCentric Runner for NUnit 2.0.0-alpha1 130 Thursday, July 1, 2021 Approved
TestCentric Runner for NUnit 1.6.4 1059 Friday, December 2, 2022 Approved
TestCentric Runner for NUnit 1.6.3 183 Monday, August 1, 2022 Approved
TestCentric Runner for NUnit 1.6.2 630 Thursday, March 25, 2021 Approved
TestCentric Runner for NUnit 1.6.1 231 Sunday, January 17, 2021 Approved
TestCentric Runner for NUnit 1.6.0 160 Monday, January 11, 2021 Approved
TestCentric Runner for NUnit 1.5.3 156 Thursday, December 24, 2020 Approved
TestCentric Runner for NUnit 1.5.2 170 Thursday, December 17, 2020 Approved
TestCentric Runner for NUnit 1.5.1 149 Tuesday, December 15, 2020 Approved
TestCentric Runner for NUnit 1.5.0 141 Wednesday, December 9, 2020 Approved
TestCentric Runner for NUnit 1.4.1 289 Friday, September 4, 2020 Approved
TestCentric Runner for NUnit 1.4.0 473 Friday, May 1, 2020 Approved
TestCentric Runner for NUnit 1.3.3 207 Saturday, April 18, 2020 Approved
TestCentric Runner for NUnit 1.3.3-rc1 160 Friday, April 17, 2020 Approved
TestCentric Runner for NUnit 1.3.2 238 Tuesday, April 7, 2020 Approved
TestCentric Runner for NUnit 1.3.1 269 Saturday, March 7, 2020 Approved
TestCentric Runner for NUnit 1.3.0 213 Tuesday, February 25, 2020 Approved
TestCentric Runner for NUnit 1.2.0 227 Sunday, February 16, 2020 Approved
TestCentric Runner for NUnit 1.1.0 415 Saturday, November 9, 2019 Approved
TestCentric Runner for NUnit 1.0.1 297 Friday, August 16, 2019 Approved
TestCentric Runner for NUnit 1.0.0 270 Saturday, July 27, 2019 Approved
TestCentric Runner for NUnit 1.0-beta4 213 Wednesday, July 17, 2019 Exempted
TestCentric Runner for NUnit 1.0-beta3 182 Sunday, July 14, 2019 Exempted
TestCentric Runner for NUnit 1.0-beta2 216 Thursday, May 30, 2019 Exempted
TestCentric Runner for NUnit 1.0-beta 221 Saturday, April 13, 2019 Exempted
TestCentric Runner for NUnit 1.0-alpha4 229 Saturday, April 6, 2019 Exempted
TestCentric Runner for NUnit 1.0-alpha3 218 Wednesday, February 27, 2019 Exempted
TestCentric Runner for NUnit 1.0-alpha2 237 Tuesday, November 13, 2018 Exempted
TestCentric Runner for NUnit 1.0-alpha1 244 Friday, August 3, 2018 Exempted

This package has no dependencies.

Discussion for the TestCentric Runner for NUnit Package

Ground Rules:

  • This discussion is only about TestCentric Runner for NUnit and the TestCentric Runner for NUnit package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or TestCentric Runner for NUnit, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus