xunit.v3.runner.common
Used to decorate xUnit.net test assemblies to indicate the availability of a custom
runner reporter.
Runner reporter registration attributes are only valid at the assembly level.
Gets the type of the runner reporter to be registered.
The runner reporter type must implement .
Interface implemented by runners, passed to , so that the
report can log lines of text to the output device.
Gets a lock object that can be used to ensure that multiple calls to
log messages will always be grouped together.
Logs a normal-priority message with stack frame.
The stack frame information
The message to be logged
Logs a high-priority message with stack frame.
The stack frame information
The message to be logged
Logs a warning message with stack frame.
The stack frame information
The message to be logged
Logs an error message with stack frame.
The stack frame information
The message to be logged
Logs a messages with as little processing as possible. For example, the console runner will
not attempt to set the color of the text that's being logged. This is most useful when attempting
to render text lines that will be processed, like for TeamCity.
The message to be logged.
Waits for an acknowledgement of a message.
This is primarily for use by so that it can wait for acknowledgment
of messages when running in synchronous mode by the in-process runner. Other runner loggers running outside
this context (and/or when not in synchronous automated mode) should NOOP for this.
This interface represents a reporter which is invoked by a test runner
during test execution. The report can be explicitly invoked by a command
line switch or implicitly invoked by being environmentally enabled (for
example, a reporter that emits messages for TeamCity).
Gets a value which indicates if it's possible for this reporter to be environmentally
enabled.
Note that this differs from which checks to see whether
the conditions currently exist to environmentally enable the reporter. This value is used when
constructing the console runner help output that lists which runners might be environmentally
enabled.
Gets the description of the reporter. This is typically used when showing
the user the invocation option for the reporter.
Gets a value which indicates whether this runner wishes to force no logo.
Useful for runners which are designed for purely parseable output
(for example, ).
Gets a value which indicates whether the reporter should be
environmentally enabled.
When a runner reporter is environmentally enabled in Microsoft Testing Platform
CLI mode (or dotnet test), by default all realtime output is filtered except
calls to (unless the user has specified the
--xunit-info switch). Environmentally enabled reporters that require
realtime console output (for example, to send formatted messages to a CI system
which parses the console output) must use to
ensure those messages will always be visible. All other messages will always be
output to the Microsoft Testing Platform diagnostic logs, which are enabled via
the --diagnostic switch.
Gets a value which indicates a runner switch which can be used
to explicitly enable the runner. If the return value is null,
then the reported can only be environmentally enabled (implicitly).
This value is used either as a command line switch (with the console or
.NET CLI runner) or as a runner configuration value (with the MSBuild runner).
Runner switches are only used in xUnit.net native CLI mode. When Microsoft
Testing Platform CLI mode is enabled, reporters are only supported via environmental
enablement, since MTP generally controls all the normal output.
Creates a message handler that will report messages for the given
test assembly.
The logger used to send result messages to
An optional message sink that diagnostic messages can be sent to.
The message handler that handles the messages
Indicates a message sink that's designed for use with runner reporters. In particular, this allows
runner reporters to implement and forces runners to dispose of the message
handler that's returned to them.
This class is used to read JSON-based configuration information for a test assembly.
Loads the test assembly configuration for the given test assembly.
The configuration object to write the values to.
The test assembly.
The test assembly configuration file.
A container to receive loading warnings, if desired.
A flag which indicates whether configuration values were read.
Loads the test assembly configuration for the given test assembly.
The configuration object to write the values to.
The configuration JSON, as a string
A container to receive loading warnings, if desired.
A flag which indicates whether configuration values were read.
A flag which indicates whether configuration values were read.
Utilities for reading configuration values.
Gets the regular expression that matches the multiplier-style value for maximum
parallel threads (that is, '0.5x', '2x', etc.).
Extensions methods for .
Logs a normal-priority message.
The logger
The message to be logged
Logs a normal-priority formatted message.
The logger
The format of the message to be logged
The format arguments
Logs a normal-priority formatted message with stack frame.
The logger
The stack frame information
The format of the message to be logged
The format arguments
Logs a high-priority message.
The logger
The message to be logged
Logs a high-priority formatted message.
The logger
The format of the message to be logged
The format arguments
Logs a high-priority formatted message with stack frame.
The logger
The stack frame information
The format of the message to be logged
The format arguments
Logs a warning message.
The logger
The message to be logged
Logs a formatted warning message.
The logger
The format of the message to be logged
The format arguments
Logs a formatted warning message with stack frame.
The logger
The stack frame information
The format of the message to be logged
The format arguments
Logs an error message.
The logger
The message to be logged
Logs a formatted error message.
The logger
The format of the message to be logged
The format arguments
Logs a formatted error message with stack frame.
The logger
The stack frame information
The format of the message to be logged
The format arguments
Logs a messages with as little processing as possible. For example, the console runner will
not attempt to set the color of the text that's being logged. This is most useful when attempting
to render text lines that will be processed, like for TeamCity.
The logger
The format of the message to be logged
The format arguments
Represents a filter run against a test case (and the associated assembly it resides in).
Determines whether the given passes the filter.
The simple assembly name without file extension
The test case to be checked against the filter
This class is used to parse a graphy query.
See for the query filter language description.
Parse and return a filter that represents the query.
Represents the ability to track query filters or simple filters. Any attempt
to add a mix of the two will result in an exception.
Gets a flag indicating whether there are any active filters.
Adds a simple filter which excludes a fully qualified class name.
The filter query
The query may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a simple filter which excludes a fully qualified method name. A fully qualified
method name is in the form of "FullyQualifiedTypeName.MethodName".
The filter query
The query may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a simple filter which excludes a namespace.
The filter query
The query may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a simple filter which excludes tests with the given name/value pair.
The name of the trait
The value of the trait
The name and/or value may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a simple filter matching a fully qualified class name.
The query may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a simple filter which matches a fully qualified method name. A fully qualified
method name is in the form of "FullyQualifiedTypeName.MethodName".
The filter query
The query may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a simple filter which matches a namespace.
The filter query
The query may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a simple filter which matches tests with the given name/value pair.
The name of the trait
The value of the trait
The name and/or value may begin and/or end with * to add as a wildcard. No other wildcards
are permitted in any other locations.
Adds a query filter.
For more information on the query syntax, see
Gets the command-line arguments to pass to an xUnit.net v3 test assembly to perform
the filtering contained within this filter.
Indicates the current level of app domain support that's in effect,
for use by runner reporters.
App domains are not supported by the current platform
App domains are supported, but currently disabled
App domains are supported and currently enabled
Indicates the level of app domain support that the runner is requesting. Note that these values
are only valid for v1 and v2 tests; v3 tests always run in a separate process rather than
in the runner process.
Requests that app domains be used for v1 and v2 tests, if available; if app domains cannot
be used, then the tests will be discovered and run in the runner's app domain.
Requires that v1 and v2 tests run in a separate app domain. Can only be requested by runners
written in .NET Framework.
Requires that v1 and v2 tests be run in the runner's app domain.
Extension methods for
Determines if the value is a valid enum value.
Collects execution totals for a group of test cases.
Gets or set the total number of tests run.
Gets or sets the number of failed tests.
Gets or sets the number of skipped tests.
Gets or sets the number of tests not run.
Gets or sets the total execution time for the tests.
Gets or sets the total errors (i.e., cleanup failures) for the tests.
Represents a provider which gives source line information for a test case after discovery has
completed. This is typically provided by a third party runner (for example, the VSTest plugin provides
this via DiaSession from Visual Studio). It's used to supplement test case metadata when the discovery
process itself cannot provide source file and line information.
Returns the source information for a test case.
The test class name, if known
The test method name, if known
The source information, with null string and int values when the information is not available.
Note: return value should never be null, only the interior data values inside.
Designates the format that the test list should take.
Lists the information in JSON (machine readable) format
Lists the information in plain text (human readable) format
Indicates the kind of list a runner should generate, rather than running tests.
Lists all the classes in the assembly which contain tests.
Lists the test cases as discovery objects (only valid for the in-process runner).
Lists full metadata about the test discovery.
Lists all the methods in the assembly which contain a test.
Lists all the tests (as display name) in the assembly.
Lists all the traits that are generated from the assembly.
Represents information about long running tests from .
Configured notification time
Tests
Represents information about long running tests from .
Configured notification time
Tests
A null implementation of which always returns empty
source information. Get the singleton via .
Gets the singleton instance of the .
Represents available parallelism options
Do not parallelize any tests.
Run tests in different assemblies in parallel
Run tests in different test collections in parallel
Enable maximum parallelization
Source information returned by .
The source file, if known
The line number, if known
Source information returned by .
The source file, if known
The line number, if known
Gets a singleton instance of that represents no source information.
Gets the source file, if known; null, otherwise
Gets the source line number, if known; null, otherwise
Represents the top of a stack frame, typically taken from an exception or failure information.
The file name from the stack frame
The line number from the stack frame
Represents the top of a stack frame, typically taken from an exception or failure information.
The file name from the stack frame
The line number from the stack frame
Gets the filename of the stack frame. May be null if the stack frame is not known.
Returns true if this is an empty stack frame (e.g., ).
Gets the line number of the stack frame. May be 0 if the stack frame is not known.
Get a default (unknown) stack frame info.
Creates a stack frame info from error metadata.
The error to inspect
The stack frame info
Represents the configuration items set in the configuration file of a test assembly.
Should be read with the class.
Initalizes a new instance of the class.
Gets or sets a flag indicating whether an app domain should be used to discover and run tests.
Gets or sets a flag indicating whether an app domain should be used to discover and run tests.
If the flag is not set, returns the default value ().
Gets a value which indicates the maximum object depth to compare when using Assert.Equivalent.
Gets or sets the desired culture to run the tests under. Use null (default) to
indicate that we should use the default OS culture; use an empty string to indicate that
we should use the invariant culture; or use any culture value that is valid for
calling .
Gets or sets a flag indicating that the end user wants diagnostic messages
from the test framework.
Gets a flag indicating that the end user wants diagnostic messages
from the test framework. If the flag is not set, returns the default
value (false).
Gets or sets a flag indicating how explicit tests should be handled.
Gets a flag indicating how explicit tests should be handled. If the flag
isn't set, returns the default value ().
Gets or sets a flag indicating that skipped tests should be converted into
failed tests.
Gets a flag indicating that skipped tests should be converted into failed
tests. If the flag is not set, returns the default value (false).
Gets or sets a flag indicating that passing tests with warnings should be
converted into failed tests.
Gets or sets a flag indicating that passing tests with warnings should be
converted into failed tests. If the flag is not set, returns the default
value (false).
Gets the list of filters used during test discovery.
Gets or sets a flag indicating that discovery should include source information
for the test cases.
Gets a flag indicating that discovery should include source information for the
test cases. If the flag is not set, returns the default value (false).
Gets or sets a flag indicating that the end user wants internal diagnostic messages
from the test framework.
Gets a flag indicating that the end user wants internal diagnostic messages
from the test framework. If the flag is not set, returns the default
value (false).
Gets the number of seconds that a test can run before being considered "long running". Set to a positive
value to enable the feature.
Gets the number of seconds that a test can run before being considered "long running". If the value is not
set, returns the default value (-1).
Gets or sets the maximum number of thread to use when parallelizing this assembly. A value of null
or 0 indicates that the default should be used (); a value of
-1 indicates that tests should run with an unlimited-sized thread pool.
Gets the maximum number of thread to use when parallelizing this assembly.
If the value is not set, returns the default value ().
Gets or sets the default display name for test methods.
Gets the default display name for test methods. If the value is not set, returns
the default value ().
Gets or sets the default display options for test methods.
Gets the default display options for test methods. If the value is not set, returns
the default value ().
Gets or sets the algorithm to be used for parallelization.
Gets or sets the algorithm to be used for parallelization.
Gets or sets a flag indicating that this assembly is safe to parallelize against
other assemblies.
Gets a flag indicating that this assembly is safe to parallelize against
other assemblies. If the flag is not set, returns the default value (false).
Gets or sets a flag indicating that this test assembly wants to run test collections
in parallel against one another.
Gets a flag indicating that this test assembly wants to run test collections
in parallel against one another. If the flag is not set, returns the default
value (true).
Gets or sets a flag indicating whether theory data should be pre-enumerated during
test discovery.
Gets a value indicating the maximum length for printing collections.
Gets a value indicating the maximum recursive depth when printing objects.
Gets a value indicating the maximum members to show when printing objects.
Gets a value indicating the maximum length for printing string values.
Gets or sets the seed value used for randomization. Only supported for v3 or later test assemblies.
Gets or sets a flag indicating whether shadow copies should be used.
Gets a flag indicating whether shadow copies should be used. If the flag is not set,
returns the default value (true).
Gets or sets the folder to be used for shadow copy files. If the value is not set,
the system defaults for shadow copying are used.
Gets or sets a flag indicating whether output from should be
shown live as they're logged (in addition to being collected together after the test finishes).
Gets a flag indicating whether output from should be
shown live as they're logged (in addition to being collected together after the test finishes).
If the flag is not set, returns the default value (false).
Gets or sets a flag indicating whether testing should stop on a failure.
Gets a flag indicating whether testing should stop on a test failure. If the flag is not set,
returns the default value (false).
Gets or sets a flag indicating that synchronous message reporting is desired.
Gets a flag indicating that synchronous message reporting is desired. If the flag is not set,
returns the default value (false).
Represents options passed to a test framework for discovery or execution.
INTERNAL METHOD, FOR TESTING PURPOSES ONLY. DO NOT CALL.
Creates an instance of for discovery purposes.
The configuration to copy values from.
Creates an instance of for discovery purposes.
The serialized discovery options.
Creates an instance of for execution purposes.
The configuration to copy values from.
Creates an instance of for execution purposes.
The serialized execution options.
Gets a value from the options collection.
The type of the value.
The name of the value.
Returns the value.
Sets a value into the options collection.
The type of the value.
The name of the value.
The value.
Represents the configuration settings for a test runner which are independent of the test
assembly. Are usually passed via command line or some other equivalent mechanism. Accessed
via ..
Initializes a new instance of the class.
Gets or sets a flag which indicates whether the runner should return assembly
information rather than listing or executing tests.
Gets a flag which indicates whether the runner should return assembly information
rather than listing or executing tests. If the flag is not specified, returns the
default value (false).
Gets the environment variable name used to test for the user requesting no color output.
Gets the time (in milliseconds) that the crash detection sink will wait after process termination
for timely message dispatch, to determine if the process exited cleanly or crashed.
Gets the time (in milliseconds) that the crash detection sink will wait after process termination
for timely message dispatch, to determine if the process exited cleanly or crashed. If the value
isn't set, returns the default value (60 seconds).
Gets or sets a flag which indicates whether the runner should attempt to attach the debugger
before running any tests.
Gets a flag which indicates whether the runner should attempt to attach the debugger
before running any tests. If the flag is not specified, returns the default value
(false).
Gets or sets a flag which indicates whether the runner should ignore test failures.
Gets a flag which indicates whether the runner should ignore test failures. If the
flag is not specified, returns the default value (false).
Gets or sets a flag to indicate that we should list things instead of run them
(and what we're listing, and in what format).
The output files that should be generated from the test run. The key is
the output type, and the value is the output filename. The output type matches
the property on the transforms available in
..
Gets or sets a flag indicating that the test runner should not attempt to use any
automatically (aka environmentally) enabled reporters.
Gets a flag indicating that the test runner should not attempt to use any automatically
(aka environmentally) enabled reporters. If the flag is not set, returns the default
value (false).
Gets or sets a flag indicating that the test runner should not output any color codes
when writing text to the console.
Gets a flag indicating that the test runner should not output any color codes when writing
text to the console. If the flag is not set, returns true if the user has defined
the NO_COLOR environment variable, or false otherwise.
Gets or sets a flag indicating that the test runner should not output the copyright
information.
Gets a flag indicating that the test runner hsould not output the copyright information.
If the flag is not set, returns the default value (false).
Gets or sets a flag indicating that the test runner should pause before running any
tests.
Gets a flag indicating that the test runner should pause before running any tests.
If the flag is not set, returns the default value (false).
Gets or sets a flag indicating that ANSI color usage should be forced on Windows.
ANSI color is always used for non-Windows.
Gets a flag indicating that ANSI color usage should be forced on Windows. ANSI color is
always used for non-Windows. If the flag is not set, returns the default value (false).
Gets or sets a flag indicating that the test runner should pause after all tests
have run.
Gets a flag indicating that the test runner should pause after all tests have run.
If the flag is not set, returns the default value (false).
Gets or sets a flag indicating that the test runner should wait for a debugger to be
attached before performing any actions.
Gets a flag indicating that the test runner should wait for a debugger to be attached
before performing any actions. If the flag is not set, returns the default value (false).
Represents a project which contains zero or more test assemblies, as well as global
(cross-assembly) configuration settings.
Initializes a new instance of the class.
Gets the assemblies that are in the project.
Gets the configuration values for the test project.
Gets a flag indicating whether has been set yet or not.
Gets or sets the runner reporter.
Adds an assembly to the project.
The assembly to add to the project.
Create an instance of populated by launch options.
The project that is our template to copy from
The launch options
Represents an assembly in an .
Initializes a new instance of the class
The project this assembly belongs to.
The assembly filename
The assembly metadata
Gets or sets the assembly under test. May be null when the test assembly is not
loaded into the current .
Gets the assembly display name.
Gets or sets the assembly file name.
Gets or sets the metadata about the assembly.
Gets or sets the config file name.
Gets the configuration values for the test assembly.
Gets an identifier for the current assembly. This is guaranteed to be unique, but not necessarily repeatable
across runs (because it relies on ).
Gets the project that this project assembly belongs to.
Gets a list of serialized test cases to be run. If the list is empty, then all test cases
(that match the filters) will be run.
Create an instance of populated by front controller settings.
The settings
Create an instance of populated by front controller settings.
The settings
Create an instance of populated by front controller settings.
The settings
An implementation of which logs messages to
a (typically the one from ).
Initializes a new instance of the class.
A flag to indicate whether colors should be used when
logging messages.
A flag to indicate whether ANSI colors should be
forced on Windows.
The helper for writing console output.
A flag to indicate whether the logger should wait
for acknowledgments or not
Writes a (non-colored) message. If is false, all ANSI-SGR sequences will be
removed prior to writing.
Message to write
See for details about ANSI-SGR.
An implementation of which is given to ProjectAssemblyRunner.Run,
which only uses to send occasional JSON-encoded messages. This will decode
them and send them along to the correct message sink.
An implementation of which is given to ProjectAssemblyRunner.Run,
which only uses to send occasional JSON-encoded messages. This will decode
them and send them along to the correct message sink.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of , with serialization and deserialization support.
Because of deserialization, all concrete message sink message types must have a parameterless public
constructor that will be used to create the message for deserialization purposes, and must be decorated
with to set a unique type ID for deserialization purposes.
Empty traits, to be used to initialize traits values in messages.
Gets the string value that message properties will return, when a value was not provided
during deserialization.
Override to deserialize the values in the dictionary into the message.
The root of the JSON object
Initializes a new instance of the see class.
Override to serialize the values in the message into JSON.
The serializer to write values to.
Converts a string array into a display value, for use in an overload.
Converts am array into a display value, for use in an overload.
Creates a JSON serialized version of this message.
Thrown if the message class does not have a .
Thrown when one or more properties are missing values.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Default implementation of .
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Creates a new instance of the class.
Creates a new instance of the class with
the provided message.
The diagnostic message
Creates a new instance of the class with
the provided message format and single argument.
The message format string
The value to replace {0} in the format string.
Creates a new instance of the class with
the provided message format and two arguments.
The message format string
The value to replace {0} in the format string.
The value to replace {1} in the format string.
Creates a new instance of the class with
the provided message format and three arguments.
The message format string
The value to replace {0} in the format string.
The value to replace {1} in the format string.
The value to replace {2} in the format string.
Creates a new instance of the class with
the provided message format and multiple arguments.
The message format string
An object array that contains zero or more objects to format.
Default implementation of .
Note: Will be 0 if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Default implementation of .
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Creates a new instance of the class.
Creates a new instance of the class with
the provided message.
The diagnostic message
Creates a new instance of the class with
the provided message format and single argument.
The message format string
The value to replace {0} in the format string.
Creates a new instance of the class with
the provided message format and two arguments.
The message format string
The value to replace {0} in the format string.
The value to replace {1} in the format string.
Creates a new instance of the class with
the provided message format and three arguments.
The message format string
The value to replace {0} in the format string.
The value to replace {1} in the format string.
The value to replace {2} in the format string.
Creates a new instance of the class with
the provided message format and multiple arguments.
The message format string
An object array that contains zero or more objects to format.
Reports that runner has just finished discovery for a test assembly. This message will
arrive after the test framework's message, and contains
the project metadata associated with the discovery.
This message does not support serialization or deserialization.
Gets information about the assembly being discovered.
Gets the options that were used during discovery.
Gets the count of the number of test cases that will be run (post-filtering).
Reports that runner is about to start discovery for a test assembly. This message will
arrive before the test framework's message, and
contains the project metadata associated with the discovery.
This message does not support serialization or deserialization.
Gets a flag which indicates whether the tests will be discovered and run in a
separate app domain.
Gets information about the assembly being discovered.
Gets the options that will be used during discovery.
Gets a flag which indicates whether shadow copies are being used. If app domains are
not enabled, then this value is ignored.
Reports that runner is about to start execution for a test assembly. This message will
arrive after the test framework's message, and
contains the project metadata associated with the execution.
This message does not support serialization or deserialization.
Gets information about the assembly being executed.
Gets the options that was used during execution.
Gets the summary of the execution results for the test assembly.
Reports that runner is about to start execution for a test assembly. This message will
arrive before the test framework's message, and
contains the project metadata associated with the discovery.
This message does not support serialization or deserialization.
Gets information about the assembly being executed.
Gets the options that will be used during execution.
Gets the seed value used for randomization. If null, then the test framework does not
support setting a randomization seed. (For stock versions of xUnit.net, support for settable
randomization seeds started with v3.)
Reports multi-assembly test execution summary information.
This message does not support serialization or deserialization.
Gets the clock time elapsed when running the tests. This may different significantly
from the sum of the times reported in the summaries, if the runner chose to run
the test assemblies in parallel.
Gets the summaries of all the tests run. The key is the unique ID of the test
assembly; the value is the summary of test execution for that assembly.
Add assembly summary information.
The unique ID of the assembly
The execution summary
Default implementation of .
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
The unique ID of the assembly
Default implementation of .
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be an empty dictionary if there was no value provided during deserialization.
Default implementation of .
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
The unique ID of the assembly
The unique ID of the test collectioon
The (optional) unique ID of the test class
The (optional) unique ID of the test method
The unique ID of the test case
Default implementation of .
Note: Will be false if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be an empty dictionary if there was no value provided during deserialization.
Default implementation of .
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Default implementation of .
Note: Will be false if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be an empty dictionary if there was no value provided during deserialization.
Default implementation of .
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
The unique ID of the assembly
The unique ID of the test collectioon
The (optional) unique ID of the test class
Default implementation of .
Default implementation of .
Default implementation of .
Default implementation of .
Default implementation of
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Note: Will be null if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be an empty dictionary if there was no value provided during deserialization.
Default implementation of .
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
The unique ID of the assembly
The unique ID of the test collectioon
The (optional) unique ID of the test class
The (optional) unique ID of the test method
The unique ID of the test case
The unique ID of the test
Default implementation of .
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
The unique ID of the assembly
The unique ID of the test collectioon
Default implementation of .
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Default implementation of .
Note: Will be null if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be an empty dictionary if there was no value provided during deserialization.
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
The unique ID of the assembly
The unique ID of the test collectioon
The (optional) unique ID of the test class
The (optional) unique ID of the test method
The unique ID of the test case
The unique ID of the test
The execution time of the test (may be null if the test wasn't executed)
The (optional) output from the test
The (optional) warnings that were recorded during test execution
The time when the test finished executing; defaults to
Default implementation of .
Note: Will be an empty dictionary if there was no value provided during deserialization.
An empty set of attachments that can be used when none are provided.
Default implementation of .
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Note: Will be an empty array if there was no value provided during deserialization.
Creates a new constructed from an object.
The exception to use
The unique ID of the assembly
The unique ID of the test collectioon
The (optional) unique ID of the test class
The (optional) unique ID of the test method
Default implementation of .
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Default implementation of .
Note: Will be null if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be an empty dictionary if there was no value provided during deserialization.
Default implementation of .
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Default implementation of .
Note: Will be if there was no value provided during deserialization.
Default implementation of .
Note: Will be false if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be if there was no value provided during deserialization.
Note: Will be 0 if there was no value provided during deserialization.
Note: Will be an empty dictionary if there was no value provided during deserialization.
An implementation of that reports results to AppVeyor. This
is auto-enabled by the presence of the "APPVEYOR_API_URL" environment variable, which points
to the AppVeyor API endpoint that is used to report tests. It has no switch for manual
enablement, since the API endpoint is required.
An implementation of that supports .
Initializes a new instance of the class.
The logger used to report messages
The base AppVeyor API URI
The default implementation of , used by runners when there is no other
overridden reporter. It returns an instance of .
An implementation of that supports .
Gets the environment variable that's used to hide passing tests with output
when diagnostics messages are enabled.
Initializes a new instance of the class.
The logger used to report messages
Get the logger used to report messages.
Gets the metadata cache.
Escapes text for display purposes.
The text to be escaped
The escaped text
Escapes multi-line text for display purposes, indenting on newlines.
The text to be escaped
The indent to use for multiple line text
The escaped text
Gets the display name of a test assembly from a test assembly message.
The test assembly
The assembly display name
Get the test framework options for the given assembly. If it cannot find them, then it
returns a default set of options.
The test assembly filename
Logs an error message to the logger.
The failure information
The type of the failure
Logs an error message to the logger.
The failure information
The type of the failure, in message format
The arguments to format with
Logs a stack trace to the logger.
Logs test output to the logger.
Logs warnings to the logger.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Called when is raised.
An object that contains the event data.
Writes the default summary to the given logger. Can be used by other reporters who also wish to write the
standard summary information.
The logger used to send result messages to.
The execution summary to display.
An implementation of that reports results as individual JSON
objects on the console.
An implementation of that supports .
Initializes a new instance of the class.
The logger used to report messages
An implementation of that supports .
Initializes a new instance of the class.
The logger used to report messages
An implementation of that emits only error or warning messages.
An implementation of that supports .
Initializes a new instance of the class.
The logger used to report messages
An implementation of that does not report any
messages. Typically only used in context with the VSTest adapter, to prevent
double reporting of messages
An implementation of that
supports .
An implementation of that reports results to TeamCity. This
is auto-enabled by the presence of the "TEAMCITY_PROJECT_NAME" environment variable.
An implementation of that supports .
The logger used to report messages
The root flow ID for reporting to TeamCity
An implementation of that supports .
The logger used to report messages
The root flow ID for reporting to TeamCity
Gets the current date & time in UTC.
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Handles instances of .
Escapes a string to be sent in a TeamCity message.
The value to be escaped
The escaped value
An implementation of that supplements the default reporter
behavior by printing out the start and finish of each executing test.
An implementation of that supports .
Initializes a new instance of the class.
The logger used to report messages
An implementation of that reports results to Azure DevOps/VSTS.
This is auto-enabled by the presence of four required environment variables: "VSTS_ACCESS_TOKEN",
"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI", "SYSTEM_TEAMPROJECT", and "BUILD_BUILDID".
An implementation of that supports .
Initializes a new instance of the class.
The logger used to report messages
The base URI for talking to Azure DevOps/VSTS
The access token required to talk to Azure DevOps/VSTS
The ID of build that's currently being run
An implementation of that supports .
Initializes a new instance of the class.
The logger used to report messages
The base URI for talking to Azure DevOps/VSTS
The access token required to talk to Azure DevOps/VSTS
The ID of build that's currently being run
Utility class for enumerating the runner reporters registered for the given assembly.
Gets the list of rrunner reporters registered for the given assembly.
The assembly
Messages that were generated during discovery
List of available reporters
Used to decorate xUnit.net test assemblies to indicate the availability of a custom
runner reporter.
The type of the runner reporter to register. The type
must implement .
Used to decorate xUnit.net test assemblies to indicate the availability of a custom
runner reporter.
The type of the runner reporter to register. The type
must implement .
An implementation of which dispatches messages
to one or more individual message sinks.
The list of event dispatchers that are registered with the system.
Gets a dispatcher, optionally creating and registering it if it doesn't exist.
The type of the dispatcher
The dispatcher
The dispatcher
Logs diagnostic messages to the system console.
Tries to create a new instance of the which will display instances
of and to the .
May return null if both and
are false.
The helper used to write console messages
A flag to indicate that the user has asked for no color
A flag to indicate whether diagnostic messages should be shown
A flag to indicate whether internal diagnostic messages should be shown
The optional assembly display name to delineate the messages
Whether to indent the message
Class that maps diagnostic messages to events.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Class that maps test framework discovery messages to events.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Class that maps test framework execution messages to events.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Occurs when a message is received.
Represents a handler for a message, which includes the ability to signal that
tests should stop running.
The type of the message to be handled.
The message.
Allows cancellation during message handling.
Gets a value to indicate whether stop has been requested.
Call to indicate that execution should stop.
Wraps a message with the ability to cancel execution.
The type of the message to be handled.
The message to be handled.
Wraps a message with the ability to cancel execution.
The type of the message to be handled.
The message to be handled.
Gets the message.
Class that maps test runner messages to events.
Occurs when the runner is starting discovery for a given test assembly.
Occurs when the runner has finished discovery for a given test assembly.
Occurs when the runner has finished executing the given test assembly.
Occurs when the runner is starting to execution the given test assembly.
Occurs when the runner has finished executing all test assemblies.
This is the execution sink which most runners will use, which can perform several operations
(including recording XML results, detecting long running tests, failing skipped tests,
failing tests with warnings, and converting the top-level discovery and execution messages
into their runner counterparts).
Initializes a new instance of the class.
The assembly under test.
The options used during test discovery.
The options used during test execution.
A flag to indicate whether app domains are in use.
A flag to indicate whether shadow copying is in use.
The inner sink to forward messages to (typically the reporter
message handler, retrieved by calling
on the runner reporter)
The options to use for the execution sink
Initializes a new instance of the class.
The assembly under test.
The options used during test discovery.
The options used during test execution.
A flag to indicate whether app domains are in use.
A flag to indicate whether shadow copying is in use.
The inner sink to forward messages to (typically the reporter
message handler, retrieved by calling
on the runner reporter)
The options to use for the execution sink
The source information provider
Returns the current time in UTC. Overrideable for testing purposes.
Performs a Task-safe delay. Overrideable for testing purposes.
These are the options used when creating . This is
set up as an options class so that new options can be added without breaking
binary compatibility.
Gets or sets the assembly element used for creating XML. If this is null,
then XML will not be created.
Gets or sets a thunk to be used to determine whether cancellation has been requested.
Gets or sets the diagnostic message sink to report diagnostic messages to. In order
for long running tests to be reported, this must not be null.
Gets or sets a callback to be called when execution is complete.
Gets or sets a flag indicating whether skipped tests should be reported as failed
tests. If this is not true, then skipped tests will be reported as skipped.
Gets or sets a flag indicating whether passing tests with warnings should be
reported as failed tests. If this is not true, then passing tests with
warnings will be reported as passing tests.
Gets or sets a callback to be called when a long running test has been detected.
Gets or sets the time after which to report long running tests. If the time span
specified here is not greater than , then long running
tests will not be detected.
An implementation of designed for test discovery for a
single test assembly. The event is triggered when discovery is complete.
Initializes a new instance of the class.
An optional thunk which can be used to control cancellation.
Gets the event sink used to record discovery messages.
Gets an event which is signaled once discovery is finished.
The list of discovered test cases.
An implementation of that provides access to events for all
levels of reporting.
Gets a list of diagnostics events that can be subscribed to.
Gets a list of discovery events that can be subscribed to.
Gets a list of execution events that can be subscribed to.
Gets a list of runner events that can be subscribed to.
Represents a single report transformation from XML.
The transform ID
The transform description
The handler which will write the v2 XML to the given file
Represents a single report transformation from XML.
The transform ID
The transform description
The handler which will write the v2 XML to the given file
Gets the transform ID.
Gets description of the transformation. Suitable for displaying to end users.
Gets the output handler for the transformation. Converts XML to a file on the
file system.
Used to retrieve a list of available
Gets the list of available transforms.
Creates the root "assemblies" XML element.
Finishes the assemblies element by supplementing with summary attributes.
Gets the list of XML transformer functions for the given project.
The project to get transforms for.
The list of transform functions.
Runs the transformation for the given ID and XML, and writes it to the given output file.
The transform ID
The assembly XML to transform
The output file name
Represents metadata about an assembly.
Initializes a new instance of the class.
The xUnit.net version (0 = unknown, or 1/2/3)
The target framework
Gets the target framework identifier the assembly was built against.
Gets the version of the target framework identifier that the assembly was built against.
Gets the major version of xUnit.net this assembly targets (1, 2, or 3); may return a value
of 0 if the version is unknown.
This class helps write colored text to the console. On Windows, it will use the built-in
console functions; on Linux and macOS, it will use ANSI color codes.
Initializes a new instance of the class.
The for the console (typically ).
The for the console (typically ).
Gets a lock object that can be used to lock multiple calls to
functions to ensure consistent output.
Equivalent to .
Equivalent to .
Equivalent to .
Gets a line of input from the console.
Force using ANSI color instead of deciding based on OS.
Writes the string value to the console.
Writes a formatted string value to the console.
The message format string
The value to replace {0} in the format string
Writes a formatted string value to the console.
The message format string
The value to replace {0} in the format string
The value to replace {1} in the format string
Writes a formatted string value to the console.
The message format string
The value to replace {0} in the format string
The value to replace {1} in the format string
The value to replace {2} in the format string
Writes a formatted string value to the console.
The message format string
An object array that contains zero or more objects to format.
Writes to the console.
Writes the string value to the console, followed by .
Writes a formatted string value to the console, followed by .
The message format string
The value to replace {0} in the format string
Writes a formatted string value to the console, followed by .
The message format string
The value to replace {0} in the format string
The value to replace {1} in the format string
Writes a formatted string value to the console, followed by .
The message format string
The value to replace {0} in the format string
The value to replace {1} in the format string
The value to replace {2} in the format string
Writes a formatted string value to the console, followed by .
The message format string
An object array that contains zero or more objects to format.
Helper class to list project contents out to .
List the contents of the test cases to the console, based on the provided option and format.
Caches message metadata for xUnit.net v3 messages. The metadata which is cached depends on
the message that is passed (for example, looking up with an
will return an ). Storage methods require the "Starting" versions
of messages (as these are the ones which contain the metadata), and removal methods require the
"Finished" versions of messages.
Sets into the cache.
The message that contains the metadata.
Sets into the cache.
The message that contains the metadata.
Sets into the cache.
The message that contains the metadata.
Sets into the cache.
The message that contains the metadata.
Sets into the cache.
The message that contains the metadata.
Sets into the cache.
The message that contains the metadata.
Attempts to retrieve from the cache (and optionally remove it).
The unique ID of the assembly to retrieve.
Set to true to remove the metadata after retrieval.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache (and optionally remove it).
The unique ID of the test case to retrieve.
Set to true to remove the metadata after retrieval.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache (and optionally remove it).
The unique ID of the test class to retrieve.
Set to true to remove the metadata after retrieval.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache (and optionally remove it).
The unique ID of the test collection to retrieve.
Set to true to remove the metadata after retrieval.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache (and optionally remove it).
The unique ID of the test method to retrieve.
Set to true to remove the metadata after retrieval.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache (and optionally remove it).
The unique ID of the test to retrieve.
Set to true to remove the metadata after retrieval.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache, and if present,
removes the metadata from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache, and if present,
removes the metadata from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache, and if present,
removes the metadata from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache, and if present,
removes the metadata from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache, and if present,
removes the metadata from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
Attempts to retrieve from the cache, and if present,
removes the metadata from the cache.
The message that indicates which metadata to retrieve.
The cached metadata, if present; or null if there isn't any.
A class which understands how to deserialize instances that are decorated
with . The built-in messages are registered by default, and additional messages
can be registered via .
Parses a previously serialized -derived object.
The serialized value
The mesage sink to report
The deserialized object
Registers an implementation of and , decorated
with so that it can be deserialized by the runner pipeline.
The message type to register
Transforms stack frames and stack traces into compiler-like output
so they can be double-clicked in Visual Studio.
Transforms an individual stack frame.
The stack frame to transform
The default directory used for computing relative paths
The transformed stack frame
Transforms a stack.
The stack to transform
The default directory used for computing relative paths
The transformed stack
Represents the target framework identifier that an assembly is targeting
The target framework is unknown.
The target framework is .NET Framework.
The target framework is .NET or .NET Core.
This is the class that wraps the data expected to be returned when invoking a v3 test project with
the -assemblyInfo switch.
Initializes a new instance of the class.
The version of xunit.v3.core
The informational verison of xunit.v3.core
The target framework the test assembly was built against
The display name of the test framework
Gets the value returned by .
This is returned as a string value rather than the enum value, given the variance of available values spanning
across operating systems and frameworks.
Gets the value returned by .
This is returned as a string value rather than the enum value, given the variance of available values spanning
across operating systems and frameworks.
Gets the assembly version of xunit.v3.core.dll.
Gets the informational assembly version of xunit.v3.core.dll.
Gets the bit-size of pointers in the test process (i.e., * 8).
Gets the value returned by .
Gets the target framework the test process was built for, as embedded into the assembly-level
attribute . In the rare condition that
this attribute is missing, this will return UnknownTargetFramework.
Gets the value returned by . The default
test framework will return a value like "xUnit.net v3 <core-framework-informational>".
Rehydrates an instance of from the given JSON.
The JSON serialization
Gets this object in JSON format, which can be rehydrated with .
Extension methods for .
Handles a message of a specific type by testing it for the type, as well as verifying that there
is a registered callback.
The message to dispatch.
The callback to dispatch the message to.
Returns true if processing should continue; false otherwise.
Converts an instance of into for reporting
back to a remote meta-runner.
Creates a new , replacing the source file and line number information
with the provided values.
The source file
The line number
Creates a new , replacing the source file and line number information
with values from the source information provider.
The source information provider
Creates a new , replacing the source file and line number information
with the provided values.
The source file
The line number
Creates a new , replacing the source file and line number information
with values from the source information provider.
The source information provider
Extension methods for reading and writing
and .
Gets the culture to use for discovering tests. null uses the default OS culture;
uses the invariant culture; any other value passes the
provided value to and uses the resulting object
with and
.
Gets a flag that determines whether diagnostic messages will be emitted.
Gets a flag that determines whether diagnostic messages will be emitted. If the flag is not
set, returns the default value (false).
Gets a flag that determines whether discovered test cases should include source information.
Note that not all runners have access to source information, so this flag does not guarantee
that source information will be provided.
Gets a flag that determines whether discovered test cases should include source information.
Note that not all runners have access to source information, so this flag does not guarantee
that source information will be provided. If the flag is not present, returns the default
value (false).
Gets a flag that determines whether internal diagnostic messages will be emitted.
Gets a flag that determines whether internal diagnostic messages will be emitted. If the flag is not
set, returns the default value (false).
Gets a flag that determines the default display name format for test methods.
Gets a flag that determines the default display name format for test methods. If the flag is not present,
returns the default value ().
Gets a flag that determines the default display name format options for test methods.
Gets a flag that determines the default display name format options for test methods. If the flag is not present,
returns the default value ().
Gets a flag that determines whether theories are pre-enumerated. If they enabled, then the
discovery system will return a test case for each row of test data; they are disabled, then the
discovery system will return a single test case for the theory.
Gets a flag that determines whether theories are pre-enumerated. If they enabled, then the
discovery system will return a test case for each row of test data; they are disabled, then the
discovery system will return a single test case for the theory. If the flag is not present,
returns the default value (false).
Gets the maximum length for printing collections.
Gets the maximum recursive depth for printing objects.
Gets the maximum numbers of members to show for printing objects.
Gets the maximum length for printing strings.
Gets a flag that determines whether xUnit.net should report test results synchronously.
Gets a flag that determines whether xUnit.net should report test results synchronously.
If the flag is not set, returns the default value (false).
Sets the culture to use for discovering tests. null uses the default OS culture;
uses the invariant culture; any other value passes the
provided value to and uses the resulting object
with and
.
Sets a flag that determines whether diagnostic messages will be emitted.
Sets a flag that determines whether discovered test cases should include source information.
Note that not all runners have access to source information, so this flag does not guarantee
that source information will be provided.
Sets a flag that determines whether internal diagnostic messages will be emitted.
Sets a flag that determines the default display name format for test methods.
Sets the flags that determine the default display options for test methods.
Sets a flag that determines whether theories are pre-enumerated. If they enabled, then the
discovery system will return a test case for each row of test data; they are disabled, then the
discovery system will return a single test case for the theory.
Sets the maximum length for printing collections.
Sets the maximum recursive depth for printing objects.
Sets the maximum numbers of members to show for printing objects.
Sets the maximum length for printing strings.
Sets a flag that determines whether xUnit.net should report test results synchronously.
Gets a max recursive object depth for comparisons done with Assert.Equivalent.
Gets the culture to use for running tests. null uses the default OS culture;
uses the invariant culture; any other value passes the
provided value to and uses the resulting object
with and
.
Gets a flag that determines whether diagnostic messages will be emitted.
Gets a flag that determines whether diagnostic messages will be emitted. If the flag is not
present, returns the default value (false).
Gets a flag to disable parallelization.
Gets a flag to disable parallelization. If the flag is not present, returns the
default value (false).
Gets a flag that indicates how explicit tests should be handled.
Gets a flag that indicates how explicit tests should be handled. If the flag is not present,
returns the default value ().
Gets a flag to fail skipped tests.
Gets a flag to fail skipped tests. If the flag is not present, returns the default
value (false).
Gets a flag to fail passing tests with warnings.
Gets a flag to fail passing tests with warning. If the flag is not present, returns
the default value (false).
Gets a flag that determines whether internal diagnostic messages will be emitted.
Gets a flag that determines whether internal diagnostic messages will be emitted. If the flag is not
present, returns the default value (false).
Gets the maximum number of threads to use when running tests in parallel.
Gets the maximum number of threads to use when running tests in parallel. If set to 0 (or not set),
the value of is used; if set to a value less
than 0, does not limit the number of threads.
Gets the parallel algorithm to be used.
Gets the parallel algorithm to be used. If the flag is not present, return the default
value ().
Gets the maximum length for printing collections.
Gets the maximum recursive depth for printing objects.
Gets the maximum numbers of members to show for printing objects.
Gets the maximum length for printing strings.
Gets the value that should be used to seed randomness.
Gets a flag which indicates if the developer wishes to see output from
live while it's being reported (in addition to seeing it collected together when the test is finished).
Gets a flag which indicates if the developer wishes to see output from
live while it's being reported (in addition to seeing it collected together when the test is finished).
If the flag is not present, returns the default value (false).
Gets a flag that determines whether xUnit.net stop testing when a test fails.
Gets a flag that determines whether xUnit.net stop testing when a test fails. If the flag
is not set, returns the default value (false).
Gets a flag that determines whether xUnit.net should report test results synchronously.
Gets a flag that determines whether xUnit.net should report test results synchronously.
If the flag is not set, returns the default value (false).
Gets a max recursive object depth for comparisons done with Assert.Equivalent.
Sets the culture to use for running tests. null uses the default OS culture;
uses the invariant culture; any other value passes the
provided value to and uses the resulting object
with and
.
Sets a flag that determines whether diagnostic messages will be emitted.
Sets a flag to disable parallelization.
Sets a flag to describe how explicit tests should be handled.
Sets a flag to fail skipped tests.
Sets a flag to fail passing tests with warnings.
Sets a flag that determines whether internal diagnostic messages will be emitted.
Sets the maximum number of threads to use when running tests in parallel.
If set to 0 (the default value), does not limit the number of threads.
Sets the parallel algorithm to be used.
Sets the maximum length for printing collections.
Sets the maximum recursive depth for printing objects.
Sets the maximum numbers of members to show for printing objects.
Sets the maximum length for printing strings.
Sets the value that should be used to seed randomness.
Sets a flag which indicates if the developer wishes to see output from
live while it's being reported (in addition to seeing it collected together when the test is finished).
Sets a flag that determines whether xUnit.net stop testing when a test fails.
Sets a flag that determines whether xUnit.net should report test results synchronously.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
INTERNAL ENUM. DO NOT USE.
INTERNAL CLASS. DO NOT USE.
Formats value for display in assertion messages and data-driven test display names.
Gets the ellipsis value (three middle dots, aka U+00B7).
Gets the maximum number of values printed for collections before truncation.
Gets the maximum printing depth, in terms of objects before truncation.
Gets the maximum number of items (properties or fields) printed in an object before truncation.
Gets the maximum strength length before truncation.
Escapes a string for printing, attempting to most closely model the value on how you would
enter the value in a C# string literal. That means control codes that are normally backslash
escaped (like "\n" for newline) are represented like that; all other control codes for ASCII
values under 32 are printed as "\xnn".
The string value to be escaped
Formats a value for display.
The value to be formatted
The optional printing depth (1 indicates a top-level value)
Formats a type. This maps built-in C# types to their C# native name (e.g., printing "int" instead
of "Int32" or "System.Int32").
The type to get the formatted name of
Set to true to include the namespace; set to false for just the simple type name
An implementation of backed by Mono.Cecil.
Creates a source provider for the given test assembly.
The test assembly filename
This may return an instance of if source information
collection is turned off, or if the provided assembly does not exist on disk.
Contains the information by .
The options used during discovery
The options used during execution
The optional filters (when not provided, finds all tests)
Contains the information by .
The options used during discovery
The options used during execution
The optional filters (when not provided, finds all tests)
The options used during discovery.
The options used during execution.
Get the test case filters used during discovery.
Contains the information by .
The discovery options
The optional filters (when not provided, finds all tests)
Contains the information by .
The discovery options
The optional filters (when not provided, finds all tests)
Get the test case filters used during discovery.
The options used during discovery.
Launch options when using and/or .
Current only supported by v3 test projects (all options will be ignored for v1/v2 test projects).
Wait for a debugger to be attached before performing any operations.
Contains the information by .
The options used during execution
The test cases to be run
Contains the information by .
The options used during execution
The test cases to be run
The options used during execution.
Get the list of test cases to be run.
Base class for all invocations of and .
Launch options. Currently only applicable to v3 test projects.
Represents a class which acts as a front controller for unit testing frameworks.
This allows runners to run tests from multiple unit testing frameworks (in particular,
hiding the differences between xUnit.net v1, v2, and v3 tests).
Starts the process of finding and running tests in an assembly. Typically only used
by runner which do not present test discovery UIs to users that allow them to run
selected tests (those should instead use
and as separate operations).
The message sink to report results back to.
The settings used during discovery and execution.
Starts the process of running selected tests in the assembly. The serialized test
cases to run come from calling .
The message sink to report results back to.
The settings used during execution.
Represents a class which acts as a front controller for unit testing frameworks for
the purposes of discovery (which can include source-based discovery). Tests found
with these classes can later be run by an instance of .
This allows runners to run tests from multiple unit testing frameworks (in particular,
hiding the differences between xUnit.net v1, v2, and v3 tests).
Gets a flag indicating whether this discovery/execution can use app domains.
Gets the target framework that the test assembly is linked against.
Gets the unique ID for the test assembly provided to the discoverer.
Returns the display name of the test framework that this discoverer is running tests for.
Starts the process of finding tests in an assembly. Typically only used by
runners which discover tests and present them into a UI for the user to interactively
choose for selective run (via ). For runners which
simply wish to discover and immediately run tests, they should instead
use , which permits the same filtering logic
as this method.
The message sink to report results back to.
The settings used during discovery.
Utility functions for assemblies.
Gets metadata (including target framework and xUnit.net version) for the given assembly (on disk).
This uses Mono Cecil to prevent officially loading the assembly into memory.
The assembly filename.
The assembly metadata, if the assembly was found; null, otherwise.
Specifies that null is allowed as an input even if the corresponding type disallows it.
Specifies that null is disallowed as an input even if the corresponding type allows it.
Specifies that an output may be null even if the corresponding type disallows it.
Specifies that an output will not be null even if the corresponding type allows it.
Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
Initializes the attribute with the specified return value condition.
The return value condition. If the method returns this value, the associated parameter may be null.
Gets the return value condition.
Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it.
Initializes the attribute with the specified return value condition.
The return value condition. If the method returns this value, the associated parameter will not be null.
Gets the return value condition.
Specifies that the output will be non-null if the named parameter is non-null.
Initializes the attribute with the associated parameter name.
The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
Gets the associated parameter name.
Applied to a method that will never return under any circumstance.
Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
Initializes the attribute with the specified parameter value.
The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to
the associated parameter matches this value.
Gets the condition parameter value.
Specifies the syntax used in a string.
Initializes the with the identifier of the syntax used.
The syntax identifier.
Initializes the with the identifier of the syntax used.
The syntax identifier.
Optional arguments associated with the specific syntax employed.
Gets the identifier of the syntax used.
Optional arguments associated with the specific syntax employed.
The syntax identifier for strings containing composite formats for string formatting.
The syntax identifier for strings containing date format specifiers.
The syntax identifier for strings containing date and time format specifiers.
The syntax identifier for strings containing format specifiers.
The syntax identifier for strings containing format specifiers.
The syntax identifier for strings containing JavaScript Object Notation (JSON).
The syntax identifier for strings containing numeric format specifiers.
The syntax identifier for strings containing regular expressions.
The syntax identifier for strings containing time format specifiers.
The syntax identifier for strings containing format specifiers.
The syntax identifier for strings containing URIs.
The syntax identifier for strings containing XML.
Specifies the priority of a member in overload resolution. When unspecified, the default priority is 0.
Initializes a new instance of the class.
The priority of the attributed member. Higher numbers are prioritized, lower numbers are deprioritized. 0 is the default if no attribute is present.
The priority of the member.