Table of Contents

Namespace NUnit.Framework.Constraints

Classes

AllItemsConstraint

AllItemsConstraint applies another constraint to each item in a collection, succeeding if they all succeed.

AllOperator

Represents a constraint that succeeds if all the members of a collection match a base constraint.

AndConstraint

AndConstraint succeeds only if both members succeed.

AndOperator

Operator that requires both its arguments to succeed

AnyOfConstraint

AnyOfConstraint is used to determine whether the value is equal to any of the expected values.

AssignableFromConstraint

AssignableFromConstraint is used to test that an object can be assigned from a given Type.

AssignableToConstraint

AssignableToConstraint is used to test that an object can be assigned to a given Type.

AttributeConstraint

AttributeConstraint tests that a specified attribute is present on a Type or other provider and that the value of the attribute satisfies some other constraint.

AttributeExistsConstraint

AttributeExistsConstraint tests for the presence of a specified attribute on a Type.

AttributeOperator

Operator that tests for the presence of a particular attribute on a type and optionally applies further tests to the attribute.

BinaryConstraint

BinaryConstraint is the abstract base of all constraints that combine two other constraints in some fashion.

BinaryOperator

Abstract base class for all binary operators

CollectionConstraint

CollectionConstraint is the abstract base class for constraints that operate on collections.

CollectionEquivalentConstraint

CollectionEquivalentConstraint is used to determine whether two collections are equivalent.

CollectionEquivalentConstraintResult

Provides a ConstraintResult for the CollectionEquivalentConstraint.

CollectionItemsEqualConstraint

CollectionItemsEqualConstraint is the abstract base class for all collection constraints that apply some notion of item equality as a part of their operation.

CollectionOperator

Abstract base for operators that indicate how to apply a constraint to items in a collection.

CollectionOrderedConstraint

CollectionOrderedConstraint is used to test whether a collection is ordered.

CollectionSubsetConstraint

CollectionSubsetConstraint is used to determine whether one collection is a subset of another

CollectionSupersetConstraint

CollectionSupersetConstraint is used to determine whether one collection is a superset of another

CollectionTally

CollectionTally counts (tallies) the number of occurrences of each object in one or more enumerations.

CollectionTally.CollectionTallyResult

The result of a CollectionTally.

ComparisonAdapter

ComparisonAdapter class centralizes all comparisons of values in NUnit, adapting to the use of any provided IComparer, IComparer<T> or Comparison<T>.

ComparisonConstraint

Abstract base class for constraints that compare values to determine if one is greater than, equal to or less than the other.

Constraint

The Constraint class is the base of all built-in constraints within NUnit. It provides the operator overloads used to combine constraints.

ConstraintBuilder

ConstraintBuilder maintains the stacks that are used in processing a ConstraintExpression. An OperatorStack is used to hold operators that are waiting for their operands to be reorganized. a ConstraintStack holds input constraints as well as the results of each operator applied.

ConstraintBuilder.ConstraintStack

ConstraintStack is a type-safe stack for holding Constraints

ConstraintExpression

ConstraintExpression represents a compound constraint in the process of being constructed from a series of syntactic elements.

Individual elements are appended to the expression as they are reorganized. When a constraint is appended, it is returned as the value of the operation so that modifiers may be applied. However, any partially built expression is attached to the constraint for later resolution. When an operator is appended, the partial expression is returned. If it's a self-resolving operator, then a ResolvableConstraintExpression is returned.

ConstraintOperator

The ConstraintOperator class is used internally by a ConstraintBuilder to represent an operator that modifies or combines constraints.

Constraint operators use left and right precedence values to determine whether the top operator on the stack should be reduced before pushing a new operator.

ConstraintResult

Contains the result of matching a Constraint against an actual value.

ContainsConstraint

ContainsConstraint tests a whether a string contains a substring or a collection contains an object. It postpones the decision of which test to use until the type of the actual argument is known. This allows testing whether a string is contained in a collection or as a substring of another string using the same syntax.

CountZeroConstraint

CountZeroConstraint tests whether an instance has a property .Count with value zero.

DateTimes

The DateTimes class contains common operations on Date and Time values.

DefaultConstraint

Tests that the actual value is default value for type.

DelayedConstraint

Applies a delay to the match so that a match can be evaluated in the future.

DelayedConstraint.WithDimensionedDelayInterval

Allows only setting the polling interval of a DelayedConstraint

DelayedConstraint.WithRawDelayInterval

Allows only changing the time dimension of delay interval and setting a polling interval of a DelayedConstraint

DelayedConstraint.WithRawPollingInterval

Allows only changing the time dimension of the polling interval of a DelayedConstraint

DictionaryContainsKeyConstraint

DictionaryContainsKeyConstraint is used to test whether a dictionary contains an expected object as a key.

DictionaryContainsKeyValuePairConstraint

DictionaryContainsKeyValuePairConstraint is used to test whether a dictionary contains an expected object as a key-value-pair.

DictionaryContainsValueConstraint

DictionaryContainsValueConstraint is used to test whether a dictionary contains an expected object as a value.

EmptyCollectionConstraint

EmptyCollectionConstraint tests whether a collection is empty.

EmptyConstraint

EmptyConstraint tests a whether a string or collection is empty, postponing the decision about which test is applied until the type of the actual argument is known.

EmptyDirectoryConstraint

EmptyDirectoryConstraint is used to test that a directory is empty

EmptyGuidConstraint

EmptyGuidConstraint tests whether a Guid is empty.

EmptyStringConstraint

EmptyStringConstraint tests whether a string is empty.

EndsWithConstraint

EndsWithConstraint can test whether a string ends with an expected substring.

EqualConstraint

EqualConstraint is able to compare an actual value with the expected value provided in its constructor. Two objects are considered equal if both are null, or if both have the same value. NUnit has special semantics for some object types.

EqualConstraintResult

The EqualConstraintResult class is tailored for formatting and displaying the result of an EqualConstraint.

EqualityAdapter

EqualityAdapter class handles all equality comparisons that use an IEqualityComparer, IEqualityComparer<T> or a ComparisonAdapter.

ExactCountConstraint

ExactCountConstraint applies another constraint to each item in a collection, succeeding only if a specified number of items succeed.

ExactCountOperator

Represents a constraint that succeeds if the specified count of members of a collection match a base constraint.

ExactTypeConstraint

ExactTypeConstraint is used to test that an object is of the exact type provided in the constructor

ExceptionTypeConstraint

ExceptionTypeConstraint is a special version of ExactTypeConstraint used to provided detailed info about the exception thrown in an error message.

FalseConstraint

FalseConstraint tests that the actual value is false

FileOrDirectoryExistsConstraint

FileOrDirectoryExistsConstraint is used to determine if a file or directory exists

GreaterThanConstraint

Tests whether a value is greater than the value supplied to its constructor

GreaterThanOrEqualConstraint

Tests whether a value is greater than or equal to the value supplied to its constructor

IndexerConstraint

IndexerConstraint extracts a named property and uses its value as the actual value for a chained constraint.

IndexerOperator

Operator used to test for the presence of a Indexer on an object and optionally apply further tests to the value of that indexer.

InstanceOfTypeConstraint

InstanceOfTypeConstraint is used to test that an object is of the same type provided or derived from it.

Interval

Keeps track of an interval time which can be represented in Minutes, Seconds or Milliseconds

ItemsConstraintExpression

An extension of ResolvableConstraintExpression that adds a no-op Items property for readability.

LessThanConstraint

Tests whether a value is less than the value supplied to its constructor

LessThanOrEqualConstraint

Tests whether a value is less than or equal to the value supplied to its constructor

MessageWriter

MessageWriter is the abstract base for classes that write constraint descriptions and messages in some form. The class has separate methods for writing various components of a message, allowing implementations to tailor the presentation as needed.

NUnitComparer

NUnitComparer encapsulates NUnit's default behavior in comparing two objects.

NUnitEqualityComparer

NUnitEqualityComparer encapsulates NUnit's handling of equality tests between objects.

NUnitEqualityComparer.FailurePoint

FailurePoint class represents one point of failure in an equality test.

NaNConstraint

NaNConstraint tests that the actual value is a double or float NaN

NoItemConstraint

NoItemConstraint applies another constraint to each item in a collection, failing if any of them succeeds.

NoneOperator

Represents a constraint that succeeds if none of the members of a collection match a base constraint.

NotConstraint

NotConstraint negates the effect of some other constraint

NotOperator

Negates the test of the constraint it wraps.

NullConstraint

NullConstraint tests that the actual value is null

OrConstraint

OrConstraint succeeds if either member succeeds

OrOperator

Operator that requires at least one of its arguments to succeed

PathConstraint

PathConstraint serves as the abstract base of constraints that operate on paths and provides several helper methods.

PredicateConstraint<T>

Predicate constraint wraps a Predicate in a constraint, returning success if the predicate is true.

PrefixConstraint

Abstract base class used for prefixes

PrefixOperator

PrefixOperator takes a single constraint and modifies its action in some way.

PropOperator

Operator used to test for the presence of a named Property on an object and optionally apply further tests to the value of that property.

PropertyConstraint

PropertyConstraint extracts a named property and uses its value as the actual value for a chained constraint.

PropertyExistsConstraint

PropertyExistsConstraint tests that a named property exists on the object provided through Match.

Originally, PropertyConstraint provided this feature in addition to making optional tests on the value of the property. The two constraints are now separate.

RangeConstraint

RangeConstraint tests whether two values are within a specified range.

RegexConstraint

RegexConstraint can test whether a string matches the pattern provided.

ResolvableConstraintExpression

ResolvableConstraintExpression is used to represent a compound constraint being constructed at a point where the last operator may either terminate the expression or may have additional qualifying constraints added to it.

It is used, for example, for a Property element or for an Exception element, either of which may be optionally followed by constraints that apply to the property or exception.

ReusableConstraint

ReusableConstraint wraps a constraint expression after resolving it so that it can be reused consistently.

SameAsConstraint

SameAsConstraint tests whether an object is identical to the object passed to its constructor

SamePathConstraint

Summary description for SamePathConstraint.

SamePathOrUnderConstraint

SamePathOrUnderConstraint tests that one path is under another

SelfResolvingOperator

Abstract base class for operators that are able to reduce to a constraint whether or not another syntactic element follows.

SomeItemsConstraint

SomeItemsConstraint applies another constraint to each item in a collection, succeeding if any of them succeeds.

SomeOperator

Represents a constraint that succeeds if any of the members of a collection match a base constraint.

StartsWithConstraint

StartsWithConstraint can test whether a string starts with an expected substring.

StringConstraint

StringConstraint is the abstract base for constraints that operate on strings. It supports the IgnoreCase modifier for string operations.

SubPathConstraint

SubPathConstraint tests that the actual path is under the expected path

SubstringConstraint

SubstringConstraint can test whether a string contains the expected substring.

ThrowsConstraint

ThrowsConstraint is used to test the exception thrown by a delegate by applying a constraint to it.

ThrowsExceptionConstraint

ThrowsExceptionConstraint tests that an exception has been thrown, without any further tests.

ThrowsNothingConstraint

ThrowsNothingConstraint tests that a delegate does not throw an exception.

ThrowsOperator

Operator that tests that an exception is thrown and optionally applies further tests to the exception.

Tolerance

The Tolerance class generalizes the notion of a tolerance within which an equality test succeeds. Normally, it is used with numeric types, but it can be used with any type that supports taking a difference between two objects and comparing that difference to a value.

TrueConstraint

TrueConstraint tests that the actual value is true

TypeConstraint

TypeConstraint is the abstract base for constraints that take a Type as their expected value.

UniqueItemsConstraint

UniqueItemsConstraint tests whether all the items in a collection are unique.

WithOperator

Represents a constraint that simply wraps the constraint provided as an argument, without any further functionality, but which modifies the order of evaluation because of its precedence.

XmlSerializableConstraint

XmlSerializableConstraint tests whether an object is serializable in XML format.

Structs

Tolerance.Range

Tolerance.Range represents the range of values that match a specific tolerance, when applied to a specific value.

Interfaces

IConstraint

Interface for all constraints

IResolveConstraint

The IResolveConstraint interface is implemented by all complete and resolvable constraints and expressions.

Enums

ConstraintStatus

ConstraintStatus represents the status of a ConstraintResult returned by a Constraint being applied to an actual value.

ToleranceMode

Modes in which the tolerance value for a comparison can be interpreted.

Delegates

ActualValueDelegate<TActual>

Delegate used to delay evaluation of the actual value to be used in evaluating a constraint

ValueFormatter

Custom value formatter function

ValueFormatterFactory

Custom value formatter factory function