diff --git a/build/Build20.bat b/build/Build20.bat
index 25ac20a539..8c58d2e485 100644
--- a/build/Build20.bat
+++ b/build/Build20.bat
@@ -5,4 +5,4 @@ SET BUILD_CONFIG=%~2
IF "%BUILD_TARGET%"=="" SET BUILD_TARGET=Rebuild
IF "%BUILD_CONFIG%"=="" SET BUILD_CONFIG=Debug
-CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.csproj /toolsversion:4.0 %3 %4 %5 %6 "/t:%BUILD_TARGET%" "/p:BuildConfiguration=%BUILD_CONFIG%;TargetVersion=2"
+CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 %3 %4 %5 %6 "/t:%BUILD_TARGET%" "/p:BuildConfiguration=%BUILD_CONFIG%;TargetVersion=2"
diff --git a/build/BuildAll.bat b/build/BuildAll.bat
index 9f2ef1aac9..e35c6f617a 100644
--- a/build/BuildAll.bat
+++ b/build/BuildAll.bat
@@ -1,2 +1,2 @@
@echo off
-CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.csproj /t:FullBuild /toolsversion:4.0 %1 %2 %3 %4 %5 %6
+CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /t:FullBuild /toolsversion:4.0 %1 %2 %3 %4 %5 %6
diff --git a/build/BuildSilverlight2.bat b/build/BuildSilverlight2.bat
index efc6ed4164..5b2d2a9539 100644
--- a/build/BuildSilverlight2.bat
+++ b/build/BuildSilverlight2.bat
@@ -1,2 +1,2 @@
@echo off
-CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.csproj /toolsversion:4.0 /t:Rebuild %1 %2 %3 %4 "/p:BuildConfiguration=Debug_Silverlight;TargetVersion=2"
+CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 /t:Rebuild %1 %2 %3 %4 "/p:BuildConfiguration=Debug_Silverlight;TargetVersion=2"
diff --git a/build/CleanAll.bat b/build/CleanAll.bat
new file mode 100644
index 0000000000..10d7fc7759
--- /dev/null
+++ b/build/CleanAll.bat
@@ -0,0 +1,9 @@
+@echo off
+PUSHD %~dp0
+IF EXIST ..\build_output RMDIR /S /Q ..\build_output
+IF EXIST ..\build_temp RMDIR /S /Q ..\build_temp
+%WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 /t:Clean /v:m "/p:BuildConfiguration=Release;TargetVersion=2"
+%WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 /t:Clean /v:m "/p:BuildConfiguration=Debug;TargetVersion=2"
+%WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 /t:Clean /v:m "/p:BuildConfiguration=Release_Silverlight;TargetVersion=2"
+%WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 /t:Clean /v:m "/p:BuildConfiguration=Debug_Silverlight;TargetVersion=2"
+POPD
\ No newline at end of file
diff --git a/build/Common.targets b/build/Common.targets
index 4e42999942..057ab456be 100644
--- a/build/Common.targets
+++ b/build/Common.targets
@@ -66,7 +66,7 @@ Targets For GenerateSource
*********************************************************************************************** -->
-
@@ -93,13 +93,18 @@ Targets For GenerateSource
Targets For Test
*********************************************************************************************** -->
-
+
+
-
+
+
+
diff --git a/build/RunBenchmarks.bat b/build/RunBenchmarks.bat
index 5cb3e6a535..9091b0d1a4 100644
--- a/build/RunBenchmarks.bat
+++ b/build/RunBenchmarks.bat
@@ -1,2 +1,2 @@
@echo off
-CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.csproj /toolsversion:4.0 /t:RunBenchmarks %1 %2 %3 %4 "/p:BuildConfiguration=Release;TargetVersion=2"
+CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 /t:RunBenchmarks %1 %2 %3 %4 "/p:BuildConfiguration=Release;TargetVersion=2"
diff --git a/build/build.csproj b/build/build.csproj
index bbc4392a93..6b8a0c22e8 100644
--- a/build/build.csproj
+++ b/build/build.csproj
@@ -41,8 +41,9 @@
$(LibDirectory)\protoc.exe$(BuildOutputDirectory)\ProtoGen\protogen.exe$(BuildTempDirectory)\ProtoBench.exe
- $(LibDirectory)\NUnit 2.2.8.0\nunit-console.exe
- $(LibDirectory)\NUnit 2.2.8.0\nunit-console.$(ForcedFrameworkVersion).config
+ $(LibDirectory)\NUnit\tools\nunit-console.exe
+ $(LibDirectory)\NUnit-config\nunit-console.$(ForcedFrameworkVersion).config
+ $(LibDirectory)\StatLight\tools\StatLight.exe$(LibDirectory)\7-Zip 9.20\7za.exe
@@ -171,6 +172,10 @@
+
+
+
+
@@ -200,7 +205,7 @@
-
+
diff --git a/build/build35.bat b/build/build35.bat
index 34cb141b24..46a625d57c 100644
--- a/build/build35.bat
+++ b/build/build35.bat
@@ -5,4 +5,4 @@ SET BUILD_CONFIG=%~2
IF "%BUILD_TARGET%"=="" SET BUILD_TARGET=Rebuild
IF "%BUILD_CONFIG%"=="" SET BUILD_CONFIG=Debug
-CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.csproj /toolsversion:4.0 %3 %4 %5 %6 "/t:%BUILD_TARGET%" "/p:BuildConfiguration=%BUILD_CONFIG%;TargetVersion=3"
+CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 %3 %4 %5 %6 "/t:%BUILD_TARGET%" "/p:BuildConfiguration=%BUILD_CONFIG%;TargetVersion=3"
diff --git a/build/build40.bat b/build/build40.bat
index 1a0518cec6..6cfe0484d8 100644
--- a/build/build40.bat
+++ b/build/build40.bat
@@ -5,4 +5,4 @@ SET BUILD_CONFIG=%~2
IF "%BUILD_TARGET%"=="" SET BUILD_TARGET=Rebuild
IF "%BUILD_CONFIG%"=="" SET BUILD_CONFIG=Debug
-CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.csproj /toolsversion:4.0 %3 %4 %5 %6 "/t:%BUILD_TARGET%" "/p:BuildConfiguration=%BUILD_CONFIG%;TargetVersion=4"
+CMD.exe /Q /C "CD %~dp0 && %WINDIR%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /nologo build.csproj /toolsversion:4.0 %3 %4 %5 %6 "/t:%BUILD_TARGET%" "/p:BuildConfiguration=%BUILD_CONFIG%;TargetVersion=4"
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/EULA.rtf b/lib/Microsoft.Silverlight.Testing/April2010/EULA.rtf
new file mode 100644
index 0000000000..a907d5da9e
Binary files /dev/null and b/lib/Microsoft.Silverlight.Testing/April2010/EULA.rtf differ
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.dll b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.dll
new file mode 100644
index 0000000000..0c6df1878d
Binary files /dev/null and b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.dll differ
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.extmap.xml b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.extmap.xml
new file mode 100644
index 0000000000..352d4878c3
--- /dev/null
+++ b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.extmap.xml
@@ -0,0 +1,12 @@
+
+
+
+ Microsoft.Silverlight.Testing
+ 2.0.5.0
+ 31bf3856ad364e35
+ Microsoft.Silverlight.Testing.dll
+
+
+
+
\ No newline at end of file
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.pdb b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.pdb
new file mode 100644
index 0000000000..a86119c8cf
Binary files /dev/null and b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.pdb differ
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.xml b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.xml
new file mode 100644
index 0000000000..477ce707e7
--- /dev/null
+++ b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.Silverlight.Testing.xml
@@ -0,0 +1,14796 @@
+
+
+
+ Microsoft.Silverlight.Testing
+
+
+
+
+ A class containing an Assert method.
+
+
+
+
+ The MethodInfo object used to invoke Assert.IsNotNull.
+
+
+
+
+ The MethodInfo object used to invoke Assert.AreNotSame.
+
+
+
+
+ The MethodInfo object used to invoke Assert.AreNotEqual.
+
+
+
+
+ The MethodInfo object used to invoke Assert.AreSame.
+
+
+
+
+ The MethodInfo object used to invoke Assert.AreEqual.
+
+
+
+
+ The MethodInfo object used to invoke Assert.IsNull.
+
+
+
+
+ The MethodInfo object used to invoke Assert.IsFalse.
+
+
+
+
+ The MethodInfo object used to invoke Assert.IsTrue.
+
+
+
+
+ A regular expression which identifies a pattern signifying an
+ anonymous type. This pattern is emitted by the Expression object
+ when it converts an anonymous type to a string.
+
+
+
+
+ A regular expression which identifies a pattern emitted by an
+ Expression object when it converts an anonymous type to a
+ string.
+
+
+
+
+ Asserts a condition is true.
+
+ The condition that must be true.
+
+
+
+ Asserts a condition is true.
+
+ The condition that must be true.
+ The message to be displayed when the test fails.
+
+
+
+ Generates an assert failure message using the code block
+ responsible for the failure.
+
+ The predicate that fails.
+ The user-provided assertion failure message.
+
+ A constant expression containing the user-provided failure
+ message or a description of the expression that failed.
+
+
+
+ Analyzes the expression and creates an action which calls the
+ correct assert method based on its contents.
+
+ The predicate expression.
+ The message to display if an assertion fails.
+ An action which calls the correct assert method.
+
+
+
+ Analyzes a predicate expression and invokes the correct assert
+ method.
+
+ The type of the argument to the predicate.
+
+ A predicate to be converted into an
+ assert statement.
+ The assertion message.
+
+
+
+ Creates an action from certain types of supported binary expression
+ patterns. If no supported pattern is found null is returned. Based
+ on analyzing the predicate the action invokes the correct Assert
+ method.
+
+ A binary expression extracted from a
+ predicate expression.
+ The message to display if the assertion
+ fails.
+ An action that invokes an Assert method.
+
+
+
+ Mark the test method as one which expects asynchronous execution.
+ It is important to call TestComplete() once it is ready or your
+ test will never continue/timeout.
+
+
+
+
+ An attribute that contains known bug information that can be logged
+ during a unit test run.
+
+ When applied to a test method, it will invert the result. This makes it
+ possible to perform automated runs and continuous integration while
+ validating and tracking known issues.
+
+ The attribute should have the Fixed bool set to True, or be removed,
+ once the issue is resolved.
+
+
+
+
+ Construct a new BugAttribute with no bug description.
+
+
+
+
+ Construct a new BugAttribute with a bug description.
+
+ Known issue text.
+
+
+
+ Return the bug information.
+
+ Known issue as a string.
+
+
+
+ Gets the bug description.
+
+
+
+
+ Gets or sets a value indicating whether the known issue has been
+ fixed. If it has, the attribute is ignored and will not affect
+ test results.
+
+
+
+
+ Represents a control that builds on top of the standard platform Button,
+ offering the ability to modify the corner radii or even use special
+ button modes.
+
+
+
+
+ Identifies the SecondaryVisibility dependency property.
+
+
+
+
+ Identifies the CornerRadius dependency property.
+
+
+
+
+ Gets or sets the visibility of a secondary set of visuals in the
+ template.
+
+
+
+
+ Gets or sets the corner radius to use.
+
+
+
+
+ A color selection converter for translating a bool result into
+ a color.
+
+
+
+
+ Initializes a new instance of the ColorSelectorConverter type.
+
+
+
+
+ Convert a boolean value to a Color value.
+
+ The value.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Support 2-way databinding of the VisibilityConverter, converting
+ Visibility to a boolean.
+
+ The value.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Gets or sets the color to use for true values.
+
+
+
+
+ Gets or sets the color to use for false values.
+
+
+
+
+ A set of extension methods for manipulating collections.
+
+ Experimental
+
+
+
+ Returns a value indicating whether a collection is read-only.
+
+ The collection to examine.
+ A value indicating whether a collection is read-only.
+
+
+
+ Returns a value Indicating whether an item can be inserted in a
+ collection.
+
+ The collection.
+ The item to be inserted.
+ A value Indicating whether an item can be inserted in a
+ collection.
+
+
+
+ Inserts an item into the collection at an index.
+
+ The collection.
+ The index at which to insert the item.
+ The item to be inserted.
+
+
+
+ Gets the number of items in the collection.
+
+ The collection.
+ The number of items in the collection.
+
+
+
+ Adds an item to the collection.
+
+ The collection.
+ The item to be added.
+
+
+
+ Removes an item from the collection.
+
+ The collection.
+ The item to be removed.
+
+
+
+ Removes an item at a given index from the collection.
+
+ The collection.
+ The index of the item to be removed.
+
+
+
+ A color selection converter for translating a bool result into
+ a color.
+
+
+
+
+ The default true color.
+
+
+
+
+ The default false color.
+
+
+
+
+ Initializes a new instance of the ColorSelectorConverter type.
+
+
+
+
+ Convert a boolean value to a Color value.
+
+ The value.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Support 2-way databinding of the VisibilityConverter, converting
+ Visibility to a boolean.
+
+ The value.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Gets or sets the color to use for true values.
+
+
+
+
+ Gets or sets the color to use for false values.
+
+
+
+
+ A set of extension methods for the sequence class.
+ ;dsf
+
+
+
+ Produces a sequence of items using a seed value and iteration
+ method.
+
+ The type of the sequence.
+ The initial value.
+ The iteration function.
+ A sequence of items using a seed value and iteration
+ method.
+
+
+
+ Prepend an item to a sequence.
+
+ The type of the sequence.
+ The sequence to append the item to.
+ The item to append to the sequence.
+ A new sequence.
+
+
+
+ Accepts two sequences and applies a function to the corresponding
+ values in the two sequences.
+
+ The type of the first sequence.
+ The type of the second sequence.
+ The return type of the function.
+ The first sequence.
+ The second sequence.
+ The function to apply to the corresponding values
+ from the two sequences.
+ A sequence of transformed values from both sequences.
+
+
+
+ A converter for modifying the font weight based on a parameter.
+
+
+
+
+ Convert a boolean value to a FontWeight value.
+
+ The value object.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Support 2-way databinding of the VisibilityConverter, converting
+ Visibility to a bool.
+
+ The value object.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Determine the visibility mode based on a converter parameter. This
+ parameter is of type Visibility, and specifies what visibility value
+ to return when the boolean value is true.
+
+ The parameter object.
+ Returns a FontWeight value.
+
+
+
+ Determine whether or not weight is inverted based on a converter
+ parameter.
+
+ The parameter instance.
+ Returns a value indicating whether the instance is
+ inverting.
+
+
+
+ Collection of functions for functional programming tasks.
+
+
+
+
+ Traverses a tree by accepting an initial value and a function that
+ retrieves the child nodes of a node.
+
+ The type of the stream.
+ The initial node.
+ A function that retrieves the child
+ nodes of a node.
+ A predicate that evaluates a node
+ and returns a value indicating whether that node and it's children
+ should be traversed.
+ A stream of nodes.
+
+
+
+ The test results header control.
+
+
+
+
+ Initializes a new instance of the Header type.
+
+
+
+
+ InitializeComponent
+
+
+
+
+ A value converter for collapsing or showing elements based on the bound
+ object's type name. Does not walk the hierarchy - it is explicit to the
+ most specific class for the value. This class,
+ InvertedTypeNameVisibilityConverter, offers the opposite behavior of the
+ TypeNameVisibilityConverter class.
+
+
+
+
+ A value converter for collapsing or showing elements based on the bound
+ object's type name. Does not walk the hierarchy - it is explicit to the
+ most specific class for the value.
+
+
+
+
+ Convert a value based on CLR type to a Visibility value. Does not
+ walk the type tree, however.
+
+ The value instance.
+ The target parameter.
+ ConverterParameter is the name of the type,
+ both short and full names are checked, short name first.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Convert back, not supported with this value converter.
+
+ The value instance.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Gets a value indicating whether the visibility value should be
+ inverted.
+
+
+
+
+ Gets a value indicating whether the visibility value should be
+ inverted.
+
+
+
+
+ Provides useful extensions to ItemsControl instances.
+
+ Experimental
+
+
+
+ Gets the Panel that contains the containers of an ItemsControl.
+
+ The ItemsControl.
+
+ The Panel that contains the containers of an ItemsControl, or null
+ if the Panel could not be found.
+
+
+ is null.
+
+
+
+
+ Gets the ScrollViewer that contains the containers of an
+ ItemsControl.
+
+ The ItemsControl.
+
+ The ScrollViewer that contains the containers of an ItemsControl, or
+ null if a ScrollViewer could not be found.
+
+
+ is null.
+
+
+
+
+ Get the item containers of an ItemsControl.
+
+ The ItemsControl.
+ The item containers of an ItemsControl.
+
+ is null.
+
+
+
+
+ Get the item containers of an ItemsControl.
+
+
+ The type of the item containers.
+
+ The ItemsControl.
+ The item containers of an ItemsControl.
+
+ is null.
+
+
+
+
+ Get the item containers of an ItemsControl.
+
+
+ The type of the item containers.
+
+ The ItemsControl.
+ The item containers of an ItemsControl.
+
+
+
+ Get the items and item containers of an ItemsControl.
+
+ The ItemsControl.
+ The items and item containers of an ItemsControl.
+
+ is null.
+
+
+
+
+ Get the items and item containers of an ItemsControl.
+
+
+ The type of the item containers.
+
+ The ItemsControl.
+ The items and item containers of an ItemsControl.
+
+ is null.
+
+
+
+
+ Get the items and item containers of an ItemsControl.
+
+
+ The type of the item containers.
+
+ The ItemsControl.
+ The items and item containers of an ItemsControl.
+
+ is null.
+
+
+
+
+ Returns a value indicating whether an item can be added to an
+ ItemsControl.
+
+ The ItemsControl instance.
+ The item to be added.
+ A value Indicating whether an item can be added to an
+ ItemsControl.
+
+
+
+ Returns a value indicating whether an item can be removed from the
+ ItemsControl.
+
+ The items control.
+ A value indicating whether an item can be removed from the
+ ItemsControl.
+
+
+
+ Inserts an item into an ItemsControl.
+
+ The ItemsControl instance.
+ The index at which to insert the item.
+ The item to be inserted.
+
+
+
+ Adds an item to an ItemsControl.
+
+ The ItemsControl instance.
+ The item to be inserted.
+
+
+
+ Removes an item from an ItemsControl.
+
+ The ItemsControl instance.
+ The item to be removed.
+
+
+
+ Removes an item from an ItemsControl.
+
+ The ItemsControl instance.
+ The index of the item to be removed.
+
+
+
+ Gets the number of items in an ItemsControl.
+
+ The ItemsControl instance.
+ The number of items in the ItemsControl.
+
+
+
+ Represents a control that applies a layout transformation to its Content.
+
+ Preview
+
+
+
+ Name of the TransformRoot template part.
+
+
+
+
+ Name of the Presenter template part.
+
+
+
+
+ Acceptable difference between two doubles.
+
+
+
+
+ Number of decimals to round the Matrix to.
+
+
+
+
+ Identifies the LayoutTransform DependencyProperty.
+
+
+
+
+ Root element for performing transformations.
+
+
+
+
+ ContentPresenter element for displaying the content.
+
+
+
+
+ RenderTransform/MatrixTransform applied to _transformRoot.
+
+
+
+
+ Transformation matrix corresponding to _matrixTransform.
+
+
+
+
+ Actual DesiredSize of Child element (the value it returned from its MeasureOverride method).
+
+
+
+
+ Initializes a new instance of the LayoutTransformer class.
+
+
+
+
+ Builds the visual tree for the LayoutTransformer control when a new
+ template is applied.
+
+
+
+
+ Handles changes to the Transform DependencyProperty.
+
+ Source of the change.
+ Event args.
+
+
+
+ Applies the layout transform on the LayoutTransformer control content.
+
+
+ Only used in advanced scenarios (like animating the LayoutTransform).
+ Should be used to notify the LayoutTransformer control that some aspect
+ of its Transform property has changed.
+
+
+
+
+ Processes the Transform to determine the corresponding Matrix.
+
+ Transform to process.
+
+
+
+ Walks the Transform(Group) and returns the corresponding Matrix.
+
+ Transform(Group) to walk.
+ Computed Matrix.
+
+
+
+ Provides the behavior for the "Measure" pass of layout.
+
+ The available size that this element can give to child elements.
+ The size that this element determines it needs during layout, based on its calculations of child element sizes.
+
+
+
+ Provides the behavior for the "Arrange" pass of layout.
+
+ The final area within the parent that this element should use to arrange itself and its children.
+ The actual size used.
+
+ Using the WPF paramater name finalSize instead of Silverlight's finalSize for clarity
+
+
+
+
+ Compute the largest usable size (greatest area) after applying the transformation to the specified bounds.
+
+ Arrange bounds.
+ Largest Size possible.
+
+
+
+ Returns true if Size a is smaller than Size b in either dimension.
+
+ Second Size.
+ First Size.
+ True if Size a is smaller than Size b in either dimension.
+
+
+
+ Rounds the non-offset elements of a Matrix to avoid issues due to floating point imprecision.
+
+ Matrix to round.
+ Number of decimal places to round to.
+ Rounded Matrix.
+
+
+
+ Implements WPF's Rect.Transform on Silverlight.
+
+ Rect to transform.
+ Matrix to transform with.
+ Bounding box of transformed Rect.
+
+
+
+ Implements WPF's Matrix.Multiply on Silverlight.
+
+ First matrix.
+ Second matrix.
+ Multiplication result.
+
+
+
+ Implements WPF's Matrix.HasInverse on Silverlight.
+
+ Matrix to check for inverse.
+ True if the Matrix has an inverse.
+
+
+
+ Outputs diagnostic info if DIAGNOSTICWRITELINE is defined.
+
+ Diagnostic message.
+
+
+
+ Gets or sets the layout transform to apply on the LayoutTransformer
+ control content.
+
+
+ Corresponds to UIElement.LayoutTransform.
+
+
+
+
+ Gets the child element being transformed.
+
+
+
+
+ The TagEditor control provides a brief user interface allowing for the
+ selection of a set of tests, used to filter the test run.
+
+
+
+
+ Key used to lookup the TagHistory site setting.
+
+
+
+
+ Number of seconds to wait before running the test.
+
+
+
+
+ Initializes a new instance of the TagEditor type.
+
+ The tag expression to use.
+
+
+
+ Initializes a new instance of the TagEditor type.
+
+
+
+
+ Fires the Complete event.
+
+ The event arguments.
+
+
+
+ Handle touch of the button to display the text box.
+
+ Tag button.
+ Event arguments.
+
+
+
+ Handle selection of a tag button.
+
+ Tag button.
+ Event arguments.
+
+
+
+ Handle changes to the Tag text.
+
+ Tag TextBox.
+ Event arguments.
+
+
+
+ Handle clicks to the Run button.
+
+ Run Button.
+ Event arguments.
+
+
+
+ Handle timer ticks.
+
+ The timer.
+ Event arguments.
+
+
+
+ Stop the timer.
+
+
+
+
+ Run the unit tests.
+
+
+
+
+ Cancels the selection of a tag expression.
+
+ The source object.
+ The event data.
+
+
+
+ InitializeComponent
+
+
+
+
+ Gets or sets the timer used to automatically run tests if no tag is
+ entered.
+
+
+
+
+ Gets or sets the number of seconds already waited.
+
+
+
+
+ Gets or sets the tag history.
+
+
+
+
+ An event that indicates that the tag editor is complete. This can be
+ in response to many actions: the user entering a tag expression, the
+ time expiring and the default being selected, or the selection being
+ canceled.
+
+
+
+
+ Mobile test exceptions page.
+
+
+
+
+ Initializes a new instance of the page.
+
+
+
+
+ InitializeComponent
+
+
+
+
+ Mobile test method details page.
+
+
+
+
+ Initializes a new instance of the page.
+
+
+
+
+ InitializeComponent
+
+
+
+
+ A user control designed for mobile platforms. The control should be used
+ as the root visual for a Silverlight plugin if developers would like to
+ use the advanced TestSurface functionality.
+
+
+
+
+ An interface for any test page instances to implement.
+
+
+
+
+ Gets the test panel instance.
+
+
+
+
+ An interface for any test page instances to implement.
+
+
+
+
+ Requests navigation back a page.
+
+ A value indicating whether the operation was successful.
+
+
+
+ Contains the slide manager for the primitive user interface
+ navigation system.
+
+
+
+
+ Backing field for the unit test harness instance.
+
+
+
+
+ Backing field for the startup timer.
+
+
+
+
+ Backing field for the model manager.
+
+
+
+
+ Initializes a new instance of the MobileTestPage class.
+
+
+
+
+ Initializes the MobileTestPage object.
+
+ The test harness instance.
+
+
+
+ Waits for the Settings to become available, either by the service or
+ system setting the instance property.
+
+ The source timer.
+ The event arguments.
+
+
+
+ Creates a new slide and inserts it into the slide manager, plus
+ visual tree.
+
+ The text header to use.
+ The content to inside the slide.
+ Returns the new Slide instance.
+
+
+
+ Handles the completion event on the tag expression editor to begin
+ the test run using the user-provided settings.
+
+ The source object.
+ The event arguments.
+
+
+
+ Starts the test run.
+
+
+
+
+ Handles the test harness complete event, to display results.
+
+ The source object.
+ The event data.
+
+
+
+ Handles the movement back to the test assemblies list.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles the movement back to the test classes list.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles the movement back to the test methods list.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles the selection of a test assembly.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles the selection of a test class.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles the selection of a test method.
+
+ The source object.
+ The event arguments.
+
+
+
+ Requests navigation back a page.
+
+ A value indicating whether the operation was successful.
+
+
+
+ InitializeComponent
+
+
+
+
+ Gets the test surface, a dynamic Panel that removes its children
+ elements after each test completes.
+
+
+
+
+ Gets the unit test harness instance.
+
+
+
+
+ A derived TreeView control specific to the application needs for
+ showing results in real-time.
+
+
+
+
+ Represents a control that displays hierarchical data in a tree structure
+ that has items that can expand and collapse.
+
+ Stable
+
+
+
+ The IUpdateVisualState interface is used to provide the
+ InteractionHelper with access to the type's UpdateVisualState method.
+
+
+
+
+ Update the visual state of the control.
+
+
+ A value indicating whether to automatically generate transitions to
+ the new state, or instantly transition to the new state.
+
+
+
+
+ A value indicating whether a read-only dependency property change
+ handler should allow the value to be set. This is used to ensure
+ that read-only properties cannot be changed via SetValue, etc.
+
+
+
+
+ A value indicating whether a dependency property change handler
+ should ignore the next change notification. This is used to reset
+ the value of properties without performing any of the actions in
+ their change handlers.
+
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ property.
+
+
+
+
+ SelectedItemProperty property changed handler.
+
+ TreeView that changed its SelectedItem.
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ SelectedValueProperty property changed handler.
+
+ TreeView that changed its SelectedValue.
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ SelectedValuePathProperty property changed handler.
+
+ TreeView that changed its SelectedValuePath.
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ ItemContainerStyleProperty property changed handler.
+
+
+ TreeView that changed its ItemContainerStyle.
+
+ Event arguments.
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Returns a
+
+ for use by the Silverlight automation infrastructure.
+
+
+ A
+
+ for the control.
+
+
+
+
+ Builds the visual tree for the
+ control when a new
+ control template is applied.
+
+
+
+
+ Update the visual state of the TreeView.
+
+
+ A value indicating whether to use transitions when updating the
+ visual state.
+
+
+
+
+ Creates a to
+ display content.
+
+
+ A to use as a
+ container for content.
+
+
+
+
+ Determines whether the specified item is a
+ , which is the
+ default container for items in the
+ control.
+
+ The object to evaluate.
+
+ True if the item is a
+ ; otherwise,
+ false.
+
+
+
+
+ Prepares the container element to display the specified item.
+
+
+ The container element used to display the specified item.
+
+ The item to display.
+
+
+
+ Removes all templates, styles, and bindings for the object displayed
+ as a .
+
+
+ The element to
+ clear.
+
+
+ The item that is contained in the
+ .
+
+
+
+
+ Makes adjustments to the
+ control when the
+ value of the
+ property
+ changes.
+
+
+ A
+
+ that contains data about the change.
+
+
+
+
+ Select any descendents when adding new TreeViewItems to a TreeView.
+
+ The added item.
+
+
+
+ Propagate OnKeyDown messages from the root TreeViewItems to their
+ TreeView.
+
+ Event arguments.
+
+ Because Silverlight's ScrollViewer swallows many useful key events
+ (which it can ignore on WPF if you override HandlesScrolling or use
+ an internal only variable in Silverlight), the root TreeViewItems
+ explicitly propagate KeyDown events to their parent TreeView.
+
+
+
+
+ Provides handling for the
+ event when a key
+ is pressed while the control has focus.
+
+
+ A that contains
+ the event data.
+
+
+ is null.
+
+
+
+
+ Handle keys related to scrolling.
+
+ The key to handle.
+ A value indicating whether the key was handled.
+
+
+
+ Handle scrolling a page up or down.
+
+
+ A value indicating whether the page should be scrolled up.
+
+
+ A value indicating whether the scroll was handled.
+
+
+
+
+ Provides handling for the KeyUp event.
+
+ Event arguments.
+
+
+
+ Provides handling for the MouseEnter event.
+
+ Event arguments.
+
+
+
+ Provides handling for the MouseLeave event.
+
+ Event arguments.
+
+
+
+ Provides handling for the MouseMove event.
+
+ Event arguments.
+
+
+
+ Provides handling for the
+
+ event.
+
+
+ A that
+ contains the event data.
+
+
+
+
+ Provides handling for the MouseLeftButtonUp event.
+
+ Event arguments.
+
+
+
+ Provides handling for mouse button events.
+
+ A value indicating whether the event was handled.
+
+
+
+ Provides handling for the GotFocus event.
+
+ Event arguments.
+
+
+
+ Provides handling for the LostFocus event.
+
+ Event arguments.
+
+
+
+ Raises the
+
+ event when the
+
+ property value changes.
+
+
+ A
+ that contains the event data.
+
+
+
+
+ Change whether a TreeViewItem is selected.
+
+
+ Item whose selection is changing.
+
+
+ Container of the item whose selection is changing.
+
+
+ A value indicating whether the TreeViewItem is selected.
+
+
+
+
+ Update the selected value of the of the TreeView based on the value
+ of the currently selected TreeViewItem and the SelectedValuePath.
+
+
+ Value of the currently selected TreeViewItem.
+
+
+
+
+ Select the first item of the TreeView.
+
+
+
+
+ Focus the first item in the TreeView.
+
+ A value indicating whether the item was focused.
+
+
+
+ Focus the last item in the TreeView.
+
+ A value indicating whether the item was focused.
+
+
+
+ Gets the selected item in a
+ .
+
+
+ The currently selected item or null if no item is selected. The
+ default value is null.
+
+
+
+
+ Gets the value of the
+
+ property that is specified by the
+
+ property.
+
+
+ The value of the
+
+ property that is specified by the
+
+ property, or null if no item is selected. The default value is null.
+
+
+
+
+ Gets or sets the property path that is used to get the
+
+ property of the
+
+ property in a .
+
+
+ The property path that is used to get the
+
+ property of the
+
+ property in a . The
+ default value is .
+
+
+
+
+ Gets or sets the that is
+ applied to the container element generated for each item.
+
+
+ The applied to the container
+ element that contains each item.
+
+
+
+
+ Gets the currently selected TreeViewItem container.
+
+
+
+
+ Gets a value indicating whether the currently selected TreeViewItem
+ container is properly hooked up to the TreeView.
+
+
+
+
+ Gets or sets a value indicating whether the selected item is
+ currently being changed.
+
+
+
+
+ Gets the ItemsControlHelper that is associated with this control.
+
+
+
+
+ Gets the helper that provides all of the standard
+ interaction functionality.
+
+
+
+
+ Gets a value indicating whether the Control key is currently
+ pressed.
+
+
+
+
+ Gets a value indicating whether the Shift key is currently pressed.
+
+
+
+
+ Occurs when the value of the
+
+ property changes.
+
+
+
+
+ Overrides the item to allow for simple binding to the expanded
+ property on the item.
+
+ Returns a new container for an item.
+
+
+
+ This method returns the container with an expanded binding.
+
+ Returns the container with an expanded binding.
+
+
+
+ A derived TreeViewItem for IsExpanded binding.
+
+
+
+
+ Provides a selectable item for the
+ control.
+
+ Stable
+
+
+
+ Represents a control that contains a collection of items and a header.
+
+ Stable
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+ Note: WPF defines this property via a call to AddOwner of
+ HeaderedContentControl's HeaderProperty.
+
+
+
+
+ HeaderProperty property changed handler.
+
+
+ HeaderedItemsControl that changed its Header.
+
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+ Note: WPF defines this property via a call to AddOwner of
+ HeaderedContentControl's HeaderTemplateProperty.
+
+
+
+
+ HeaderTemplateProperty property changed handler.
+
+
+ HeaderedItemsControl that changed its HeaderTemplate.
+
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ ItemContainerStyleProperty property changed handler.
+
+
+ HeaderedItemsControl that changed its ItemContainerStyle.
+
+ Event arguments.
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Called when the value of the
+
+ property changes.
+
+
+ The old value of the
+
+ property.
+
+
+ The new value of the
+
+ property.
+
+
+
+
+ Called when the value of the
+
+ property changes.
+
+
+ The old value of the
+
+ property.
+
+
+ The new value of the
+
+ property.
+
+
+
+
+ Builds the visual tree for the
+ when a
+ new template is applied.
+
+
+
+
+ Prepares the specified element to display the specified item.
+
+
+ The container element used to display the specified item.
+
+ The content to display.
+
+
+
+ Prepares the specified container to display the specified item.
+
+
+ Container element used to display the specified item.
+
+ Specified item to display.
+ The parent ItemsControl.
+
+ The ItemContainerStyle for the parent ItemsControl.
+
+
+
+
+ Prepare a PrepareHeaderedItemsControlContainer container for an
+ item.
+
+ Container to prepare.
+ Item to be placed in the container.
+ The parent ItemsControl.
+
+ The ItemContainerStyle for the parent ItemsControl.
+
+
+
+
+ Check whether a control has the default value for a property.
+
+ The control to check.
+ The property to check.
+
+ True if the property has the default value; false otherwise.
+
+
+
+
+ Gets or sets a value indicating whether the Header property has been
+ set to the item of an ItemsControl.
+
+
+
+
+ Gets or sets the item that labels the control.
+
+
+ The item that labels the control. The default value is null.
+
+
+
+
+ Gets or sets a data template that is used to display the contents of
+ the control's header.
+
+
+ Gets or sets a data template that is used to display the contents of
+ the control's header. The default is null.
+
+
+
+
+ Gets or sets the that is
+ applied to the container element generated for each item.
+
+
+ The that is applied to the
+ container element generated for each item. The default is null.
+
+
+
+
+ Gets the ItemsControlHelper that is associated with this control.
+
+
+
+
+ The name of the ExpanderButton template part.
+
+
+
+
+ The name of the Header template part.
+
+
+
+
+ The ExpanderButton template part is used to expand and collapse the
+ TreeViewItem.
+
+
+
+
+ The Header template part is used to distinguish the bound Header
+ content of the TreeViewItem.
+
+
+
+
+ The ExpansionStates visual state group.
+
+
+
+
+ A value indicating whether a read-only dependency property change
+ handler should allow the value to be set. This is used to ensure
+ that read-only properties cannot be changed via SetValue, etc.
+
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ HasItemsProperty property changed handler.
+
+ TreeViewItem that changed its HasItems.
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ IsExpandedProperty property changed handler.
+
+ TreeViewItem that changed its IsExpanded.
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ IsSelectedProperty property changed handler.
+
+ TreeViewItem that changed its IsSelected.
+ Event arguments.
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ The identifier for the
+
+ dependency property.
+
+
+
+
+ IsSelectionActiveProperty property changed handler.
+
+ TreeViewItem that changed its IsSelectionActive.
+ Event arguments.
+
+
+
+ A reference to the parent ItemsControl of a TreeViewItem.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Returns a
+
+ for use by the Silverlight automation infrastructure.
+
+
+ A
+
+ object for the
+ .
+
+
+
+
+ Builds the visual tree for the
+ control when a
+ new control template is applied.
+
+
+
+
+ Provides handling for the ExpansionStates CurrentChanged event.
+
+ The ExpansionState VisualStateGroup.
+ Event arguments.
+
+
+
+ Scroll the TreeViewItem into view.
+
+
+
+
+ Update the visual state of the control.
+
+
+ A value indicating whether to automatically generate transitions to
+ the new state, or instantly transition to the new state.
+
+
+
+
+ Update the visual state of the control.
+
+
+ A value indicating whether to automatically generate transitions to
+ the new state, or instantly transition to the new state.
+
+
+
+
+ Creates a to
+ display content.
+
+
+ A to use as a
+ container for content.
+
+
+
+
+ Determines whether an object is a
+ .
+
+ The object to evaluate.
+
+ True if is a
+ ; otherwise,
+ false.
+
+
+
+
+ Prepares the specified container element to display the specified
+ item.
+
+
+ Container element used to display the specified item.
+
+ The item to display.
+
+
+
+ Removes all templates, styles, and bindings for the object displayed
+ as a .
+
+
+ The element to
+ clear.
+
+
+ The item that is contained in the
+ .
+
+
+
+
+ Makes adjustments to the
+ when the value
+ of the
+ property changes.
+
+
+ A
+
+ that contains data about the change.
+
+
+
+
+ Raise a RoutedEvent.
+
+ Event handler.
+ Event arguments.
+
+
+
+ Raises an
+ event
+ when the
+
+ property changes from false to true.
+
+
+ A that contains the
+ event data.
+
+
+
+
+ Raises a
+
+ event when the
+
+ property changes from true to false.
+
+
+ A that contains the
+ event data.
+
+
+
+
+ Handle changes to the IsExpanded property.
+
+ Event handler.
+ Event arguments.
+
+
+
+ Raises the
+ event
+ when the
+
+ property changes from false to true.
+
+
+ A that contains the
+ event data.
+
+
+
+
+ Raises the
+
+ event when the
+
+ property changes from true to false.
+
+
+ A that contains the
+ event data.
+
+
+
+
+ Provides handling for the
+ event.
+
+
+ A that contains the
+ event data.
+
+
+
+
+ Provides handling for the
+ event.
+
+
+ A that contains the
+ event data.
+
+
+
+
+ Handle the ExpanderButton's GotFocus event.
+
+ The ExpanderButton.
+ Event Arguments.
+
+
+
+ Provides handling for the
+ event.
+
+
+ A that contains
+ the event data.
+
+
+
+
+ Provides handling for the
+ event.
+
+
+ A that contains
+ the event data.
+
+
+
+
+ Provides handling for the Header's MouseLeftButtonDown event.
+
+ The Header template part.
+ Event arguments.
+
+
+
+ Provides handling for the ExpanderButton's Click event.
+
+ The ExpanderButton.
+ Event Arguments.
+
+
+
+ Provides handling for the
+ event.
+
+
+ A that
+ contains the event data.
+
+
+
+
+ Provides handling for the
+ event.
+
+
+ A that
+ contains the event data.
+
+
+
+
+ Provides handling for the
+ event when the
+ has focus.
+
+
+ A that contains
+ the event data.
+
+
+
+
+ Try moving the focus down from the selected item.
+
+
+ A value indicating whether the focus was successfully moved.
+
+
+
+
+ Provides handling for the
+ event.
+
+
+ A that contains
+ the event data.
+
+
+
+
+ Try moving the focus up from the selected item.
+
+
+ A value indicating whether the focus was successfully moved.
+
+
+
+
+ Handle scrolling a page up or down.
+
+
+ A value indicating whether the page should be scrolled up.
+
+ The ScrollViewer being scrolled.
+ The height of the viewport.
+ The top of item to start from.
+ The bottom of the item to start from.
+ The height of this item.
+
+ A value indicating whether the scroll was handled.
+
+
+
+
+ Calculate the distance between this TreeViewItem and the item being
+ paged from.
+
+
+ A value indicating whether the page should be scrolled up.
+
+ The element being paged from.
+ The ScrollViewer being scrolled.
+ The top of item to start from.
+ The bottom of the item to start from.
+
+ The distance between the top/bottom of one item to the other.
+
+
+ A value indicating whether the scroll was handled.
+
+
+
+
+ Change the selected status of the TreeViewItem.
+
+
+ A value indicating whether the TreeViewItem is selected.
+
+
+
+
+ Update the ancestors of this item when it changes selection.
+
+
+ A value indicating whether the item is selected.
+
+
+ Unselection updates need to occur before selection updates because
+ the old and new selected items may share a partial path.
+
+
+
+
+ Determine whether the TreeViewItem should be allowed to handle a key
+ event.
+
+
+ A value indicating whether the key event should be handled.
+
+
+
+
+ Navigate the focus to the next TreeViewItem below this item.
+
+
+ A value indicating whether the focus was navigated.
+
+
+
+
+ Navigate the focus to the very last TreeViewItem descendent of the
+ this item.
+
+
+ A value indicating whether the focus was navigated.
+
+
+
+
+ Find the next focusable TreeViewItem below this item.
+
+
+ A value indicating whether the item should recurse into its child
+ items when searching for the next focusable TreeViewItem.
+
+ The next focusable TreeViewItem below this item.
+
+
+
+ Find the last focusable TreeViewItem contained by this item.
+
+
+ The last focusable TreeViewItem contained by this item.
+
+
+
+
+ Find the previous focusable TreeViewItem above this item.
+
+
+ The previous focusable TreeViewItem above this item.
+
+
+
+
+ Gets or sets the ExpanderButton template part is used to expand and
+ collapse the TreeViewItem.
+
+
+
+
+ Gets the Header template part that is used to distinguish the bound
+ Header content of the TreeViewItem.
+
+
+
+
+ Gets or sets the ExpansionStates visual state group.
+
+
+
+
+ Gets or sets a value indicating whether a dependency property change
+ handler should ignore the next change notification. This is used to
+ reset the value of properties without performing any of the actions
+ in their change handlers.
+
+
+
+
+ Gets a value indicating whether this
+ contains
+ items.
+
+
+ True if this
+ contains items; otherwise, false. The default is false.
+
+
+
+
+ Gets or sets a value indicating whether the
+
+ contained by this
+ are expanded
+ or collapsed.
+
+
+ True to indicate the contents of the
+
+ collection are expanded; false to indicate the items are collapsed.
+ The default is false.
+
+
+
+
+ Gets or sets a value indicating whether this
+ is selected.
+
+
+ True if this
+ is selected; otherwise, false. The default is false.
+
+
+
+
+ Gets a value indicating whether the
+ has focus.
+
+
+ True if this
+ has focus; otherwise, false. The default is false.
+
+
+
+
+ Gets the helper that provides all of the standard
+ interaction functionality.
+
+
+
+
+ Gets or sets a value indicating whether the TreeView's currently
+ selected item is a descendent of this TreeViewItem.
+
+
+
+
+ Gets or sets a value indicating whether the TreeViewItem should
+ ignore the next GotFocus event it receives because it has already
+ been handled by one of its children.
+
+
+
+
+ Gets or sets a value indicating whether checking ContainsSelection
+ should actually perform the update notifications because the item
+ was selected before it was in the visual tree.
+
+
+
+
+ Gets or sets a value indicating whether a user initiated action
+ caused the IsExpanded property to be set.
+
+
+
+
+ Gets or sets a reference to the parent ItemsControl of a
+ TreeViewItem.
+
+
+
+
+ Gets a reference to the parent TreeViewItem of this TreeViewItem.
+
+
+
+
+ Gets a reference to the parent TreeView of the TreeViewItem.
+
+
+
+
+ Gets a value indicating whether this TreeViewItem is a root of the
+ TreeView.
+
+
+
+
+ Gets a value indicating whether the TreeViewItem can expand when it
+ receives appropriate user input.
+
+
+
+
+ Occurs when the
+
+ property changes from true to false.
+
+
+
+
+ Occurs when the
+
+ property changes from false to true.
+
+
+
+
+ Occurs when the
+
+ property of a
+ changes from false to true.
+
+
+
+
+ Occurs when the
+
+ property of a
+ changes from true to false.
+
+
+
+
+ Overrides the item to allow for simple binding to the expanded
+ property on the item.
+
+ Returns a new container for an item.
+
+
+
+ Overrides the key down event to allow toggling the space.
+
+ The key event arguments data.
+
+
+
+ A specialized content control that contains a fixed header, a standard
+ header content property, plus content. It is designed specifically for
+ a "slide-based" user interface for simple user interfaces.
+
+
+
+
+ The visual state group name for slide position.
+
+
+
+
+ The visual state name for left position.
+
+
+
+
+ The visual state name for right position.
+
+
+
+
+ The normal visual state name for position.
+
+
+
+
+ The content template part name.
+
+
+
+
+ The header template part name.
+
+
+
+
+ The fixed header template name.
+
+
+
+
+ The manager of the slide and its siblings.
+
+
+
+
+ Identifies the Header dependency property.
+
+
+
+
+ Identifies the FixedHeader dependency property.
+
+
+
+
+ Identifies the Position dependency property.
+
+
+
+
+ PositionProperty property changed handler.
+
+ Slide that changed its Position.
+ Event arguments.
+
+
+
+ Initializes a new instance of the Slide class.
+
+
+
+
+ Remove the slide from the parent manager.
+
+
+
+
+ Locate template parts and assign instances to fields during template
+ application.
+
+
+
+
+ Fires the slide changed event.
+
+
+
+
+ Fires the current state changed event.
+
+ The source object.
+ The event arguments.
+
+
+
+ Helps debugging by providing information about the slide name.
+
+ Returns the name of the slide.
+
+
+
+ Updates the visual state.
+
+ A value indicating whether to use
+ visual transitions for the state change.
+ The slide position to use.
+
+
+
+ Event fired when the current slide changes.
+
+
+
+
+ Gets or sets the primary header content.
+
+
+
+
+ Gets or sets the fixed header content.
+
+
+
+
+ Gets or sets the position of the slide.
+
+
+
+
+ Gets or sets the slide manager for the slide.
+
+
+
+
+ A helper class to managing sets of slides.
+
+
+
+
+ Initializes a new instance of the SlideManager class.
+
+
+
+
+ Stores the linked list node for the current slide.
+
+
+
+
+ Backing field for the set of slides.
+
+
+
+
+ Adds a slide or an array of slides to the managed slide set.
+
+ The slides to manage.
+
+
+
+ Initializes the position of the slide based on location.
+
+ The slide instance.
+ A property indicating whether the slide is the
+ first to be managed.
+
+
+
+ Manages a new slide, inserting it after an existing slide node.
+
+ The node to insert after.
+ The new slide instance.
+ Returns the linked list node that is inserted.
+
+
+
+ Inserts a slide as the first in the linked list.
+
+ The new slide instance.
+ Returns the linked list node.
+
+
+
+ Insert a slide after a provided linked list node.
+
+ The node to insert after.
+ The new slide to insert.
+ Returns the new linked list node.
+
+
+
+ Remove a slide from management.
+
+ The slide instance.
+
+
+
+ Move to the previous slide.
+
+
+
+
+ Move to the next slide.
+
+
+
+
+ Moves to a specific slide, moving the others to the appropriate
+ direction on screen.
+
+ The slide to move to.
+
+
+
+ Move in a direction.
+
+ A value indicating whether the direction to
+ move is forward or not.
+
+
+
+ Gets the current slide instance.
+
+
+
+
+ Indicates the position that the slide should have.
+
+
+
+
+ Normal position, centered on the screen.
+
+
+
+
+ To the left of the screen.
+
+
+
+
+ To the right of the screen.
+
+
+
+
+ The TagEditor control provides a brief user interface allowing for the
+ selection of a set of tests, used to filter the test run.
+
+
+
+
+ Key used to lookup the TagHistory site setting.
+
+
+
+
+ Key used to lookup whether the last run used tag expressions.
+
+
+
+
+ Number of seconds to wait before running the test.
+
+
+
+
+ Backing field for the last run used value.
+
+
+
+
+ Initializes a new instance of the TagEditor type. Also includes a
+ set of sample tags for display to the end user.
+
+ The tag expression to use.
+ Sample tags to display.
+
+
+
+ Initializes a new instance of the TagEditor type.
+
+ The tag expression to use.
+
+
+
+ Initializes a new instance of the TagEditor type.
+
+
+
+
+ Handles the key down event.
+
+ The key event arguments.
+
+
+
+ Fires the Complete event.
+
+ The event arguments.
+
+
+
+ Creates a new button.
+
+ The button content.
+ Returns a new Button instance.
+
+
+
+ Handle selection of a tag button.
+
+ Tag button.
+ Event arguments.
+
+
+
+ Handle changes to the Tag text.
+
+ Tag TextBox.
+ Event arguments.
+
+
+
+ Handle clicks to the Run button.
+
+ Run Button.
+ Event arguments.
+
+
+
+ Handle timer ticks.
+
+ The timer.
+ Event arguments.
+
+
+
+ Stop the timer.
+
+
+
+
+ Run the unit tests.
+
+
+
+
+ Cancels the selection of a tag expression.
+
+ The source object.
+ The event data.
+
+
+
+ InitializeComponent
+
+
+
+
+ Gets or sets the timer used to automatically run tests if no tag is
+ entered.
+
+
+
+
+ Gets or sets the number of seconds already waited.
+
+
+
+
+ Gets or sets the tag history.
+
+
+
+
+ An event that indicates that the tag editor is complete. This can be
+ in response to many actions: the user entering a tag expression, the
+ time expiring and the default being selected, or the selection being
+ canceled.
+
+
+
+
+ A class for storing event information relating to a user's selected
+ tag expression for a test run.
+
+
+
+
+ Initializes a new instance of the TagExpression event arguments
+ class.
+
+ The tag expression.
+
+
+
+ Gets the tag expression stored in the event arguments.
+
+
+
+
+ Gets a value indicating whether a tag expression has been set.
+
+
+
+
+ Displays information about any exceptions listed in the results.
+
+
+
+
+ Initializes a new instance of the TestExceptionDetails class.
+
+
+
+
+ InitializeComponent
+
+
+
+
+ Details view for test method data.
+
+
+
+
+ Initializes a new instance of the TestMethodDetails class.
+
+
+
+
+ InitializeComponent
+
+
+
+
+ A set of simple time helper methods.
+
+
+
+
+ Returns a human-readable formatting of the time different between
+ two DateTime instances.
+
+ The starting time.
+ The finishing time.
+ Returns a human-readable string.
+
+
+
+ Returns a human-readable formatting of the time different between
+ two DateTime instances.
+
+ The time span instance.
+ Returns a human-readable string.
+
+
+
+ A plural 's' as the suffix, when not equal to one.
+
+ The string value.
+ The number to check.
+ Returns an empty string or the English plural 's'.
+
+
+
+ Provides the necessary infrastructure to enable drawing connecting
+ lines between the TreeViewItems in a TreeView.
+
+ Experimental
+
+
+
+ Gets the value of the ConnectingLineInfo attached property for a
+ specified TreeViewItem.
+
+
+ The TreeViewItem from which the property value is read.
+
+
+ The ConnectingLineInfo property value for the TreeViewItem.
+
+
+
+
+ Identifies the ConnectingLineInfo dependency property.
+
+
+
+
+ Gets the value of the IsVerticalConnectingLineOf attached property
+ for a specified Line.
+
+ The Line from which the property value is read.
+ The IsVerticalConnectingLineOf property value for the Line.
+
+
+
+ Sets the value of the IsVerticalConnectingLineOf attached property to a specified Line.
+
+ The Line to which the attached property is written.
+ The needed IsVerticalConnectingLineOf value.
+
+
+
+ Identifies the IsVerticalConnectingLineOf dependency property.
+
+
+
+
+ IsVerticalConnectingLineOfProperty property changed handler.
+
+
+ Line that changed its IsVerticalConnectingLineOf TreeViewItem.
+
+ Event arguments.
+
+
+
+ Gets the value of the IsHorizontalConnectingLineOf attached property
+ for a specified Line.
+
+
+ The Line from which the property value is read.
+
+
+ The IsHorizontalConnectingLineOf property value for the Line.
+
+
+
+
+ Sets the value of the IsHorizontalConnectingLineOf attached property
+ to a specified Line.
+
+
+ The Line to which the attached property is written.
+
+
+ The needed IsHorizontalConnectingLineOf value.
+
+
+
+
+ Identifies the IsHorizontalConnectingLineOf dependency property.
+
+
+
+
+ IsHorizontalConnectingLineOfProperty property changed handler.
+
+
+ Line that changed its IsHorizontalConnectingLineOf TreeViewItem.
+
+ Event arguments.
+
+
+
+ Gets the value of the IsExpanderButtonOf attached property for a
+ specified ToggleButton.
+
+
+ The ToggleButton from which the property value is read.
+
+
+ The IsExpanderButtonOf property value for the ToggleButton.
+
+
+
+
+ Sets the value of the IsExpanderButtonOf attached property to a
+ specified ToggleButton.
+
+
+ The ToggleButton to which the attached property is written.
+
+ The needed IsExpanderButtonOf value.
+
+
+
+ Identifies the IsExpanderButtonOf dependency property.
+
+
+
+
+ IsExpanderButtonOfProperty property changed handler.
+
+
+ ToggleButton that changed its IsExpanderButtonOf TreeViewItem.
+
+ Event arguments.
+
+
+
+ Gets the value of the IsHeaderOf attached property for a specified
+ FrameworkElement.
+
+
+ The FrameworkElement from which the property value is read.
+
+
+ The IsHeaderOf property value for the FrameworkElement.
+
+
+
+
+ Sets the value of the IsHeaderOf attached property to a specified
+ FrameworkElement.
+
+
+ The FrameworkElement to which the attached property is written.
+
+ The needed IsHeaderOf value.
+
+
+
+ Identifies the IsHeaderOf dependency property.
+
+
+
+
+ IsHeaderOfProperty property changed handler.
+
+
+ FrameworkElement that changed its IsHeaderOf TreeViewItem.
+
+ Event arguments.
+
+
+
+ Provides useful extensions to TreeView and TreeViewItem instances.
+
+ Experimental
+
+
+
+ Get the parent ItemsControl of an element.
+
+ The element.
+
+ The parent ItemsControl of an element, or null if not found.
+
+
+
+
+ Get the ancestor ItemsControls of an element.
+
+ The element.
+
+ The ancestor ItemsControls of an element.
+
+
+
+
+ Get the parent TreeViewItem of a TreeViewItem.
+
+ The TreeViewItem.
+
+ The parent TreeViewItem if found, otherwise null.
+
+
+ is null.
+
+
+
+
+ Get the parent TreeView of a TreeViewItem.
+
+ The TreeViewItem.
+ The parent TreeView if found, otherwise null.
+
+ is null.
+
+
+
+
+ Get the TreeViewItem containers of a TreeView.
+
+ The TreeView.
+ The TreeViewItem containers of a TreeView.
+
+ is null.
+
+
+
+
+ Get the child TreeViewItem containers of a TreeViewItem.
+
+ The TreeViewItem.
+
+ The child TreeViewItem containers of a TreeViewItem.
+
+
+ is null.
+
+
+
+
+ Get the items and TreeViewItem containers of a TreeView.
+
+ The TreeView.
+
+ The items and TreeViewItem containers of a TreeView.
+
+
+ is null.
+
+
+
+
+ Get the items and TreeViewItem containers of a TreeViewItem.
+
+ The TreeViewItem.
+
+ The items and TreeViewItem containers of a TreeViewItem.
+
+
+ is null.
+
+
+
+
+ Get the TreeViewItem containers of a TreeView.
+
+ The TreeView.
+ The TreeViewItem containers of a TreeView.
+
+ is null.
+
+
+
+
+ Get the descendant TreeViewItem containers of a TreeViewItem.
+
+ The TreeViewItem.
+
+ The descendant TreeViewItem containers of a TreeViewItem.
+
+
+ is null.
+
+
+
+
+ Get the descendant items and TreeViewItem containers of a TreeView.
+
+ The TreeView.
+
+ The descendant items and TreeViewItem containers of a TreeView.
+
+
+ is null.
+
+
+
+
+ Get the descendant items and TreeViewItem containers of a
+ TreeViewItem.
+
+ The TreeViewItem.
+
+ The descendant items and TreeViewItem containers of a TreeViewItem.
+
+
+ is null.
+
+
+
+
+ Get the items and TreeViewItem containers of a TreeView or
+ TreeViewItem.
+
+ The TreeView or TreeViewItem.
+
+ The items and TreeViewItem containers of a TreeView or TreeViewItem.
+
+
+
+
+ Get the sibling items and containers of the item.
+
+ The TreeViewItem.
+ The sibling items and containers of the item.
+
+
+
+ Get the TreeViewItems already created that are used to represent the
+ given item.
+
+ The TreeView.
+ The item being represented.
+
+ A sequence of TreeViewItems that represent the given item, or an
+ empty sequence if none were found.
+
+
+ is null.
+
+
+
+
+ Get the TreeViewItem already created that is used to represent the
+ given item.
+
+ The TreeView.
+ The item being represented.
+
+ The TreeViewItems that represents the given item, or null if no
+ container was found.
+
+
+ If multiple TreeViewItems represent the same item, the first item
+ found via a breadth-first search will be used.
+
+
+ is null.
+
+
+
+
+ Gets a path of items and TreeViewItem containers from the
+ TreeViewItem to the root of the TreeView.
+
+ The TreeViewItem.
+
+ A path of items and TreeViewItem containers from the TreeViewItem to
+ the root of the TreeView.
+
+
+ is null.
+
+
+
+
+ Gets a path of items and TreeViewItem containers from the
+ TreeViewItem to the root of the TreeView.
+
+ The TreeViewItem.
+
+ A path of items and TreeViewItem containers from the TreeViewItem to
+ the root of the TreeView.
+
+
+
+
+ Get the item wrapped by this container.
+
+ The TreeViewItem.
+
+ The item wrapped by the container, or null if not found.
+
+
+ is null.
+
+
+
+
+ Get the item of the parent container for a specified
+ .
+
+
+ The TreeView containing the .
+
+ The child item.
+
+ The item of the parent container for the specified
+ , or null if not found.
+
+
+
+
+ Gets a value indicating whether the TreeViewItem is a root of its
+ TreeView.
+
+ The TreeViewItem.
+
+ A value indicating whether the TreeViewItem is a root of its
+ TreeView.
+
+
+ is null.
+
+
+
+
+ Gets a value indicating whether the TreeViewItem is a leaf in its
+ TreeView.
+
+ The TreeViewItem.
+
+ A value indicating whether the TreeViewItem is a leaf in its
+ TreeView.
+
+
+ is null.
+
+
+
+
+ Gets the depth of a TreeViewItem in its TreeView (using a zero-based
+ index).
+
+ The TreeViewItem.
+
+ The depth of a TreeViewItem in its TreeView (using a zero-based
+ index).
+
+
+ is null.
+
+
+ is not in a TreeView.
+
+
+
+
+ Get the selected TreeViewItem in a TreeView.
+
+ The TreeView.
+
+ The selected TreeViewItem, or null if no selected item found.
+
+
+ is null.
+
+
+
+
+ Sets the selected TreeViewItem of a TreeView.
+
+ The TreeView.
+ The TreeViewItem to select.
+
+ is null.
+
+
+
+
+ Clear the selection of the TreeView.
+
+ The TreeView.
+
+ is null.
+
+
+
+
+ Select an item in the TreeView.
+
+ The TreeView.
+ The item to select.
+
+ A value indicating whether the item was successfully set as the
+ TreeView's SelectedItem.
+
+
+ is null.
+
+
+
+
+ Gets the path to the TreeView's selected item.
+
+ The TreeView.
+ The path to the TreeView's selected item.
+
+ is null.
+
+
+
+
+ Recursively expand or collapse the TreeViewItem and all of its
+ descendants.
+
+ The TreeViewItem.
+
+ A value indicating whether to expand or collapse.
+
+
+ The number of levels that have already been collapsed or expanded.
+ This is used in conjunction with the optional maximumDepth to only
+ expand a specified number of layers.
+
+
+ An optional depth that defines the number of layers to expand or
+ collapse.
+
+
+
+
+ Expand or collapse all of the descendants of the TreeView.
+
+ The TreeView.
+
+ A value indicating whether to expand or collapse.
+
+
+ An optional depth that defines the number of layers to expand or
+ collapse.
+
+
+
+
+ Expand all of the items in a TreeView.
+
+ The TreeView.
+
+ is null.
+
+
+
+
+ Collapse all of the items in a TreeView.
+
+ The TreeView.
+
+ is null.
+
+
+
+
+ Expand a specified number of layers in a TreeView.
+
+ The TreeView.
+ The number of layers to expand.
+
+ is null.
+
+
+
+
+ Expand a path from the given item to the root of it's TreeView.
+
+ The TreeViewItem.
+
+ A value indicating whether to collapse siblings while expanding the
+ path. This will result in only the path from the item to the root
+ being expanded.
+
+
+
+
+ Expand a path from the TreeViewItem to the root of the TreeView.
+
+ The TreeViewItem.
+
+ is null.
+
+
+
+
+ Expand the path from the SelectedItem to the root of the TreeView.
+
+ The TreeView.
+
+ is null.
+
+
+
+
+ Collapse all TreeViewItems except those along the path from the
+ TreeView's SelectedItem to the root of the TreeView.
+
+ The TreeView.
+
+ is null.
+
+
+
+
+ Expand the given path of items starting from the TreeView's root.
+
+ The TreeView.
+
+ The sequence of items corresponding to the path to expand.
+
+
+ is null.
+
+
+ is null.
+
+
+
+
+ Expand the given path of items starting from the TreeView's root.
+
+
+ The type of items provided in .
+
+ The TreeView.
+
+ The sequence of items corresponding to the path to expand.
+
+
+ is null.
+
+
+ is null.
+
+
+
+
+ Expand the given path of items starting from the TreeView's root.
+
+
+ The type of items provided in .
+
+ The TreeView.
+
+ A function that takes a TreeViewItem's item and returns a value to
+ compare against elements of the given .
+ The item itself will be used if
+ is null.
+
+
+ The sequence of items corresponding to the path to expand.
+
+
+ is null.
+
+
+ is null.
+
+
+
+
+ Expand the given path of items starting from the TreeView's root.
+
+
+ The type of items provided in .
+
+ The TreeView.
+
+ A function that takes a TreeViewItem's item and returns a value to
+ compare against elements of the given .
+ The item itself will be used if
+ is null.
+
+
+ The sequence of items corresponding to the path to expand.
+
+
+ is null.
+
+
+ is null.
+
+
+
+
+ Gets the value of the IsChecked attached property for a specified
+ TreeViewItem.
+
+
+ The TreeViewItem from which the property value is read.
+
+
+ The IsChecked property value for the TreeViewItem.
+
+
+
+
+ Sets the value of the IsChecked attached property to a specified
+ TreeViewItem.
+
+
+ The TreeViewItem to which the attached property is written.
+
+ The needed IsChecked value.
+
+
+
+ Identifies the IsChecked dependency property.
+
+
+
+
+ IsCheckedProperty property changed handler.
+
+ The TreeViewItem that changed IsChecked.
+ Event arguments.
+
+
+
+ Gets the value of the AssociatedCheckBox attached property for a
+ specified TreeViewItem.
+
+
+ The TreeViewItem from which the property value is read.
+
+
+ The AssociatedCheckBox property value for the TreeViewItem.
+
+
+
+
+ Sets the value of the AssociatedCheckBox attached property to a
+ specified TreeViewItem.
+
+
+ The TreeViewItem to which the attached property is written.
+
+ The needed AssociatedCheckBox value.
+
+
+
+ Identifies the AssociatedCheckBox dependency property.
+
+
+
+
+ AssociatedCheckBoxProperty property changed handler.
+
+
+ The TreeViewItem that changed its AssociatedCheckBox.
+
+ Event arguments.
+
+
+
+ Get the sequence of items and containers with their IsChecked
+ property set to True.
+
+ The TreeView.
+
+ The sequence of items and containers with their IsChecked property
+ set to True.
+
+
+ is null.
+
+
+
+
+ Get the sequence of items and containers with their IsChecked
+ property set to True.
+
+ The TreeView.
+
+ A value indicating whether to include TreeViewItems with an
+ indeterminate IsChecked value.
+
+
+ The sequence of items and containers with their IsChecked property
+ set to True or also set to null if indeterminate values are
+ included.
+
+
+ is null.
+
+
+
+
+ Gets or sets a value indicating whether recursive calls to
+ OnIsCheckedPropertyChanged should ignore their notifications or
+ process them accordingly.
+
+
+
+
+ Gets or sets a value indicating whether recursive calls to
+ OnIsCheckedPropertyChanged should update their children when their
+ IsChecked value has changed.
+
+
+
+
+ Represents a CheckBox whose value is associated with the
+ TreeViewExtensions.IsChecked attached property of TreeViewItems.
+
+ Experimental
+
+
+
+ The parent TreeViewItem of the CheckBox.
+
+
+
+
+ Initializes a new instance of the TreeViewItemCheckBox class.
+
+
+
+
+ Associate the parent TreeViewItem with the CheckBox.
+
+
+
+
+ Update the TreeViewItem's IsChecked property when this IsChecked
+ property is changed.
+
+ The CheckBox.
+ Event arguments.
+
+
+
+ Gets the parent TreeViewItem of the CheckBox.
+
+
+
+
+ Represents the necessary information to draw connecting lines in a
+ TreeViewItem.
+
+ Experimental
+
+
+
+ Initializes a new instance of the TreeViewItemConnectingLineInfo
+ class.
+
+ The TreeViewItem.
+
+
+
+ Position the connecting lines in the TreeViewItem.
+
+
+
+
+ Position the vertical connecting line in the TreeViewItem.
+
+
+
+
+ Gets the TreeViewItem.
+
+
+
+
+ Gets or sets the vertical connecting line of the TreeViewItem.
+
+
+
+
+ Gets or sets the horizontal connecting line of the TreeViewItem.
+
+
+
+
+ Gets or sets the expander button of the TreeViewItem.
+
+
+
+
+ Gets or sets the header of the TreeViewItem.
+
+
+
+
+ Used to convert TreeViewItems into a value based on their depth in
+ the TreeView.
+
+ Experimental
+
+
+
+ Initializes a new instance of the TreeViewItemIndentationConverter
+ class.
+
+
+
+
+ Convert a TreeViewItem into a value based on the depth of the item
+ in the TreeView.
+
+ The TreeViewItem.
+
+ The indentation type to convert to (such as Thickness or double).
+
+
+ The number of pixels to indent each level of the TreeView. A
+ default value of 15.0 will be used if no parameter is provided.
+
+
+ The culture used to convert the TreeViewItem.
+
+
+ A value based on the depth of the item in the TreeView.
+
+
+
+
+ Wrap the indentation in the desired type.
+
+
+ The number of pixels to indent the TreeViewItem.
+
+
+ The indentation type to convert to (such as Thickness or double).
+
+
+ A value based on the depth of the item in the TreeView.
+
+
+
+
+ Convert an indentation back into a TreeViewItem. This always throws
+ a NotSupportedException.
+
+ The indentation.
+ The type of the indentation.
+
+ The number of pixels to indent each level of the TreeView.
+
+
+ The culture used to convert the TreeViewItem.
+
+ Always throws a NotSupportedException.
+
+
+
+ A set of simple extension methods for applications.
+
+
+
+
+ Checks whether the application host object is not null.
+
+ The application instance.
+ Returns a value indicating whether the object is not null.
+
+
+
+ Checks whether the application host and its source object is not
+ null.
+
+ The application instance.
+ Returns a value indicating whether the object is not null.
+
+
+
+ A value converter for collapsing or showing elements.
+
+
+
+
+ Convert a boolean value to a Visibility value.
+
+ The value instance.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Support two-way databinding of the VisibilityConverter, converting
+ Visibility to a bool.
+
+ The value instance.
+ The target parameter.
+ ConverterParameter is of type Visibility.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Determine the visibility mode based on a converter parameter. This
+ parameter is of type Visibility,and specifies what visibility value
+ to return when the boolean value is true.
+
+ The parameter object.
+ Returns a Visibility value.
+
+
+
+ Determine whether or not visibility is inverted based on a converter
+ parameter. When the parameter is specified as Collapsed, that means
+ that when the boolean value is true, we should return Collapsed,
+ which is inverted.
+
+ The parameter object.
+ Returns a value indicating whether the visibility is
+ inverted.
+
+
+
+ Visual states helper code.
+
+
+
+
+ Gets the implementation root of the Control.
+
+ The DependencyObject.
+
+ Implements Silverlight's corresponding internal property on Control.
+
+ Returns the implementation root or null.
+
+
+
+ This method tries to get the named VisualStateGroup for the
+ dependency object. The provided object's ImplementationRoot will be
+ looked up in this call.
+
+ The dependency object.
+ The visual state group's name.
+ Returns null or the VisualStateGroup object.
+
+
+
+ Provides useful extensions for working with the visual tree.
+
+
+ Since many of these extension methods are declared on types like
+ DependencyObject high up in the class hierarchy, we've placed them in
+ the Primitives namespace which is less likely to be imported for normal
+ scenarios.
+
+ Experimental
+
+
+
+ Get the visual tree ancestors of an element.
+
+ The element.
+ The visual tree ancestors of the element.
+
+ is null.
+
+
+
+
+ Get the visual tree ancestors of an element and the element itself.
+
+ The element.
+
+ The visual tree ancestors of an element and the element itself.
+
+
+ is null.
+
+
+
+
+ Get the visual tree ancestors of an element and the element itself.
+
+ The element.
+
+ The visual tree ancestors of an element and the element itself.
+
+
+
+
+ Get the visual tree children of an element.
+
+ The element.
+ The visual tree children of an element.
+
+ is null.
+
+
+
+
+ Get the visual tree children of an element and the element itself.
+
+ The element.
+
+ The visual tree children of an element and the element itself.
+
+
+ is null.
+
+
+
+
+ Get the visual tree children of an element and the element itself.
+
+ The element.
+
+ The visual tree children of an element and the element itself.
+
+
+
+
+ Get the visual tree descendants of an element.
+
+ The element.
+ The visual tree descendants of an element.
+
+ is null.
+
+
+
+
+ Get the visual tree descendants of an element and the element
+ itself.
+
+ The element.
+
+ The visual tree descendants of an element and the element itself.
+
+
+ is null.
+
+
+
+
+ Get the visual tree descendants of an element and the element
+ itself.
+
+ The element.
+
+ The visual tree descendants of an element and the element itself.
+
+
+
+
+ Get the visual tree siblings of an element.
+
+ The element.
+ The visual tree siblings of an element.
+
+ is null.
+
+
+
+
+ Get the visual tree siblings of an element and the element itself.
+
+ The element.
+
+ The visual tree siblings of an element and the element itself.
+
+
+ is null.
+
+
+
+
+ Get the bounds of an element relative to another element.
+
+ The element.
+
+ The element relative to the other element.
+
+
+ The bounds of the element relative to another element, or null if
+ the elements are not related.
+
+
+ is null.
+
+
+ is null.
+
+
+
+
+ Perform an action when the element's LayoutUpdated event fires.
+
+ The element.
+ The action to perform.
+
+ is null.
+
+
+ is null.
+
+
+
+
+ Retrieves all the logical children of a framework element using a
+ breadth-first search. For performance reasons this method manually
+ manages the stack instead of using recursion.
+
+ The parent framework element.
+ The logical children of the framework element.
+
+
+
+ Retrieves all the logical descendents of a framework element using a
+ breadth-first search. For performance reasons this method manually
+ manages the stack instead of using recursion.
+
+ The parent framework element.
+ The logical children of the framework element.
+
+
+
+ The CodeCoverage class is used to collect code coverage information from
+ assemblies that have been instrumented to call the Visit function at the
+ beginning of every basic block.
+
+
+
+
+ A bit array used to track which basic blocks have been executed.
+
+
+
+
+ A counter of the hit blocks.
+
+
+
+
+ Record that a basic block is being executed.
+
+ Id of the basic block.
+
+
+
+ Get the coverage data serialized as a string for easy transport.
+
+ Previous releases of the framework used a simplistic bit
+ list, this release updates the coverage reporting endpoint to an
+ alternate version that ends in base 64. This maintains test runner
+ compatibility with previous official releases.
+ Coverage data serialized as a string.
+
+
+
+ Gets the current number of hit blocks.
+
+
+
+
+ Gets the current size of the blocks counter. This is not actually
+ the number of hit blocks, but it should return 0 always except
+ when at least one block is hit.
+
+
+
+
+ Base class for test cases that use special functionality of the
+ Microsoft.Silverlight.Testing unit test framework.
+
+ Tests that derive from CustomTest in most cases will not be source- or
+ functionality- compatible with the more advanced desktop Visual Studio
+ Test Team environment and harnesses.
+
+
+
+
+ Process an exception using the test engine logic for
+ ExpectedExceptions and logging the exception if needed.
+
+ Exception object.
+
+
+
+ Gets or sets a value indicating whether global unhandled exceptions
+ should be intercepted by the test harness.
+
+
+
+
+ Gets or sets the unit test harness instance. Hidden from the VS
+ browser as test developers should not need to use this property.
+
+
+
+
+ Gets the current test task container.
+
+ The current container for the test's tasks.
+
+
+
+ Manages the unit test status and model by attaching to the unit test
+ harness instance. Validates that all key logging can be done without
+ special hooks inside of the unit test harness implementation.
+
+
+
+
+ The unit test harness instance.
+
+
+
+
+ The test run data.
+
+
+
+
+ Map assembly metadata to data objects.
+
+
+
+
+ Map test class metadata to data objects.
+
+
+
+
+ Map test metadata to data objects.
+
+
+
+
+ Backing field for the last result.
+
+
+
+
+ Backing field for the last failing result.
+
+
+
+
+ Initializes a new instance of the DataManager type.
+
+ The unit test harness instance.
+
+
+
+ Initializes a new instance of the DataManager.
+
+ The unit test harness instance.
+ Returns a new instance of a DataManager class.
+
+
+
+ Connect to unit test harness events for processing and updating the
+ underlying unit test run model.
+
+
+
+
+ Unhook from the unit test harness events.
+
+
+
+
+ Process the starting of the test run.
+
+ The source object.
+ The event data.
+
+
+
+ Process the test class starting event.
+
+ The source object.
+ The event data.
+
+
+
+ Process the test class complete event.
+
+ The source object.
+ The event data.
+
+
+
+ Process the start of a test method.
+
+ The source object.
+ The event data.
+
+
+
+ Process the completion of test methods.
+
+ The source object.
+ The event data.
+
+
+
+ Process a result.
+
+ The result data.
+
+
+
+ Gets or creates the data model object for an assembly.
+
+ The test assembly.
+ Returns the data object.
+
+
+
+ Gets or creates the data model object for a test class.
+
+ The test class.
+ Returns the data object.
+
+
+
+ Gets or creates the data model object for a test method.
+
+ The test method.
+ The parent test class data object.
+ Returns the data object.
+
+
+
+ Gets the unit test harness instance.
+
+
+
+
+ Gets the unit test model.
+
+
+
+
+ A data object storing the hierarchical results for a test assembly in a
+ test run.
+
+
+
+
+ A base class for model objects that implement the property
+ changed interface, to simplify calling the change handlers,
+ and cache the underlying event argument instances.
+
+
+
+
+ A static set of change argument instances, eventually
+ storing one argument instance for each property name to
+ reduce churn at runtime.
+
+
+
+
+ Notify any listeners that the property value has changed.
+
+ The property name.
+
+
+
+ The property changed event.
+
+
+
+
+ A type that provides a string result report.
+
+
+
+
+ Generates a simple text result report for the metadata.
+
+ Reports a text report.
+
+
+
+ Initializes a new instance of the TestAssemblyData type.
+
+ The test assembly metadata.
+
+
+
+ Backing field for the expanded property.
+
+
+
+
+ Backing field for a passed value.
+
+
+
+
+ Backing store for the set of test class.
+
+
+
+
+ Retrieves the results report.
+
+ Returns a string containing the report.
+
+
+
+ Gets or sets a value indicating whether the item is expanded in
+ a hierarchical display.
+
+
+
+
+ Gets or sets the checked value. Don't think this is actually used.
+
+
+
+
+ Gets or sets a value indicating whether the test passed. If failed,
+ will propagate to the parent metadata object.
+
+
+
+
+ Gets the name of the assembly.
+
+
+
+
+ Gets an observable collection of test class data objects.
+
+
+
+
+ A data object that generates property change notifications and can
+ be used for rich data binding to test results. Does keep a reference
+ to all results.
+
+
+
+
+ Stores the test method metadata.
+
+
+
+
+ Parent data object.
+
+
+
+
+ A value indicating whether the test is currently executing.
+
+
+
+
+ The test outcome.
+
+
+
+
+ Backing field for linked data.
+
+
+
+
+ Backing field for linked data.
+
+
+
+
+ Backing field for linked data.
+
+
+
+
+ Backing field for linked data.
+
+
+
+
+ Initializes a new instance of the TestMethodData type.
+
+ The test method metadata.
+ The test class that is the parent object.
+
+
+
+ Runs through the metadata for bugs.
+
+
+
+
+ Backing field for known bugs.
+
+
+
+
+ Backing field for bugs that are marked fixed.
+
+
+
+
+ Calculates whether the item is considered "notable", in that it
+ should have a visual cue or hint for the user.
+
+
+
+
+ Stores a value indicating whether the result is notable.
+
+
+
+
+ Backing field for the checked property.
+
+
+
+
+ Backing field for the expanded property.
+
+
+
+
+ Retrieves the results report.
+
+ Returns a string containing the report.
+
+
+
+ Gets or sets the result of the test method.
+
+
+
+
+ Gets the known bugs for display in the UI.
+
+
+
+
+ Gets the fixed bugs for display.
+
+
+
+
+ Gets the expected exception name for a negative test, if any.
+
+
+
+
+ Gets a simplified exception stack trace that omits the trace below
+ the invoke of the test method by the test framework.
+
+
+
+
+ Gets the short, simple name of the exception type recorded in the
+ test result, if any.
+
+
+
+
+ Gets a value indicating whether the method has results.
+
+
+
+
+ Gets a value indicating whether the method has passed. Returns
+ true until there is a result.
+
+
+
+
+ Gets or sets a value indicating whether the test method is running.
+
+
+
+
+ Gets or sets a value indicating whether the result is notable.
+ Notable is defined as either currently running, or not having
+ passed. This can allow a user interface to react to an
+ interesting result.
+
+
+
+
+ Gets the parent data object.
+
+
+
+
+ Gets an instance of the actual metadata object.
+
+
+
+
+ Gets the name of the test method.
+
+
+
+
+ Gets a visibility value to allow for easy showing or
+ hiding of a user interface component that displays the
+ description.
+
+ Returns a visibility value.
+
+
+
+ Gets the elapsed time in a readable format.
+
+ Returns a string of the readable time elapsed.
+
+
+
+ Gets the description of the test method.
+
+
+
+
+ Gets or sets a value indicating whether the item is checked in the
+ user interface.
+
+
+
+
+ Gets or sets a value indicating whether the item is expanded in
+ a hierarchical display.
+
+
+
+
+ Gets or sets the previous result.
+
+
+
+
+ Gets or sets the next result.
+
+
+
+
+ Gets or sets the previous failing result.
+
+
+
+
+ Gets or sets the next failing result.
+
+
+
+
+ A provider of code coverage information to an external process.
+
+
+
+
+ The base class for test service providers.
+
+
+
+
+ Initializes a new base provider class.
+
+ The owning test service provider.
+ The display name of the service.
+
+
+
+ Initializes the provider.
+
+
+
+
+ Increments the busy service counter.
+
+
+
+
+ Decrements the busy service counter.
+
+
+
+
+ Invokes a method on this provider using reflection.
+
+ The name of the method.
+ The optional parameters.
+
+
+
+ Call the InitializeCompleted event.
+
+
+
+
+ Performs a callback. Null action and/or result are permitted.
+
+ The optional callback action.
+ The result to pass back.
+
+
+
+ Event fired once initialization is complete.
+
+
+
+
+ Gets the display name for the provider.
+
+
+
+
+ Gets the owning test service.
+
+
+
+
+ Gets a value indicating whether the provider has been initialized
+ yet.
+
+
+
+
+ Initializes a new code coverage provider.
+
+ The test service.
+
+
+
+ Save string-based code coverage data.
+
+ The code coverage data, as a string.
+ The callback action.
+
+
+
+ A provider of environment variables and environmental information that
+ uses the test service provider infrastructure.
+
+
+
+
+ Initializes a new environment provider.
+
+ The test service.
+
+
+
+ Retrieve an environment variable from the system.
+
+ The variable name.
+ The callback action.
+
+
+
+ Miscellaneous internal extension methods.
+
+
+
+
+ Attempts to retrieve a custom assembly attribute.
+
+ The type of attribute to retrieve.
+ The assembly reference.
+ An out attribute reference.
+ Returns true if the attribute is found.
+
+
+
+ Transform the XElement into a dictionary of key/value pairs.
+
+ The type of enumeration.
+ The key type.
+ The value type.
+ The root enumerable.
+ The key selector.
+ The item selector.
+ Returns a new dictionary.
+
+
+
+ A type that stores global settings in the isolated storage for the
+ application. An implementation of the
+ type.
+
+
+
+
+ A provider of string dictionary values.
+
+
+
+
+ Initializes a new SettingsProvider object.
+
+ The test service.
+
+
+
+ Initializes a new SettingsProvider object.
+
+ The test service.
+ The service name.
+
+
+
+ Saves the settings.
+
+ Classes that inherit from SettingsProvider: hide this
+ function. Do not call up through to this base method.
+ The service callback.
+
+
+
+ Gets the settings dictionary.
+
+
+
+
+ Gets a value indicating whether the settings are read-only.
+
+
+
+
+ Gets the settings source for end-user display.
+
+
+
+
+ The unique key used for storing the test framework's settings
+ dictionary.
+
+
+
+
+ The underlying settings object.
+
+
+
+
+ Initializes a new isolated storage settings provider.
+
+ The test service instance.
+
+
+
+ Initializes the isolated storage settings provider.
+
+
+
+
+ Saves the current settings values.
+
+ The service completion callback.
+
+
+
+ Recalls the stored settings values from isolated storage.
+
+
+
+
+ Initialize the isolated storage application settings object.
+
+
+
+
+ Result object for asynchronous test service response.
+
+
+
+
+ Creates a new ServiceResult object for a failed result, the
+ sets the exception.
+
+ The Exception object.
+ Returns a new ServiceResult with the Exception set.
+
+
+
+ The result LINQ element.
+
+
+
+
+ Initializes a new instance of the ServiceResult class.
+
+
+
+
+ Process the response text.
+
+
+
+
+ Attempt to process and return the root element of a successful
+ request. Returns null if there was an Exception.
+
+ The root XML element of the response.
+
+
+
+ Sets the result.
+
+ The LINQ element for the result.
+
+
+
+ Gets or sets a value indicating whether the result has been
+ processed.
+
+
+
+
+ Gets or sets the exception intercepted or generated during the
+ request or
+ processing timeframe.
+
+
+
+
+ Gets the root XElement of the test service result.
+
+
+
+
+ Gets a value indicating whether the request was successful.
+
+
+
+
+ The type of test service in use. Used by the more advanced service
+ scenarios in SilverlightTestServiceProvider.
+
+
+
+
+ No service, or unknown service type.
+
+
+
+
+ A direct connection, be it the file system, isolated storage, or
+ similar.
+
+
+
+
+ A web service.
+
+
+
+
+ The Silverlight test service provider is built for compilation with
+ Silverlight builds of the test framework. Populates with the important
+ providers for web browser-hosted test runs.
+
+
+ The Silverlight test service provider is built for compilation with
+ Silverlight builds of the test framework. Populates with the important
+ providers for web browser-hosted test runs.
+
+
+
+
+ A system that provides test services.
+
+
+
+
+ The dictionary of services registered with this provider instance.
+
+
+
+
+ Initializes a new test service provider instance.
+
+
+
+
+ Initializes the provider and all of its test services.
+
+
+
+
+ Initialize all services and features synchronously.
+
+
+
+
+ Register a new service that the test service should expose.
+
+ Known feature type.
+ Instance of the feature's
+ type.
+
+
+
+ Register a new service that the test service should expose.
+
+ String name of the feature if the known
+ enum value does not exist.
+ Instance of the feature's
+ type.
+
+
+
+ Unregisters a feature.
+
+ Known feature type.
+
+
+
+ Unregisters a feature.
+
+ Known feature type string.
+
+
+
+ Check if a requested feature is supported by the test service
+ provider.
+
+ Feature of interest.
+ A value indicating whether the feature exists.
+
+
+
+ Check if a requested feature is supported by the test service
+ provider.
+
+ Feature of interest.
+ A value indicating whether the feature exists.
+
+
+
+ Retrieve a feature. An exception will be thrown if the service
+ does not exist.
+
+ Type of a service, ProviderBase.
+ The feature of interest.
+ Returns the feature, cast properly.
+
+
+
+ Retrieve a feature.
+
+ Feature of interest.
+ The feature's provider.
+
+
+
+ Retrieve a feature.
+
+ Feature of interest.
+ The service or null if one was not present.
+
+
+
+ Require a feature, or throw an exception if it isn't available.
+
+ Feature of interest.
+ The required type.
+ The service or null if one was not present.
+
+
+
+ Require a feature, or throw an exception if it isn't available.
+
+ Feature of interest.
+ The required type.
+ The service or null if one was not present.
+
+
+
+ Require a feature or interest.
+
+ Feature of interest.
+ The service or null if one was not present.
+
+
+
+ Requires a service.
+
+ Feature of interest.
+ The service or null if one was not present.
+
+
+
+ Check for and required the presence of a service. Throws an
+ InvalidOperationException message if the service is unavailable.
+
+ Feature of interest.
+ The service or null if one was not present.
+
+
+
+ Require a specific feature, and that it can be cast properly.
+
+ Feature of interest.
+ The type to verify assignment for a cast.
+ The service or null if one was not present.
+
+
+
+ Looks for a specific service.
+
+ Feature of interest.
+ The service or null if one was not present.
+
+
+
+ Gets or sets a unique test run identifier, if any is present.
+
+
+
+
+ Gets or sets an integer value that can be used to manage simple
+ reference counting services.
+
+
+
+
+ The service verifier and information.
+
+
+
+
+ Initializes a new instance of the SilverlightTestService class.
+
+
+
+
+ Initializes a new instance of the SilverlightTestService class.
+
+ Unit test settings to read the service path
+ and other information from.
+
+
+
+ Initializes the Silverlight test service. Performs a service check
+ if needed before initializing the other providers.
+
+
+
+
+ Sets the custom ID information for the test run, if passed into
+ the run.
+
+
+
+
+ Determine the service path to attempt to use, and prepares the
+ verification object using those parameters.
+
+ Unit test settings object to try and read
+ settings from.
+
+
+
+ Pauses the initialization process to attempt a service connection.
+ The result will alter the underlying ServiceType being used by
+ this provider to ensure a fallback experience can be used.
+
+ This verification step will block the initialization and entire
+ test run until it continues.
+
+
+
+
+ Continues the initialization process for the test service provider.
+
+
+
+
+ Populates with the standard providers for Silverlight in-browser
+ testing.
+
+
+
+
+ Gets the service type that is in use.
+
+
+
+
+ Gets the web service proxy.
+
+
+
+
+ A special verification class used by SilverlightTestService.
+
+
+
+
+ The name of a simple 'ping' method exposed by the service.
+
+
+
+
+ Attempts to verify the service connection. Calls the proper
+ success/failure Action once a verification result is possible.
+
+ The Action to call upon connection
+ verification.
+ An Action to call upon failure.
+
+
+
+ Gets or sets the service hostname.
+
+
+
+
+ Gets or sets the service port.
+
+
+
+
+ Gets or sets path to the simple POX service.
+
+
+
+
+ Gets the URI to the service.
+
+
+
+
+ A test service that reports test run results.
+
+
+
+
+ Initializes a new reporting provider instance.
+
+ The test service.
+
+
+
+ Begins a call to the test service to write to the log.
+
+ The callback, used to read or verify results
+ from the service call.
+ The name of the log to write.
+ The log file content.
+
+
+
+ Begins a call to the test service to report a test run's results.
+
+ The callback, used to read or verify results
+ from the service call.
+ A value indicating whether the test run was a
+ failure.
+ The failed scenario count.
+ The total scenario count.
+ Any message to report along with the failure.
+
+
+
+ Set of known, well-defined test service features.
+
+
+
+
+ Code coverage reporting.
+
+
+
+
+ Provides run parameters and settings.
+
+
+
+
+ Provides test reporting services.
+
+
+
+
+ Provides environment information.
+
+
+
+
+ A provider of code coverage information to an external process.
+
+
+
+
+ The MethodName_SaveCodeCoverage method name.
+
+
+
+
+ Initializes a new code coverage provider.
+
+ The test service.
+
+
+
+ Save string-based code coverage data.
+
+ The code coverage data, as a string.
+ The callback action.
+
+
+
+ A provider of environment variables and environmental information that
+ uses the test service provider infrastructure.
+
+
+
+
+ The MethodName_GetEnvironmentVariable method name.
+
+
+
+
+ Initializes a new environment provider.
+
+ The web test service.
+
+
+
+ Retrieve an environment variable from the system.
+
+ The variable name.
+ The callback action.
+
+
+
+ Result object for asynchronous test service response that uses a simple
+ web service / POX call.
+
+
+
+
+ Initializes a new web service result.
+
+ The request object.
+ The response object.
+
+
+
+ Initializes a new web service result.
+
+ The request object.
+ The response object.
+ The details to associate for debugging
+ purposes.
+
+
+
+ Reads the web response, if successful, and parses out the string
+ content.
+
+
+
+
+ Process the response text.
+
+
+
+
+ Gets the web request associated with the service call.
+
+
+
+
+ Gets the web response associated with the service call.
+
+
+
+
+ Gets the details of the request, used for interactive debugging
+ sessions only.
+
+
+
+
+ Gets the string retrieved from the response.
+
+
+
+
+ A test service that reads command line settings.
+
+
+
+
+ Name of the method MethodName_GetRunParameters.
+
+
+
+
+ Initializes a new settings provider instance.
+
+ The test service.
+
+
+
+ Initialize the web settings provider.
+
+
+
+
+ Read the run parameters.
+
+ The service result.
+
+
+
+ A test service that reports test run results.
+
+
+
+
+ Name of the method MethodName_ReportTestResults.
+
+
+
+
+ Name of the method MethodName_WriteLog.
+
+
+
+
+ Initializes a new reporting provider instance.
+
+ The test service.
+
+
+
+ Begins a call to the test service to write to the log.
+
+ The callback, used to read or verify results
+ from the service call.
+ The name of the log to write.
+ The log file content.
+
+
+
+ Begins a call to the test service to report a test run's results.
+
+ The callback, used to read or verify results
+ from the service call.
+ A value indicating whether the test run was a
+ failure.
+ The failed scenario count.
+ The total scenario count.
+ Any message to report along with the failure.
+
+
+
+ Provides out-of-process access to operating system functions and other
+ services such as visual verification, if present.
+
+
+ Provides out-of-process access to operating system functions and other
+ services such as visual verification, if present.
+
+
+ Provides out-of-process access to operating system functions and other
+ services such as visual verification, if present.
+
+
+
+
+ The service address.
+
+
+
+
+ The synchronization context.
+
+
+
+
+ Initializes a new plain-old-XML test service. This assumes that
+ the caller has already verifier that a service is present and
+ responding at the service address.
+
+ The base service URI, such as
+ "scheme://hostname:port/servicePath/".
+
+
+
+ Creates a simple REST-style Uri given the method/service name and
+ a dictionary of key/value pairs to send as arguments.
+
+ The method/service name.
+ A set of key/value pairs.
+ Returns a new Uri.
+
+
+
+ Creates a simple REST-style Uri given the method/service name and
+ a dictionary of key/value pairs to send as arguments.
+
+ The method/service name.
+ A set of key/value pairs.
+ Optional query string.
+ Returns a new Uri.
+
+
+
+ Builds a simple dictionary from parameters. The value follows the
+ key parameter. {[key, value], } ...
+
+ The ToString() method is called on every object.
+
+ The parameters.
+ Returns a key/value dictionary from the parameters.
+
+
+
+ Begin a POX method call. The callback is used with the result when
+ it becomes available.
+
+ The method name.
+ The callback action.
+
+
+
+ Begin a POX method call. The callback is used with the result when
+ it becomes available.
+
+ The method name.
+ Dictionary of key/value pairs.
+ The callback action.
+
+
+
+ Begin a POX method call. The callback is used with the result when
+ it becomes available.
+
+ The method name.
+ Dictionary of key/value pairs.
+ Optional string that will transform the
+ request to a POST request.
+ The callback action.
+
+
+
+ The intermediate step that writes the POST data and then continues
+ the web request.
+
+ The async result object.
+
+
+
+ Process the response callback from a POX method call.
+
+ The async result object.
+
+
+
+ On the UI thread, invoke the callback action with the result.
+
+ The temporary state object.
+
+
+
+ A simple type to store the state information for the cross-thread
+ callback.
+
+
+
+
+ Initializes a new TemporaryStateObject object.
+
+ The callback action.
+ The result object.
+
+
+
+ Gets the callback action.
+
+
+
+
+ Gets the result object.
+
+
+
+
+ The request data class, stores information used in a request for
+ associating this data with the response.
+
+
+
+
+ Initializes a new request data object.
+
+ The request Uri.
+ The request object.
+ The callback action.
+
+
+
+ Converts the request data object into a web service result
+ object.
+
+ The response object.
+ Returns a new WebServiceResult instance.
+
+
+
+ Gets or sets the optional post data for the request.
+
+
+
+
+ Gets the web request.
+
+
+
+
+ Gets the request Uri.
+
+
+
+
+ Gets the callback action.
+
+
+
+
+ A type which handles preparing the underlying dispatcher or timer from
+ which the test work items execute.
+
+
+
+
+ Handle calling into the test framework as needed to perform the test
+ run, process the internal test dispatcher queue, and keep execution
+ moving forward.
+
+
+
+
+ Delegate that returns whether more work remains and runs the next
+ set of work.
+
+
+
+
+ Backing field for a value indicaing whether the dispatcher should be
+ running.
+
+
+
+
+ Creates a new RunMethodManager, taking in a conditional delegate to
+ run for each step to see if more work remains.
+
+
+ The conditional delegate that performs work and indicates whether
+ additional work remains.
+
+
+
+
+ Create a new run method manager object.
+
+
+ Conditional indicating whether more work will remain after
+ performing the work.
+
+
+ Returns the run method manager. Typically depends on the execution
+ platform and environment.
+
+
+
+
+ Create a new run method manager object.
+
+
+ Conditional indicating whether more work will remain after
+ performing the work.
+
+ A Dispatcher instance.
+
+ Returns the run method manager. Typically depends on the execution
+ platform and environment.
+
+
+
+
+ A completely synchronous implementation, unless overridden, that
+ calls RunNextStep() until the harness is finished.
+
+ The default implementation will not work with a presentation-rich
+ test environment.
+
+
+
+
+ Calls a conditional delegate, and returns whether there is more work
+ to be done.
+
+
+ Returns a value indicating whether there is additional work
+ remaining after executing the current work.
+
+
+
+
+ Calls the Complete event handler.
+
+
+
+
+ Event that is called when all work is complete.
+
+
+
+
+ Gets or sets a value indicating whether the dispatcher should be
+ running.
+
+
+
+
+ Stored Dispatcher instance.
+
+
+
+
+ Sets up a new run method manager.
+
+
+ Conditional delegate which returns true as long as there is
+ additional work.
+
+ An instance of the dispatcher to use.
+
+
+
+ Begin the execution process by hooking up the underlying
+ DispatcherTimer to call into the test framework regularly and
+ perform test work items.
+
+
+
+
+ A data object that generates property change notifications and can
+ be used for rich data binding to test results. Does keep a reference
+ to all results.
+
+
+
+
+ Parent object reference.
+
+
+
+
+ Initializes a new instance of the TestClassData type.
+
+ The test class metadata.
+ The parent test assembly data object.
+
+
+
+ Backing store for the set of test class.
+
+
+
+
+ Backing field for the expanded property.
+
+
+
+
+ Collapses the test class node unless there is at least one child
+ test method that failed.
+
+
+
+
+ Backing field for a passed value.
+
+
+
+
+ Retrieves the results report.
+
+ Returns a string containing the report.
+
+
+
+ Gets the parent data object.
+
+
+
+
+ Gets the name of the test class.
+
+
+
+
+ Gets the namespace for the test class.
+
+
+
+
+ Gets an observable collection of test class data objects.
+
+
+
+
+ Gets or sets a value indicating whether the item is expanded in
+ a hierarchical display.
+
+
+
+
+ Gets or sets the checked value. Don't think this is actually used.
+
+
+
+
+ Gets or sets a value indicating whether the test passed. If failed,
+ will propagate to the parent metadata object.
+
+
+
+
+ A data object that generates property change notifications and can
+ be used for rich data binding to test results. Does keep a reference
+ to all results.
+
+
+
+
+ The unit test harness instance.
+
+
+
+
+ Backing field for information about the test application in use.
+
+
+
+
+ Initializes a new instance of the test run results.
+
+ The unit test harness.
+
+
+
+ Backing store for the set of test assemblies.
+
+
+
+
+ Title backing field.
+
+
+
+
+ Stores the total number of expected scenarios.
+
+
+
+
+ Stores the current test information.
+
+
+
+
+ Stores the current test information.
+
+
+
+
+ Stores the number of run scenarios.
+
+
+
+
+ Count of failed scenarios.
+
+
+
+
+ Backing field for whether the app is running.
+
+
+
+
+ Gets the test application information instance.
+
+
+
+
+ Gets the unit test harness instance.
+
+
+
+
+ Gets an observable collection of test assembly data objects.
+
+
+
+
+ Gets or sets the informational run title.
+
+
+
+
+ Gets or sets the number of total scenarios.
+
+
+
+
+ Gets or sets the current test name.
+
+
+
+
+ Gets or sets the current test name.
+
+
+
+
+ Gets or sets the number of run scenarios.
+
+
+
+
+ Gets or sets the number of failed scenarios.
+
+
+
+
+ Gets a value indicating whether the run is complete and passed.
+
+
+
+
+ Gets a value indicating whether all passing results have been
+ processed.
+
+
+
+
+ Gets the number of passed scenarios, defined as the number of
+ run scenarios minus the number of failed scenarios tracked.
+
+
+
+
+ Gets a value indicating whether the dispatcher is currently running.
+
+
+
+
+ Gets a value indicating whether the test run is in action.
+
+
+
+
+ Assembly complete event arguments.
+
+
+
+
+ Generic unit test harness event arguments base class that contains a
+ reference to the harness.
+
+
+
+
+ Initializes a new instance of the UnitTestHarnessEventArgs class.
+
+ The test harness.
+
+
+
+ Gets the unit test harness reference.
+
+
+
+
+ Initializes a new instance of the TestAssemblyCompletedEventArgs
+ type.
+
+ The assembly metadata.
+ The test harness instance.
+
+
+
+ Gets the assembly metadata.
+
+
+
+
+ Test assembly starting event arguments.
+
+
+
+
+ Initializes a new instance of the TestAssemblyStartingEventArgs
+ type.
+
+ The assembly metadata.
+ The unit test harness instance.
+
+
+
+ Gets the assembly metadata information.
+
+
+
+
+ The test class completed event arguments.
+
+
+
+
+ Initializes a new instance of the TestClassCompletedEventArgs
+ class.
+
+ Test class metadata.
+ The harness instance.
+
+
+
+ Gets the test class metadata.
+
+
+
+
+ Information about the start of a test class event.
+
+
+
+
+ Initializes a new instance of the TestClassStartingEventArgs type.
+
+ The test class metadata.
+ The unit test harness reference.
+
+
+
+ Gets the test class instance.
+
+
+
+
+ Test method starting event arguments.
+
+
+
+
+ Initializes a new instance of the TestMethodStartingEventArgs type.
+
+ The test method metadata.
+ The test class metadata.
+ The test harness instance.
+
+
+
+ Gets the test method metadata.
+
+
+
+
+ Gets the test class metadata.
+
+
+
+
+ Test method completed event arguments, contains the result.
+
+
+
+
+ Initializes a new instance of the TestRunStartingEventArgs
+ type.
+
+ The test run filter.
+ The test run settings object.
+
+
+
+ Gets the unit test run settings.
+
+
+
+
+ Gets the test run filter.
+
+
+
+
+ Gets or sets the test harness name.
+
+
+
+
+ Gets or sets the number of valid, enqueued assemblies scheduled.
+
+
+
+
+ Tag attribute used to associate individual test cases with tags to
+ easily test related functionality.
+
+
+ The infrastructure associated with the TagAttribute is not yet in place.
+
+
+
+
+ List of reserved words that cannot be used as tags.
+
+
+ This list should be shared with the tag parser implementation when
+ available.
+
+
+
+
+ List of reserved characters that cannot be used in tags.
+
+
+ This list should be shared with the tag parser implementation when
+ available.
+
+
+
+
+ Initializes a new instance of the TagAttribute class.
+
+
+ Tag associated with the test method or class.
+
+
+
+
+ Gets the tag associated with the test method or class.
+
+
+
+
+ Set of extension methods used by the harness.
+
+
+
+
+ An AddRange implementation for the generic IList interface.
+
+ The list type.
+ The list object.
+ The collection to copy into the list.
+
+
+
+ Replace a list's contents with the items in the IEnumerable.
+
+ The list type.
+ The list object.
+ The sequence to copy into the list.
+
+
+
+ The IProvideDynamicTestMethods interface is used to provide additional
+ test methods dynamically at runtime.
+
+
+
+
+ Get the dynamic test methods.
+
+ Sequence of dynamic test methods.
+
+
+
+ A type filter for just a specific test. Allows the re-running of a
+ single result again in the same process.
+
+
+
+
+ A type to filter down complete sets of classes, tests and methods.
+
+
+
+
+ The default unit test run name.
+
+
+
+
+ Unit test settings.
+
+
+
+
+ Initializes a new test run filter using an existing settings file.
+
+ A unit test settings instance.
+ The unit test harness.
+
+
+
+ Retrieve a set of test classes from a test assembly.
+
+ The test assembly metadata object.
+ Test class instance dictionary.
+ Returns a new list of test class metadata objects.
+
+
+
+ Sort the test classes if the settings for alphabetical sorting are
+ present.
+
+ List of test classes.
+
+
+
+ Filter out tests based on the standard-supported methods.
+
+ List of test classes.
+ Test class instance dictionary.
+
+
+
+ Perform any custom filtering that the TestRunFilter needs.
+
+ List of test classes.
+ Test class instance dictionary.
+
+
+
+ If specific string-contains filters are present.
+
+ List of test classes.
+ Test class instance dictionary.
+
+
+
+ If any exclusive classes are found, filter them.
+
+ List of test classes.
+ Test class instance dictionary.
+
+
+
+ Retrieves the test methods from a test class metadata object.
+
+ The test class metadata object.
+ The test class instance.
+ Returns a list of test method metadata objects.
+
+
+
+ Filter the test methods.
+
+ List of test methods.
+
+
+
+ Perform any custom filtering that the TestRunFilter needs.
+
+ List of test methods.
+
+
+
+ If any exclusive classes are found, filter them.
+
+ List of test methods.
+
+
+
+ Sorts the test methods, if requested.
+
+ List of test methods.
+
+
+
+ Gets a friendly name for the test run.
+
+
+
+
+ Gets the unit test harness.
+
+
+
+
+ The test class.
+
+
+
+
+ The test method.
+
+
+
+
+ Initializes a new test run filter using an existing settings file.
+
+ The test class metadata.
+ The test method metadata.
+
+
+
+ Retrieve a set of test classes from a test assembly.
+
+ The test assembly metadata object.
+ Test class instance dictionary.
+ Returns a new list of test class metadata objects.
+
+
+
+ Retrieves the test methods from a test class metadata object.
+
+ The test class metadata object.
+ The test class instance.
+ Returns a list of test method metadata objects.
+
+
+
+ A helper class that manages tags and associated metadata. Tag
+ expressions are evaluated at the TestClass level.
+
+
+ A helper class that manages tags and associated metadata. Tag
+ expressions are evaluated at the TestClass level.
+
+
+ A helper class that manages tags and associated metadata. Tag
+ expressions are evaluated at the TestClass level.
+
+
+
+
+ The prefix for any tags generated from priority values.
+
+
+
+
+ A reference to the tag attribute type.
+
+
+
+
+ The test tags associated with the class.
+
+
+
+
+ The test tags associated with methods.
+
+
+
+
+ The ability to grab the set of methods, given a test class type,
+ and the tag of interest.
+
+
+
+
+ The test class type.
+
+
+
+
+ Initializes a new tag manager.
+
+ The test class type.
+ The set of methods to run.
+
+
+
+ Reflect, read and prepare the tags for the class metadata. Performs
+ the work if this is the first time the metadata has been seen.
+
+ The reflection object for the test class.
+
+
+
+ Reflect, read and prepare the tags for the method metadata. Performs
+ the work if this is the first time the metadata has been seen.
+
+ The method metadata.
+
+
+
+ Get the test methods that correspond to a tag expression.
+
+ Tag expression.
+ Test methods for the tag expression.
+
+
+
+ Gets or sets the universe of all test methods for expression
+ evaluation.
+
+
+
+
+ Evaluate tag expressions.
+
+
+ Tag expressions are derived from the following EBNF grammar:
+ {Expression} :=
+ {Expression} + {Term} |
+ {Expression} - {Term} |
+ {Term}
+ {Term} :=
+ {Term} * {Factor} |
+ {Factor}
+ {Factor} :=
+ !{Factor} |
+ ({Expression}) |
+ {Tag}
+ {Tag} :=
+ All |
+ [^InvalidCharacters]+
+
+ The non-terminals for {Expression} and {Term} will be left factored
+ in the recursive descent parser below.
+
+
+
+
+ Union character.
+
+
+
+
+ Intersection character.
+
+
+
+
+ Complement character.
+
+
+
+
+ Difference character.
+
+
+
+
+ The "All" string constant.
+
+
+
+
+ Invalid characters in a tag name.
+
+
+
+
+ Evaluate a tag expression.
+
+ The owner object.
+ Tag expression.
+ Test methods associated with the tag expression.
+
+
+
+ The owning TagManager instance.
+
+
+
+
+ Expression being evaluated.
+
+
+
+
+ Current position in the expression.
+
+
+
+
+ Create an expression evaluator.
+
+ The owner object.
+ Expression object.
+
+
+
+ Match a sequence of characters.
+
+ String to match.
+
+
+
+ Try to match a sequence of characters.
+
+ String to match.
+ Returns a value indicating whether the match was
+ successful.
+
+
+
+ Evaluate an expression.
+
+ Test methods described by the expression.
+
+
+
+ Evaluate an expression.
+
+ Test methods described by the expression.
+
+ We need to factor out left recursion, so:
+ {Expression} :=
+ {Expression} + {Term} |
+ {Expression} - {Term} |
+ {Term}
+ becomes:
+ {Expression} :=
+ {Term}{Expression'}
+
+ {Expression'} :=
+ #empty#
+ + {Term}{Expression'}
+ - {Term}{Expression'}
+
+
+
+
+ Evaluate an expression.
+
+
+ Left term already read as part of the expression.
+
+ Test methods described by the expression.
+
+ Non-terminal created for left-factoring:
+ {Expression'} :=
+ #empty#
+ + {Term}{Expression'}
+ - {Term}{Expression'}
+
+
+
+
+ Evaluate a term.
+
+ Test methods described by the expression.
+
+ We need to factor out left recursion, so:
+ {Term} :=
+ {Factor} * {Term} |
+ {Factor}
+ becomes:
+ {Term} :=
+ {Factor}{Term'}
+
+ {Term'} :=
+ #empty#
+ ^ {Factor}{Term'}
+
+
+
+
+ Evaluate a term.
+
+
+ Left term already read as part of the expression.
+
+ Test methods described by the expression.
+
+ Non-terminal created for left-factoring:
+ {Term'} :=
+ #empty#
+ ^ {Factor}{Term'}
+
+
+
+
+ Evaluate a factor.
+
+ Test methods described by the expression.
+
+ {Factor} :=
+ !{Factor} |
+ ({Expression}) |
+ {Tag}
+
+
+
+
+ Creates a new empty collection.
+
+ Returns an empty collection.
+
+
+
+ Evaluate a tag.
+
+ Test methods described by the expression.
+
+ {Tag} :=
+ All |
+ [^InvalidCharacters]+
+
+
+
+
+ A string list for storing tags. Provides an Add method that takes
+ an attribute object and, if a TagAttribute, will append its tag
+ value to the list.
+
+
+
+
+ Initializes a new Tags instance.
+
+
+
+
+ Initializes a new Tags instance from an existing collection.
+
+ The collection to copy.
+
+
+
+ Adds a TagAttribute's tag value.
+
+ The tag object.
+
+
+
+ A method and class filter that uses expressions and the TagAttribute.
+
+
+
+
+ The name to use for the test run when the tag expression is null.
+
+
+
+
+ Initializes a new test run filter with the tag expression setting.
+
+ Unit test settings.
+ Unit test harness.
+
+
+
+ Initializes a new test run filter with the tag expression.
+
+ Unit test settings.
+ Unit test harness.
+ The tag expression to use.
+
+
+
+ Sets the tag expression property.
+
+ The tag expression to use.
+
+
+
+ A value indicating whether the warning has been logged yet.
+
+
+
+
+ Apply tag filtering.
+
+ List of test classes.
+ Test class instance dictionary.
+
+
+
+ Apply tag filtering.
+
+ List of test methods.
+
+
+
+ Apply the tag filtering.
+
+ The tag manager instance.
+ Set of methods.
+
+
+
+ Exclusive attributes are not supported when also using tagging.
+
+ List of test classes.
+ Test class instance dictionary.
+
+
+
+ Exclusive attributes are not supported when also using tagging.
+
+ List of test methods.
+
+
+
+ Gets the tag expression in use by the run filter.
+
+
+
+
+ Helper code for TestAssembly logic.
+
+
+
+
+ Check whether [Exclusive] attribute is present on any classes.
+
+ Collection of class metadata objects.
+ Returns a value indicating whether any of the classes
+ include an [Exclusive] attribute.
+
+
+
+ Sorts the test classes alphabetically by name.
+
+ A list of test class metadata objects.
+
+
+
+ Test class helper.
+
+
+
+
+ A value indicating whether the warning has been logged in this run.
+
+
+
+
+ Filter the set of test classes by removing unused classes.
+
+ The input list of test class metadata objects.
+ The classes to run.
+
+
+
+ Look through the classes for the [Exclusive] attribute. If found,
+ remove any classes where the attribute is not present.
+
+ The input list of classes.
+ The log writer object.
+
+
+
+ Look for the /p:FilterClass parameter in the test harness settings.
+ Try to do a substring match on all filtered test classes.
+
+ The parameters.
+ List of test classes to be filtered.
+
+
+
+ Test method completed event arguments, contains the result.
+
+
+
+
+ Initializes a new instance of the TestMethodCompletedEventArgs
+ type.
+
+ The result instance.
+
+
+
+ Initializes a new instance of the TestMethodCompletedEventArgs
+ type.
+
+ The result instance.
+ The unit test harness.
+
+
+
+ Gets the test method result.
+
+
+
+
+ Helper code for TestMethod logic.
+
+
+
+
+ A value indicating whether the warning has been logged in this run.
+
+
+
+
+ Check whether [Exclusive] is present on >= 1 of the methods.
+
+ The methods to search through.
+ True if at least one of the methods has Exclusive.
+
+
+
+ Look through the methods for the [Exclusive] attribute. If found,
+ remove any methods where the attribute is not present.
+
+ The methods to filter.
+ The log writer object.
+
+
+
+ A helper utility for firing events as the unit test harness from any
+ component, internal or not. Enables expansion.
+
+
+
+
+ Stored instance of the harness.
+
+
+
+
+ Initializes a new intance of the UnitTestHarnessEvents helper.
+
+ The harness reference.
+
+
+
+ Calls the test assembly starting event.
+
+ The event data.
+
+
+
+ Calls the test assembly completed event.
+
+ The event data.
+
+
+
+ Calls the test class starting event handlers.
+
+ The event data.
+
+
+
+ Calls the test class completed event.
+
+ The event data.
+
+
+
+ Calls the test method starting event.
+
+ The event data.
+
+
+
+ Calls the test method completed event.
+
+ The event data.
+
+
+
+ Calls the test run starting event.
+
+ The event data.
+
+
+
+ A factory for creating the unit test objects.
+
+
+
+
+ The unit test harness.
+
+
+
+
+ Initializes a new unit test logic factory.
+
+ The unit test harness reference.
+
+
+
+ Creates a new AssemblyManager.
+
+ The unit test provider.
+ The run filter.
+ The unit test assembly metadata object.
+ Returns a new AssemblyManager.
+
+
+
+ Creates a new TestClassManager.
+
+ The unit test provider.
+ The run filter.
+ The test class metadata.
+ The test class instance.
+ Returns a new TestClassManager.
+
+
+
+ Creates a new TestMethodManager.
+
+ The unit test provider.
+ The test class metadata.
+ The test method metadata.
+ The test class instance.
+ Returns a new TestMethodManager.
+
+
+
+ A log provider that outputs in a simple custom test format that Visual
+ Studio recognizes.
+
+
+ A log provider that outputs in a simple custom test format that Visual
+ Studio recognizes.
+
+
+
+
+ LogProvider interface with a single Process method that handles a
+ LogMessage object.
+
+
+
+
+ A dictionary of conditional action handlers.
+
+
+
+
+ A dictionary of types/actions for handling specific types of log
+ messages.
+
+
+
+
+ Perform any needed operations to log the message.
+
+ Instance of LogMessage type.
+
+
+
+ Method that processes any messages not handled any other way.
+
+ The log message.
+
+
+
+ Registers an action for a specific message type.
+
+ The type of interest.
+ The handler for the type. Takes a LogMessage
+ parameter.
+
+
+
+ Registers a conditional handler. During the log message processing
+ step, all conditional callbacks will be tried. The first positive
+ result will then call the associated processing Action for that
+ conditional method entry.
+
+ A conditional callback that takes a
+ LogMessage input parameter.
+ A log message processing Action that is called
+ when the condition is true.
+
+
+
+ Removes a conditional callback.
+
+ The condition.
+
+
+
+ Clear all existing conditional handlers.
+
+
+
+
+ Clear all existing message type handlers.
+
+
+
+
+ Interface for LogProviders that want access to external test settings.
+
+
+
+
+ Initializes the provider.
+
+ The settings.
+
+
+
+ The filename to use for saving test results.
+
+
+
+
+ The default test adapter type name.
+
+
+
+
+ The default test list name.
+
+
+
+
+ The default computer name.
+
+
+
+
+ The default user name.
+
+
+
+
+ The default configuration name.
+
+
+
+
+ The default configuration description.
+
+
+
+
+ The Visual Studio log format writer.
+
+
+
+
+ Initializes a new instance of the VisualStudioLogProvider class.
+
+
+
+
+ Register the handler conditions of interest to this log provider.
+
+
+
+
+ Assembly start code.
+
+ The log message.
+
+
+
+ Process an Exception that was not the expected Exception type.
+
+ The log message.
+
+
+
+ Process an Exception that is logged or stored.
+
+ The log message object.
+
+
+
+ Sets the test run configuration information when the test assembly
+ begins processing.
+
+ The test assembly metadata object.
+
+
+
+ Generate a name for the test run that will be used when
+ displaying the result in Visual Studio.
+
+ The test assembly metadata object.
+ Returns the test run name.
+
+
+
+ Generates a new Guid string value.
+
+ Returns a new Guid string value.
+
+
+
+ Process a UTF result message.
+
+ The log message object.
+
+
+
+ Process [Bug(...)].
+
+ A KnownBugLogMessage object.
+
+
+
+ The run filter has been selected.
+
+ The log message object.
+
+
+
+ Saves the log file data.
+
+ The unit test harness.
+
+
+
+ Initializes the test harness.
+
+ The test harness settings.
+
+
+
+ Gets or sets the test results filename.
+
+
+
+
+ Gets or sets the test adapter type name reported in the Visual
+ Studio results log file.
+
+
+
+
+ Gets or sets the TestRunId.
+
+
+
+
+ Gets or sets the test list name.
+
+
+
+
+ Gets or sets the computer name that is reported in the results
+ log file.
+
+
+
+
+ Gets or sets the user name that is reported in the results file.
+
+
+
+
+ Gets or sets the TestRunConfigurationName.
+
+
+
+
+ Gets or sets the TestRunConfigurationDescription.
+
+
+
+
+ Gets or sets a prefix for use in the test run name.
+
+
+
+
+ Gets or sets the TestRunConfigurationId.
+
+
+
+
+ Gets the current assembly name.
+
+
+
+
+ A log provider that outputs in a simple custom test format that
+ Visual Studio recognizes. This is a simple, subset writer.
+
+
+
+
+ Date time format string representing round-trip date/time
+ pattern.
+
+
+
+
+ A unique ID representing the Visual Studio unit test type ID.
+
+
+
+
+ The namespace for Visual Studio team test results.
+
+ Was of XNamespace type in XLinq implementation.
+
+
+
+ A dictionary containing test list names and guids.
+
+
+
+
+ Stores temporary, pending elements for the next result.
+
+
+
+
+ Initializes a new Writer object.
+
+
+
+
+ Stores property values in the respective elements, clears any
+ lookup dictionaries.
+
+
+
+
+ Returns a string value of the DateTime object.
+
+ The DateTime object.
+ Returns the formatted string.
+
+
+
+ Returns the XML log file as a string.
+
+ The XML value.
+
+
+
+ Creates the initial results document and its XElements.
+
+
+
+
+ Creates a new XElement within the results XML namespace.
+
+ The element name.
+ Returns a new named element.
+
+
+
+ The total number of scenarios.
+
+
+
+
+ The set of outcomes and counts.
+
+
+
+
+ Increment the number of passing results.
+
+ The test outcome.
+
+
+
+ Adds the result of a test method into the log.
+
+ The test metadata.
+ The storage value.
+ The code base value.
+ The adapter type name.
+ The class name.
+ The test list name.
+ The computer name.
+ The start time.
+ The end time.
+ The outcome.
+
+
+
+ Adds a WriteLine to the next result to be processed.
+
+ The text to output.
+
+
+
+ Adds an error message to the next result to be processed.
+
+ The message.
+
+
+
+ Adds an Exception to the next result to be processed.
+
+ The Exception object.
+
+
+
+ Adds pending output for the next result.
+
+ The element to wrap in an Output element.
+
+
+
+ Returns the GUID for a test list name. The result is stored
+ in memory.
+
+ The test list name.
+ Returns the test list name guid.
+
+
+
+ Gets or sets the time that the test run started.
+
+
+
+
+ Gets or sets the time that the writer object and/or test run was created.
+
+
+
+
+ Gets or sets the time that the test run was finished.
+
+
+
+
+ Gets the root XML node for the test run and its results.
+
+
+
+
+ Gets or sets the test type ID used for new results.
+
+
+
+
+ Gets the TestRunConfiguration element.
+
+
+
+
+ Gets the Counters element.
+
+
+
+
+ Gets the TestDefinitions element.
+
+
+
+
+ Gets the TestLists element.
+
+
+
+
+ Gets the TestEntries element.
+
+
+
+
+ Gets the Times element.
+
+
+
+
+ Gets the ResultSummary element.
+
+
+
+
+ Gets the Results element.
+
+
+
+
+ Sets the TestRunId.
+
+
+
+
+ Sets the TestRunName.
+
+
+
+
+ Sets the TestRunUser.
+
+
+
+
+ Sets the TestRunConfigurationName.
+
+
+
+
+ Sets the TestRunConfigurationId.
+
+
+
+
+ Sets the overall run outcome value.
+
+
+
+
+ Sets the TestRunConfigurationDescription.
+
+
+
+
+ A user control that should be used as the root visual for a Silverlight
+ plugin if developers would like to use the advanced TestSurface
+ functionality within Microsoft.Silverlight.Testing.
+
+ The TestSurface is automatically cleared after each test scenario
+ completes, eliminating the need for many additional cleanup methods.
+
+
+
+
+ Initializes the TestPage object.
+
+
+
+
+ InitializeComponent
+
+
+
+
+ Gets the test surface, a dynamic Panel that removes its children
+ elements after each test completes.
+
+
+
+
+ A log provider that outputs failures as a string.
+
+
+
+
+ A list of failing results.
+
+
+
+
+ Initializes a new TextFailuresLogProvider instance.
+
+
+
+
+ Retrieve the text log of all failures in the unit test run.
+
+ Returns the log contents.
+
+
+
+ Register the handler conditions of interest to this log provider.
+
+
+
+
+ Process a UTF result message.
+
+ The log message object.
+
+
+
+ A user control that should be used as the root visual for a Silverlight
+ plugin if developers would like to use the advanced TestSurface
+ functionality within Microsoft.Silverlight.Testing. The TestSurface is
+ automatically cleared after each test scenario completes, eliminating
+ the need for many additional cleanup methods.
+
+
+
+
+ Backing field for the unit test harness instance.
+
+
+
+
+ Backing field for the model manager.
+
+
+
+
+ Backing field for the startup timer.
+
+
+
+
+ Backing field for a value indicating whether the clipboard feature
+ is supported.
+
+
+
+
+ Initializes the TestPage object.
+
+
+
+
+ Initializes the TestPage object.
+
+ The test harness instance.
+
+
+
+ Waits for the Settings to become available, either by the service or
+ system setting the instance property.
+
+ The source timer.
+ The event arguments.
+
+
+
+ Starts the test run.
+
+
+
+
+ Handles the test assembly starting event to expand the test stage
+ height.
+
+ The source object.
+ The event data.
+
+
+
+ Handles the test harness complete event, to display results.
+
+ The source object.
+ The event data.
+
+
+
+ Handles the click on the test stage.
+
+ The source object.
+ The event data.
+
+
+
+ Expand and collapse the test stage.
+
+ A value indicating whether to expand the stage.
+
+
+
+
+ Handles the completion of a test method.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles the completion event on the tag expression editor to begin
+ the test run using the user-provided settings.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles navigation back or forward.
+
+ The source object.
+ The event arguments.
+
+
+
+ Installs the application.
+
+ The source object.
+ The event arguments.
+
+
+
+ Offers clipboard interface support for copying test run results.
+
+ The source object.
+ The event arguments.
+
+
+
+ Handles the click on a play/pause button for the run dispatcher.
+
+ The source object.
+ The event arguments.
+
+
+
+ Copies text into the clipboard. If the Silverlight runtime on the
+ system does not support the clipboard API, then it reverts to a
+ large text box that allows the user to manually copy and paste.
+
+ The text to set.
+
+
+
+ InitializeComponent
+
+
+
+
+ Gets the test surface, a dynamic Panel that removes its children
+ elements after each test completes.
+
+
+
+
+ Gets the unit test harness instance.
+
+
+
+
+ Gets the tree view instance.
+
+
+
+
+ A strongly-typed resource class, for looking up localized strings, etc.
+
+
+
+
+ Returns the cached ResourceManager instance used by this class.
+
+
+
+
+ Overrides the current thread's CurrentUICulture property for all
+ resource lookups using this strongly typed resource class.
+
+
+
+
+ Looks up a localized string similar to There are no remaining test work items.
+
+
+
+
+ Looks up a localized string similar to Exception: Type "{0}" Message "{1}".
+
+
+
+
+ Looks up a localized string similar to Ignoring "{0}".
+
+
+
+
+ Looks up a localized string similar to Incorrect exception type "{0}" received. Was expecting a "{1}" type..
+
+
+
+
+ Looks up a localized string similar to No Exception was observed. Was expecting a "{0}" type exception..
+
+
+
+
+ Looks up a localized string similar to Tag cannot be empty!.
+
+
+
+
+ Looks up a localized string similar to The tag "{0}" contains the invalid character "{1}"!.
+
+
+
+
+ Looks up a localized string similar to Tag "{0}" is reserved!.
+
+
+
+
+ Looks up a localized string similar to tagExpression cannot be empty!.
+
+
+
+
+ Looks up a localized string similar to Expected end of tag expression "{0}" at position {1}!.
+
+
+
+
+ Looks up a localized string similar to Tag expected in expression "{0}" at position {1}!.
+
+
+
+
+ Looks up a localized string similar to Invalid tag expression "{0}" (expected "{1}" at position {2})!.
+
+
+
+
+ Looks up a localized string similar to Tag expression "{0}" is in use..
+
+
+
+
+ Looks up a localized string similar to Exclusive classes are in use.
+
+
+
+
+ Looks up a localized string similar to Exclusive methods are in use.
+
+
+
+
+ Looks up a localized string similar to The known issue could not be verified. A failure will be recorded. If this bug has been fixed, please mark the Fixed attribute value to True..
+
+
+
+
+ Looks up a localized string similar to No TestHarness is available..
+
+
+
+
+ Looks up a localized string similar to The "{0}" functionality is not supported within this unit test system..
+
+
+
+
+ Looks up a localized string similar to Initialization of UnitTestHarness.
+
+
+
+
+ Looks up a localized string similar to No composite work items exist to be cleared..
+
+
+
+
+ Looks up a localized string similar to No test classes were selected to be in the test run..
+
+
+
+
+ Looks up a localized string similar to Test harness was not specified on test harness settings object. If a test harness settings object was passed in, please verify that it contains a reference to a test harness..
+
+
+
+
+ Looks up a localized string similar to Test bug: A test cannot use Test Task objects, such as callbacks and conditionals, or the PumpMessages feature, unless marked with the [Asynchronous] attribute..
+
+
+
+
+ A central entry point for unit test projects and applications.
+
+
+ A central entry point for unit test projects and applications.
+
+
+
+
+ Friendly unit test system name.
+
+
+
+
+ A partial method for PrepareDefaultLogManager.
+
+ The test harness settings.
+
+
+
+ A partial method for setting the TestService.
+
+ The test harness settings.
+
+
+
+ Creates a new TestPage visual that in turn will setup and begin a
+ unit test run.
+
+ A new RootVisual.
+ Assumes the calling assembly is a test assembly.
+
+
+
+ Creates a new TestPage visual that in turn will setup and begin a
+ unit test run.
+
+ Test harness settings to be applied.
+ A new RootVisual.
+ Assumes the calling assembly is a test assembly.
+
+
+
+ Merge any settings provided by a test service with the parameters
+ that were passed inside the TestHarnessSettings.
+
+ The test service.
+ The run settings.
+
+
+
+ Initializes the test service and its contained providers.
+
+ The run settings.
+ Action to call once the test service is
+ initialized and ready to continue the run's execution.
+
+
+
+ Register another available unit test provider for the unit test system.
+
+ A unit test provider.
+
+
+
+ Test harness instance.
+
+
+
+
+ Start a new unit test run.
+
+ Unit test settings object.
+
+
+
+ Prepares the default log manager.
+
+ The test harness settings.
+
+
+
+ Tries to instantiate and initialize a VSTT provider. Requires that
+ XLinq is available and included in the application package.
+
+ The test harness settings object.
+
+
+
+ Creates the default settings that would be used by the UnitTestHarness
+ if none were specified.
+
+ A new RootVisual.
+ Assumes the calling assembly is a test assembly.
+
+
+
+ Call the TestHarnessCompleted event.
+
+ The test harness completed event arguments.
+
+
+
+ Create a default settings object for unit testing.
+
+ The assembly reflection object.
+ A unit test settings instance.
+
+
+
+ Gets the test system name built into the assembly.
+
+
+
+
+ Gets a string representing the file version attribute of the main
+ unit test framework assembly, if present.
+
+
+
+
+ A completed test harness handler.
+
+
+
+
+ A class contains extension methods and helpers for dealing with WorkItem
+ instances and improving framework performance.
+
+
+
+
+ Enqueues a work item into the task queue. The work item will run
+ immediately following the previous work item, and may not leave any
+ time before executing the next. This is a specialized method to be
+ used for performance improvements.
+
+ The work item test.
+ The unit of work.
+
+
+
+ Enqueues a method into the task queue. The method will run
+ immediately following the previous work item, and may not leave any
+ time before executing the next. This is a specialized method to be
+ used for performance improvements.
+
+ The work item test.
+ The callback action or method.
+
+
+
+ Enqueues a conditional statement into the task queue. The method will
+ run immediately following the previous work item, and may not leave
+ any time before executing the next. This is a specialized method to
+ be used for performance improvements.
+
+ The work item test.
+ The conditional function or statement.
+
+
+
+ Custom test class that provides the ability to perform semi-asynchronous
+ test tasks on the main thread. Requires the custom unit test harness
+ that manages and invokes test work items on the thread when needed.
+
+ Tests using this functionality will not be compatible with the full
+ desktop framework's Visual Studio Team Test environment.
+
+
+
+
+ Signal that a test is complete when using Async testing.
+
+ WARNING: If you use your own methods for completing, such as an
+ HtmlTimer or other threading method, it is possible that this call
+ will occur *AFTER* the test has timed out when using Timeouts. As
+ such, be very careful as you could complete the call to the *next*
+ test.
+
+
+
+
+ Add a task object to the test queue. For a test that is currently
+ executing, all tasks contained within the queue are executed to
+ completion (unless an Exception is thrown) -before- moving on to
+ the next test.
+
+ The test task queue replaces the PumpMessages(...) system that
+ permitted a single callback. This enables specialized tasks, such
+ as DOM bridge tasks, sleep tasks, and conditional continue tasks.
+
+ Asynchronous test task
+ instance.
+
+
+
+ Delay a minimum amount of time before continuing. Similar to a sleep
+ call that is not a blocking call.
+
+ The minimum time span to wait before continuing.
+
+
+
+ Creates a delay work item instance.
+
+ The minimum time span to wait before continuing.
+ Returns a new work item.
+
+
+
+ Delay a minimum amount of time before continuing. Similar to a sleep
+ call that is not a blocking call.
+
+ The minimum number of milliseconds to wait
+ until the delay is finished.
+
+
+
+ Requires a bool returning delegate to be passed in. Instructs the
+ test task queue to wait until the conditional call returns True to
+ continue executing other test tasks and/or ending the test method.
+
+ Conditional method or delegate.
+ Test will halt until this condition returns True.
+
+
+
+ Creates a conditional work item instance.
+
+ Conditional method or delegate.
+ Test will halt until this condition returns True.
+ Returns a new work item.
+
+
+
+ Enqueue a test task which calls the TestComplete method of
+ SilverlightTest.
+
+
+
+
+ Add a Callback method into the test task queue. Similar to the
+ PumpMessages(...) call, with the difference being that there is no
+ longer a single requirement: you can enqueue several callback
+ methods and other test tasks, all of which will execute before the
+ test completes and/or the engine continues.
+
+ Void-returning delegate,
+ anonymous delegates work fine too.
+
+
+
+ Creates a callback work item instance.
+
+ Void-returning delegate,
+ anonymous delegates work fine too.
+ Returns a new work item.
+
+
+
+ Adds a number of callback methods into the test task queue.
+
+ Set of Action instances.
+
+
+
+ Sleep a minimum number of milliseconds before calling a test
+ callback delegate.
+
+ Minimum number of
+ milliseconds to sleep. The only guarantee to the tester
+ is that the sleep will be >= this amount of ms, and NOT
+ that there is precision or an exact time.
+ Callback method to
+ execute after the minimum amount of time has
+ elapsed.
+
+
+
+ Enqueue an action. A shortcut for the EnqueueCallback.
+
+ The action to enqueue.
+
+
+
+ Sleep a minimum number of milliseconds. This is the simplified
+ overload which requires no callback.
+
+ Minimum number of
+ milliseconds to sleep. The only guarantee to the tester is that the
+ sleep will be >= this amount of ms, and NOT that there is precision
+ or an exact time.
+
+
+
+ A special indicator attribute to enable better debugging using
+ Microsoft.Silverlight.Testing.
+
+ As there is very little parameter information available for a test run,
+ this attribute singles out specific classes to execute when found.
+
+ This attribute is unique to this environment and not compatible with any
+ desktop unit test framework without using a shim if it is left in code.
+
+
+
+
+ Implementation of useful properties and features for presentation
+ platform tests (Silverlight and WPF).
+
+ Tests using this functionality will not be compatible with the full
+ desktop framework's Visual Studio Team Test environment.
+
+
+
+
+ Gets the test panel.
+
+
+
+
+ Provides access to Silverlight-specific test features and
+ functionality.
+
+ Tests using this functionality will not be compatible with the full
+ desktop framework's Visual Studio Team Test environment.
+
+
+
+
+ A test work item is a task that is invoked until it is complete. It
+ maintains its own state to be able to notify the caller when it is
+ finally complete, with no further work to be run.
+
+ It is possible that some implementations of a TestWorkItem may actually
+ contain a set of sub-tasks by implementing a composite pattern.
+
+
+
+
+ A value indicating whether the task can immediately execute.
+
+
+
+
+ Invoke the task. Return false only when the task is complete.
+
+ True if there is additional work to be completed. False
+ when there is none.
+
+
+
+ Called by the task after the work is complete.
+
+
+
+
+ Gets a value indicating whether the task's work is complete.
+
+
+
+
+ Gets or sets a value indicating whether the work item can be
+ executed immediately, and does not rely on special asynchronous
+ operation. Used for performance improvements. The setter is also
+ public.
+
+
+
+
+ The extended writer for the unit testing harness and consumers.
+
+
+
+
+ A utility type that writes new log messages to the test harness log
+ queue.
+
+
+
+
+ The factory used for creating new LogMessage types.
+
+
+
+
+ The test harness that contains the method to post new events into
+ the log message queue.
+
+
+
+
+ Initialize a new writer class, using the default LogMessageFactory
+ to create new messages.
+
+ The test harness instance.
+
+
+
+ Initialize a new writer class.
+
+ The test harness instance.
+
+ The factory to use when creating new messages.
+
+
+
+
+ Posts a log message to the test harness queue for processing.
+
+ The log message object.
+
+
+
+ Creates a new log message using the embedded factory.
+
+ Returns a new LogMessage instance.
+
+
+
+ Creates a new log message using the embedded factory.
+
+ The message type.
+ Returns a new LogMessage instance.
+
+
+
+ Creates a new log message using the embedded factory.
+
+ The message type.
+ The text message.
+ Returns a new LogMessage instance.
+
+
+
+ Decorate a log message with a value.
+
+ The log message to decorate.
+ The key for this decoration.
+ The value of this decoration.
+
+
+
+ Decorate the log message object with an Exception object.
+
+ The log message object.
+ The Exception.
+
+
+
+ Decorate the log message object with a name.
+
+ The log message object.
+ Name property value.
+
+
+
+ Decorate the log message object with a test stage value.
+
+ The log message object.
+ Test stage value.
+
+
+
+ Decorate the log message object with a test outcome object.
+
+ The log message object.
+ Test outcome object.
+
+
+
+ Decorate the log message object with a test granularity object.
+
+ The log message object.
+ Test granularity object.
+
+
+
+ Sets the type of the log message.
+
+ The log message object.
+ The new value to set the message type to.
+
+
+
+ This writes a new line of information similar to a Debug::WriteLine
+ call.
+
+ The text to write.
+
+
+
+ Writes information through a new log message.
+
+ The information string.
+
+
+
+ Writes a message relating to the test infrastructure.
+
+ The text to write.
+
+
+
+ Writes an environment message.
+
+ The text to write.
+
+
+
+ Writes a TestRun message.
+
+ The text to write.
+
+
+
+ Log an error message.
+
+ The error message string.
+ The Exception object to decorate the message
+ with.
+
+
+
+ Log an error message.
+
+ The error message string.
+
+
+
+ Log a warning message.
+
+ The warning message string.
+ The Exception object to decorate the message
+ with.
+
+
+
+ Log a warning message.
+
+ The warning message string.
+
+
+
+ Record a test outcome.
+
+ The accompanying message.
+ The outcome value.
+
+
+
+ Writes information about an encountered, known issue.
+
+ Information about the known issue.
+
+
+
+ Records a log message that indicates a named, granular test stage
+ has happened.
+
+ Any message for the log.
+ A name for the object or event.
+ The test granularity value.
+ The test stage value.
+
+
+
+ Initializes the unit test log message writer helper.
+
+ The test harness reference.
+
+
+
+ Marks a message as a unit test system-specific message.
+
+ The log message object.
+
+
+
+ An incorrect exception type has occurred.
+
+ The expected type.
+ The actual exception's type.
+ The test metadata.
+ The method metadata.
+
+
+
+ No Exception was intercepted, yet one was expected.
+
+ The expected exception type.
+ The test class metadata.
+ The test method metadata.
+
+
+
+ Logs and Exception that was intercepted or observed.
+
+ The actual Exception instance.
+ The test class metadata.
+ The test method metadata.
+
+
+
+ Enqueues a Ignore message.
+
+ The granularity of the ignore operation.
+ The name of the test skipped.
+
+
+
+ Enqueues a message containing a test run filter.
+
+ The test run filter.
+
+
+
+ Records a log message that indicates a named, granular test stage has
+ happened.
+
+ The assembly metadata object.
+ The test granularity value.
+ The test stage value.
+
+
+
+ Log a test class's stage.
+
+ The test class metadata object.
+ The test stage.
+
+
+
+ Log the result of a unit test scenario.
+
+ The result of the test.
+
+
+
+ Log a test method's stage.
+
+ The test method metadata object.
+ The test stage.
+
+
+
+ Records a harness state for the unit test harness.
+
+ The unit test harness.
+ The harness name.
+ The test stage.
+
+
+
+ A test harness for interacting with unit test providers such as Visual
+ Studio Team Test's metadata.
+
+
+
+
+ Display name for this harness.
+
+
+
+
+ Manages the attachment state of a global exception handler.
+
+
+
+
+ Container of all work items for the test harness.
+
+
+
+
+ Manager of the stack of dispatchers, so that the appropriate parent
+ container handles exceptions and completion events.
+
+
+
+
+ Number of valid test assemblies encountered.
+
+
+
+
+ The current run's known number of test methods.
+
+
+
+
+ Backing field for the event firing helper.
+
+
+
+
+ Initiate unit test harness.
+
+
+
+
+ Queue of log messages awaiting processing.
+
+
+
+
+ Adds a log provider to the listening log providers group.
+
+ Log provider object.
+
+
+
+ Enqueue a log message object for processing by the log providers.
+
+ The log message object.
+
+
+
+ Begin running the test harness.
+
+
+ Make sure to subscribe to the Complete event before calling this
+ method, in some harnesses this may be a synchronous Run followed
+ immediately by the Complete event being fired.
+
+
+
+
+ Complete event.
+
+ The sender.
+ The event arguments.
+
+
+
+ Stores a log file for the test run. Depending on the execution
+ environment, this call may not successful.
+
+ The name of the log file.
+ The log file content as a string.
+
+
+
+ If supported by any attached test service, this publishes the final
+ test results. Typical harness implementations may immediately close
+ the web browser channel upon receiving the message, so any other
+ reporting should be done first.
+
+
+
+
+ Process all queued log messages.
+
+
+
+
+ Fill member variables with any non-null settings of the same type.
+
+ Settings container class.
+
+
+
+ Initializes all log providers.
+
+
+
+
+ Call the TestHarnessCompleted event.
+
+
+
+
+ Call the Publishing event.
+
+ The event arguments.
+
+
+
+ Overrides the PublishResults method so that final reporting is only
+ done once all other logging is finished.
+
+
+
+
+ Publish final results. If not yet ready, will keep waiting around
+ as a work item until it is done.
+
+
+
+
+ Stored dispatcher instance.
+
+
+
+
+ Checks if a reporting provider is connected to the test service.
+
+ Returns true if a reporting provider is connected to the
+ test service.
+
+
+
+ Immediately sets the overall status using a log message and
+ processes the message queue.
+
+ The message to set.
+
+
+
+ Sets the unit test harness property for a test case that inherits
+ from the abstract base type 'CustomTest'.
+
+ A CustomText instance.
+
+
+
+ Initialize the harness with a set of test assemblies.
+
+
+
+
+ Restarts the run dispatcher.
+
+
+
+
+ Track the results for our execution and also track the fail state.
+
+ Scenario result to process.
+
+
+
+ Fires the test assembly starting event.
+
+ The event data.
+
+
+
+ Fires the play pause event.
+
+ Event data.
+
+
+
+ Fires the test assembly completed event.
+
+ The event data.
+
+
+
+ Fires the test class starting event.
+
+ The event data.
+
+
+
+ Fires the test class completed event.
+
+ The event data.
+
+
+
+ Fires the test method starting event.
+
+ The event data.
+
+
+
+ Notifies observers that a test method has been completed. Also
+ clears the test panel's visual tree.
+
+ The event data.
+
+
+
+ Notifies observers that a test run has been started.
+
+ The event data.
+
+
+
+ Reference to the test page object.
+
+
+
+
+ Attempts to report the code coverage information using the test
+ service provider. If there is no available coverage reporting
+ service, this is a silent failure. Only reports if >= 1 blocks
+ are hit.
+
+ The test service.
+
+
+
+ Enqueue a test assembly from a simple Assembly reference.
+
+ The test assembly.
+ The run filter settings for the test assembly's run.
+
+
+
+ Enqueues a test assembly.
+
+ The test assembly metadata.
+ The run filter settings for the test assembly's run.
+
+
+
+ Flush the current log manager and then perform the next invoke.
+
+ Returns true if work remains.
+
+
+
+ Creates the test run filter for the initial run.
+
+ The unit test settings.
+ Returns a new TestRunFilter instance.
+
+
+
+ Determine what test assemblies need to be executed. Enqueue tasks
+ for the unit test assembly providers to run the tests.
+
+
+
+
+ Calculates the number of methods for a run.
+
+ The assembly manager.
+ The test assembly.
+ The test run filter.
+ Returns the number of known methods returned.
+
+
+
+ Event fired at the completion of the harness' work.
+
+ Sender object instance.
+ Event arguments.
+
+
+
+ Listener event for any unhandled exceptions.
+
+ Sender object instance.
+ Event arguments.
+
+
+
+ Creates the set of harness tasks to run and hooks up to the Complete event.
+
+
+
+
+ Gets the list of results.
+
+
+
+
+ Gets the log message writer instance. This can be used to easily
+ post informative messages to the log message queue and providers.
+
+
+
+
+ Gets or sets the logic factory used for instantiating the
+ unit test logic and management objects.
+
+
+
+
+ Gets or sets the overall harness state - overloaded types can be
+ used to store additional information.
+
+
+
+
+ Gets the log providers list.
+
+
+
+
+ Gets or sets the wrapper that handles calling the next Run step
+ method until complete; allows for a virtual Run method.
+
+
+
+
+ Gets the dictionary of Parameters passed into the test harness.
+
+
+
+
+ Gets or sets the settings used to initialize the test harness.
+
+
+
+
+ Gets a set of events that can be fired for test results and other
+ important test runtime events.
+
+
+
+
+ The test harness is publishing results.
+
+
+
+
+ Gets the TestService referenced by the test harness settings. The
+ test service provides advanced, optional functionality that is
+ useful to harness and test case developers. A typical test service
+ operates outside the process or security boundary.
+
+
+
+
+ Complete event fired when the test harness has finished its test
+ run.
+
+
+
+
+ Gets a dispatcher instance.
+
+
+
+
+ Gets the root container for test work to be completed.
+
+
+
+
+ Gets the known number of test methods in the current test run.
+
+
+
+
+ Gets or sets a value indicating whether to intercept exceptions at
+ the app domain level and funnel into the current container or not.
+
+
+
+
+ Gets the internal DispatcherStack being used by the test harness.
+
+
+
+
+ The test assembly starting event.
+
+
+
+
+ On the play or pause change of the dispatcher.
+
+
+
+
+ Gets or sets a value indicating whether the dispatcher is currently
+ running.
+
+
+
+
+ Test assembly completed event.
+
+
+
+
+ Test class starting event.
+
+
+
+
+ The test class completed event.
+
+
+
+
+ The test method starting event.
+
+
+
+
+ An event that is fired whenever a test method completes.
+
+
+
+
+ An event that is fired when the test run is starting.
+
+
+
+
+ Gets or sets the test page.
+
+
+
+
+ Gets the test panel manager instance.
+
+
+
+
+ Well-known keys that can be used to mark decorator instances in log
+ message objects.
+
+
+
+
+ Indicates that the message is specific to the unit test system.
+
+
+
+
+ The unit test harness reference.
+
+
+
+
+ The metadata interfacing object for a test assembly.
+
+
+
+
+ The metadata interfacing object for a test class.
+
+
+
+
+ The metadata interfacing object for a test method.
+
+
+
+
+ Indicates that the incorrect exception was intercepted.
+
+
+
+
+ Indicates that the message indicates a skipped/ignored item.
+
+
+
+
+ The type of the expected exception.
+
+
+
+
+ The type of the actual exception.
+
+
+
+
+ The actual exception.
+
+
+
+
+ A TestRunFilter object.
+
+
+
+
+ A ScenarioResult object.
+
+
+
+
+ Helper conditional methods for unit test-specific log messages.
+
+
+
+
+ Determines whether a log message meets a specific condition or set
+ of conditions.
+
+ The log message object.
+ Returns true if the condition is met.
+
+
+
+ Determines whether a log message meets a specific condition or set
+ of conditions.
+
+ The unit test decorator of interest.
+ Returns true if the condition is met.
+
+
+
+ Returns a value indicating whether the message is marked as a unit
+ test system message.
+
+ The message.
+ Returns true if the message is a unit test system-marked
+ message.
+
+
+
+ Determines whether a log message meets a specific condition or set
+ of conditions.
+
+ The log message object.
+ Returns true if the condition is met.
+
+
+
+ Determines whether a log message meets a specific condition or set
+ of conditions.
+
+ The log message object.
+ Returns true if the condition is met.
+
+
+
+ Determines whether a log message has an attached TestRunFilter.
+
+ The log message object.
+ Returns a value indicating whether the condition is met.
+
+
+
+ Determines whether a log message meets a specific condition or set
+ of conditions.
+
+ The log message object.
+ Returns true if the condition is met.
+
+
+
+ Determines whether a log message meets a specific condition or set
+ of conditions.
+
+ The log message object.
+ Returns true if the condition is met.
+
+
+
+ Determines whether a log message meets a specific condition or set
+ of conditions.
+
+ The log message object.
+ Returns true if the condition is met.
+
+
+
+ A lazy method type.
+
+
+
+
+ A class that does a lazy lookup when needed using reflection.
+
+
+
+
+ Attribute Type instance.
+
+
+
+
+ The Type to search with.
+
+
+
+
+ Whether the search has happened.
+
+
+
+
+ The method reflection object.
+
+
+
+
+ Construct a new lazy method wrapper.
+
+ The attribute type.
+
+
+
+ Construct a new lazy method wrapper.
+
+ Type to search.
+ Attribute type.
+
+
+
+ Does a search and retrieves the method information.
+
+ The method reflection object.
+
+
+
+ Whether the type has a method info.
+
+ A value indicating whether the method information has
+ been found.
+
+
+
+ Perform a search on the type.
+
+
+
+
+ Gets the type of attribute the lazy method is searching for.
+
+
+
+
+ Gets the underlying type that is searched.
+
+
+
+
+ Gets or sets a value indicating whether a lookup has already been attempted.
+
+
+
+
+ Gets or sets the underlying MethodInfo from reflection.
+
+
+
+
+ Underlying Assembly reflection object.
+
+
+
+
+ Create a new lazy method from a MethodInfo instance.
+
+ Assembly reflection object.
+ Attribute Type instance.
+
+
+
+ Performs a search on the MethodInfo for the attributes needed.
+
+
+
+
+ Test assembly metadata interface.
+
+
+
+
+ Gets a collection of test class metadata objects.
+
+ Returns a collection of metadata objects.
+
+
+
+ Gets the initialization method.
+
+
+
+
+ Gets the cleanup method.
+
+
+
+
+ Gets a reference to the unit test provider.
+
+
+
+
+ Gets the name of the test assembly.
+
+
+
+
+ Gets the test harness used to initialize the assembly.
+
+
+
+
+ An expected exception marker for a test method.
+
+
+
+
+ Gets the expected exception type.
+
+
+
+
+ Gets any message associated with the expected exception object.
+
+
+
+
+ Represents the host type information for a test.
+
+
+
+
+ Gets the Host type.
+
+
+
+
+ Gets the host data.
+
+
+
+
+ A representation of a test's priority.
+
+
+
+
+ Metadata representing a test class.
+
+
+
+
+ Retrieve a collection of the test method metadata objects setup by
+ the unit test provider.
+
+ A collection of test method interfaces.
+
+
+
+ Gets the test class Type instance.
+
+
+
+
+ Gets a value indicating whether the test class should be ignored.
+
+
+
+
+ Gets the per-test initialization method.
+
+
+
+
+ Gets the per-test cleanup method.
+
+
+
+
+ Gets the one-time class initialization method.
+
+
+
+
+ Gets the one-time class cleanup method.
+
+
+
+
+ Gets the name of the test class.
+
+
+
+
+ Gets a reference to the parent test assembly metadata
+ instance.
+
+
+
+
+ Test method metadata.
+
+
+
+
+ Used for decorating with unit test provider-specific capabilities,
+ such as the TestContext concept.
+
+ Instance to decorate.
+
+
+
+ Get any attribute on the test method that are provided dynamically.
+
+
+ Dynamically provided attributes on the test method.
+
+
+
+
+ Invoke the test method.
+
+ Instance of the test class.
+
+
+
+ Gets the test method reflection object.
+
+
+
+
+ Hooks up to any unit test provider-enabled WriteLine capability
+ for unit tests.
+
+
+
+
+ Gets a value indicating whether the test is marked to be ignored.
+
+
+
+
+ Gets any description for the method.
+
+
+
+
+ Gets a name for the method.
+
+
+
+
+ Gets any category information for the method.
+
+
+
+
+ Gets any test owner information.
+
+
+
+
+ Gets any expected exception attribute .
+
+
+
+
+ Gets any timeout information.
+
+
+
+
+ Gets a collection of any test properties.
+
+
+
+
+ Gets a collection of any test work items.
+
+
+
+
+ Gets any priority information.
+
+
+
+
+ A property for a test method.
+
+
+
+
+ Gets the test property name.
+
+
+
+
+ Gets the test property value.
+
+
+
+
+ Provider model for a unit test system that uses reflection and metadata
+ to enable a unit test run.
+
+
+
+
+ Retrieve the metadata instance for a test assembly given a
+ reflection Assembly instance.
+
+ The test harness using the provider.
+ Reflected test assembly.
+ Unit test provider-specific metadata instance for
+ the test assembly.
+
+
+
+ Gets a value indicating whether a specific capability or set of
+ capabilities are supported by the unit test provider.
+
+ Capability of interest.
+ Gets a value indicating whether the capability is
+ supported.
+
+
+
+ Checks if an Exception actually represents an assertion that failed
+ to improve the logging experience.
+
+ Exception object.
+ Returns true if the Exception is an assertion exception
+ type.
+
+
+
+ Gets the name of the unit test provider.
+
+
+
+
+ Gets the capabilities that the unit test provider implements.
+
+
+
+
+ Work item for a test.
+
+
+
+
+ Gets the associated information from the work item.
+
+
+
+
+ Event arguments that pass along a string value.
+
+
+
+
+ Create a new event argument instance.
+
+
+
+
+ Create a new event argument instance that stores a string value.
+
+ String value to pass along.
+
+
+
+ String value stored in the event arguments.
+
+
+
+
+ Gets the stored string value.
+
+
+
+
+ A set of capabilities that a unit test provider may chose to implement
+ through the metadata interfaces.
+
+
+
+
+ No defined capabilities.
+
+
+
+
+ Support for attribute [AssemblyInitialize].
+
+
+
+
+ Support for attribute [AssemblyCleanup].
+
+
+
+
+ Support for attribute [Ignore] for classes.
+
+
+
+
+ Support for attribute [Ignore] for methods.
+
+
+
+
+ Support for attribute [Description] on methods.
+
+
+
+
+ Support for attribute [Category] on methods.
+
+
+
+
+ Support for attribute [Owner] on method.
+
+
+
+
+ Support for attribute [Priority] on method.
+
+
+
+
+ Support for attribute [TestProperty](...) on methods.
+
+
+
+
+ Support for attribute [Timeout] on methods.
+
+
+
+
+ Support for attribute [WorkItem(...)]('s) on methods.
+
+
+
+
+ Test work item type that does not complete until the sleep time has
+ elapsed. This is NOT a blocking Sleep.
+
+
+
+
+ The amount of time to delay for.
+
+
+
+
+ The DateTime that marks the point in time the task is complete.
+
+
+
+
+ Create a new Sleep work item, including the number of
+ milliseconds to wait until continuing.
+
+ Amount of time to wait/delay.
+
+
+
+ On the first time, will calculate the final DateTime. Otherwise,
+ null operation (returns) until that time.
+
+ Returns a value indicating whether there is more work to be
+ done.
+
+
+
+ Expected exception metadata.
+
+
+
+
+ Private constructor.
+
+
+
+
+ Creates a new expected exception metadata wrapper.
+
+ Attribute value.
+
+
+
+ The expected exception attribute.
+
+
+
+
+ Gets the type of the expected exception.
+
+
+
+
+ Gets any message to include in a failure.
+
+
+
+
+ A simple wrapper for a priority integer value that overrides the
+ ToString method.
+
+
+
+
+ Initializes a new instance of the Priority class.
+
+ The priority.
+
+
+
+ Gets the priority as string.
+
+ Returns the priority.
+
+
+
+ Gets the priority value.
+
+
+
+
+ The set of provider attributes.
+
+
+
+
+ Initializes the VSTT metadata provider.
+
+
+
+
+ Gets VSTT [TestClass] attribute.
+
+
+
+
+ Gets VSTT [Ignore] attribute.
+
+
+
+
+ Gets VSTT [ClassInitialize] attribute.
+
+
+
+
+ Gets VSTT [Priority] attribute.
+
+
+
+
+ Gets VSTT [ClassCleanup] attribute.
+
+
+
+
+ Gets VSTT [TestInitialize] attribute.
+
+
+
+
+ Gets VSTT [TestCleanup] attribute.
+
+
+
+
+ Gets VSTT [Description] attribute.
+
+
+
+
+ Gets VSTT [Timeout] attribute.
+
+
+
+
+ Gets VSTT [Owner] attribute.
+
+
+
+
+ Gets VSTT [ExpectedException] attribute.
+
+
+
+
+ Gets VSTT [AssemblyInitialize] attribute.
+
+
+
+
+ Gets VSTT [AssemblyCleanup] attribute.
+
+
+
+
+ Gets VSTT [TestMethod] attribute.
+
+
+
+
+ Gets VSTT [TestProperty] attribute.
+
+
+
+
+ Test class wrapper.
+
+
+
+
+ Construct a new test class metadata interface.
+
+ Assembly metadata interface object.
+
+
+
+ Creates a new test class wrapper.
+
+ Assembly metadata object.
+ Type of the class.
+
+
+
+ Test Type.
+
+
+
+
+ Collection of test method interface objects.
+
+
+
+
+ A value indicating whether tests are loaded.
+
+
+
+
+ A dictionary of method types and method interface objects.
+
+
+
+
+ Gets a collection of test method wrapper instances.
+
+ A collection of test method interface objects.
+
+
+
+ Exposes the name of the test class.
+
+ Returns the name of the test class.
+
+
+
+ Gets the test assembly metadata.
+
+
+
+
+ Gets the underlying Type of the test class.
+
+
+
+
+ Gets the name of the test class.
+
+
+
+
+ Gets a value indicating whether an Ignore attribute present
+ on the class.
+
+
+
+
+ Gets any test initialize method.
+
+
+
+
+ Gets any test cleanup method.
+
+
+
+
+ Gets any class initialize method.
+
+
+
+
+ Gets any class cleanup method.
+
+
+
+
+ Methods enum.
+
+
+
+
+ Initialize method.
+
+
+
+
+ Cleanup method.
+
+
+
+
+ Test init method.
+
+
+
+
+ Test cleanup method.
+
+
+
+
+ A provider wrapper for a test method.
+
+
+
+
+ Property name for the TestContext.
+
+
+
+
+ Default value for methods when no priority attribute is defined.
+
+
+
+
+ An empty object array.
+
+
+
+
+ Method reflection object.
+
+
+
+
+ Private constructor, the constructor requires the method reflection object.
+
+
+
+
+ Creates a new test method wrapper object.
+
+ The reflected method.
+
+
+
+ Call the WriteLine method.
+
+ String to WriteLine.
+
+
+
+ Decorates a test class instance with the unit test framework's
+ specific test context capability, if supported.
+
+ Instance to decorate.
+
+
+
+ Get any attribute on the test method that are provided dynamically.
+
+
+ Dynamically provided attributes on the test method.
+
+
+
+
+ Invoke the test method.
+
+ Instance of the test class.
+
+
+
+ Exposes the name of the test method as a string.
+
+ Returns the name of the test method.
+
+
+
+ Allows the test to perform a string WriteLine.
+
+
+
+
+ Gets the underlying reflected method.
+
+
+
+
+ Gets a value indicating whether there is an Ignore attribute.
+
+
+
+
+ Gets any description marked on the test method.
+
+
+
+
+ Gets the name of the method.
+
+
+
+
+ Gets the Category.
+
+
+
+
+ Gets the owner name of the test.
+
+
+
+
+ Gets any expected exception attribute information for the test method.
+
+
+
+
+ Gets any timeout. A Nullable property.
+
+
+
+
+ Gets a Collection of test properties.
+
+
+
+
+ Gets a collection of test work items.
+
+
+
+
+ Gets Priority information.
+
+
+
+
+ Represents a simple test property with a key/value string pair.
+
+
+
+
+ Initializes a new instance of the TestProperty class.
+
+
+
+
+ Initializes a new instance of the TestProperty class.
+
+ The initial property name.
+ The initial property value.
+
+
+
+ Gets or sets the property name.
+
+
+
+
+ Gets or sets the property value.
+
+
+
+
+ A wrapper for the unit test context capability of Visual Studio Team
+ Test's unit test framework.
+
+
+
+
+ Create a new unit test context wrapper for the test method.
+
+ Test method.
+
+
+
+ Constructor of a new unit test context.
+
+
+
+
+ Test method.
+
+
+
+
+ Used to write trace messages while the test is running.
+
+ Format string.
+ The arguments.
+
+
+
+ Throw a not supported exception.
+
+ Functionality that is not supported (string).
+ A new NotSupportedException.
+
+
+
+ Adds a file name to the list in TestResult.ResultFileNames.
+
+ Filename to add as a result.
+
+
+
+ Begins a timer with the specified name.
+
+ The name of the timer to create.
+
+
+
+ Ends a timer with the specified name.
+
+ Name of the timer.
+
+
+
+ Cache of properties.
+
+
+
+
+ Gets test properties.
+
+
+
+
+ Gets current data row when test is used for data driven testing.
+
+
+
+
+ Gets current data connection row when test is used for data driven testing.
+
+
+
+
+ Gets the name of the test method.
+
+
+
+
+ Gets the current enum outcome - passed, failed, or inconclusive.
+
+
+
+
+ Assembly metadata for the Visual Studio Team Test unit test framework.
+
+
+
+
+ Assembly reflection object.
+
+
+
+
+ Assembly initialization method information.
+
+
+
+
+ Assembly cleanup method information.
+
+
+
+
+ Unit test provider used for the assembly.
+
+
+
+
+ The unit test harness.
+
+
+
+
+ Creates a new unit test assembly wrapper.
+
+ Unit test metadata provider.
+ A reference to the unit test harness.
+ Assembly reflection object.
+
+
+
+ Reflect and retrieve the test class metadata wrappers for
+ the test assembly.
+
+ Returns a collection of test class metadata
+ interface objects.
+
+
+
+ Gets the name of the test assembly.
+
+
+
+
+ Gets the unit test provider instance.
+
+
+
+
+ Gets any assembly initialize method.
+
+
+
+
+ Gets any assembly cleanup method.
+
+
+
+
+ Gets the test harness used to initialize the assembly.
+
+
+
+
+ Gets the test harness as a unit test harness.
+
+
+
+
+ Provider for the Visual Studio Team Test unit test (UT) framework
+ metadata.
+
+
+
+
+ Name of this provider.
+
+
+
+
+ The capabilities of the VSTT UTF provider.
+
+
+
+
+ Whether the capability is supported by this provider.
+
+ Capability type.
+ A value indicating whether the capability is available.
+
+
+
+ Create a new Visual Studio Team Test unit test framework provider
+ instance.
+
+
+
+
+ Cache of assemblies and assembly unit test interface objects.
+
+
+
+
+ VSTT unit test provider constructor; takes an assembly reference to
+ perform reflection on to retrieve all test class types. In this
+ implementation of an engine for the VSTT metadata, only a single
+ test Assembly can be utilized at a time for simplicity.
+
+ The unit test harness.
+ Assembly reflection object.
+ Returns the assembly metadata interface.
+
+
+
+ Check if the Exception is actually a failed assertion.
+
+ Exception object to check.
+ True if the exception is actually an assert failure.
+
+
+
+ Gets the name of the provider.
+
+
+
+
+ Gets the specialized capability descriptor.
+
+
+
+
+ Settings for the unit test system.
+
+
+
+
+ The tag expression key name.
+
+
+
+
+ By default test methods are sorted.
+
+
+
+
+ By default test classes are sorted.
+
+
+
+
+ Settings for the unit test system.
+
+
+
+
+ Gets the parameters from the response file.
+
+ The parameters.
+
+
+
+ Gets the components initialized by the entry-point assembly. These
+ are the dynamically loaded objects that may be needed by the
+ TestHarness.
+
+ The components.
+
+
+
+ Gets the log providers.
+
+
+
+
+ Gets or sets a set of sample tags for use in a tag editor screen.
+
+
+
+
+ Gets the list of test assemblies.
+
+ The test assembly.
+
+
+
+ Gets or sets the test service provider. The test service lights up
+ advanced out-of-process communication, reporting, logging, and
+ other valuable services.
+
+
+
+
+ Gets or sets the test harness.
+
+ The test harness.
+
+
+
+ Gets or sets the test service hostname to try using. Defaults to
+ localhost.
+
+
+
+
+ Gets or sets the test service port to try using. Defaults to 8000.
+
+
+
+
+ Gets or sets the test service path to try using. Defaults to
+ /externalInterface/.
+
+
+
+
+ Gets or sets a value indicating whether to start the run
+ immediately when the test system is run. Defaults to false to enable
+ the test service to load and information to be provided in the
+ user interface.
+
+
+
+
+ Gets or sets the type of the TestPanel to create. The type must
+ derive from Microsoft.Silverlight.Testing.ITestPanel.
+
+
+
+
+ Gets or sets a value indicating whether test methods are sorted
+ alphabetically. By default this value is true.
+
+
+ It is worth understanding that the order of unit test
+ execution should not affect the results of a test run. Any expected
+ ordering and verification from multiple test methods should be
+ refactored into a single unit test.
+
+
+
+
+ Gets or sets a value indicating whether test classes are sorted
+ alphabetically. This setting is True by default.
+
+
+
+
+ Gets or sets a value indicating whether to show the tag expression
+ editor user interface before starting the test run.
+
+
+
+
+ Gets or sets the tag expression used for selecting tests to run.
+
+
+
+
+ Gets a list of test classes to run. Enables filtering.
+
+ This property should be considered obsolete.
+
+
+
+ A manager for the underlying TestSurface Panel.
+
+
+
+
+ Private constructor.
+
+
+
+
+ The test page object.
+
+
+
+
+ A value indicating whether the panel is dirty.
+
+
+
+
+ Remove the children from the test surface, if it has
+ been used.
+
+
+
+
+ Remove the children from the test surface.
+
+
+
+
+ Gets or sets the Reference to the TestPage user control.
+
+
+
+
+ Gets the TestSurface Panel, and tracks the use for the
+ current test method. When the test completes, the panel children
+ will be cleared automatically.
+
+
+
+
+ A result from a test scenario.
+
+
+
+
+ Creates a result record.
+
+ Test method metadata object.
+ Test class metadata object.
+ Test result object.
+ Exception instance, if any.
+
+
+
+ The string representation of the ScenarioResult.
+
+ Returns a verbose string representation of the result.
+
+
+
+ Gets or sets the scenario's started time.
+
+
+
+
+ Gets or sets the scenario's finishing time.
+
+
+
+
+ Gets the test method metadata.
+
+
+
+
+ Gets the test class metadata.
+
+
+
+
+ Gets or sets the Result object.
+
+
+
+
+ Gets the Exception instance, if any.
+
+
+
+
+ Container and manager type which handles an entire test assembly; contains sub work
+ items that represent all actions needed to execute its tests.
+
+
+
+
+ A container that stores instances of the unit test harness and provider.
+
+
+
+
+ TestWorkItem which can contain sub-tasks; the underlying work item is
+ not marked complete until the Children have completed or an Exception
+ is thrown.
+
+
+
+
+ Store the underlying tasks.
+
+
+
+
+ Whether the TestTaskContainer::IsComplete should be set to true
+ after all children have been de-queued.
+
+
+
+
+ Whether the first invoke has happened yet or not.
+
+
+
+
+ Constructor for the TestTaskContainer type.
+
+
+
+
+ Optional method to call on the first invoke.
+
+
+
+
+ Invoke the test container; in turn will execute child work items
+ as needed. Supports executing multiple items immediately for
+ performance reasons.
+
+ True if additional work remains, False once IsComplete
+ is set to true.
+
+
+
+ Invoke the test container; in turn will execute child work items
+ as needed.
+
+ The work item used for the invoke.
+ True if additional work remains, False once IsComplete
+ is set to true.
+
+
+
+ Clear the children.
+
+
+
+
+ Dequeue a work item.
+
+ A work item.
+
+
+
+ Add a new work item to the container to schedule it for invocation.
+
+ New test work item to enqueue.
+
+
+
+ Adds a new work item that will execute more quickly.
+
+ The item of work.
+
+
+
+ Enqueues a callback or action that will quickly execute.
+
+ The action or method.
+
+
+
+ Add a new callback action and schedule it for invocation.
+
+ The action.
+
+
+
+ Return the top work item, if any, from this container.
+
+ Peek into any test work item.
+
+
+
+ Work items must call this method to indicate completion of the work
+ item; in turn fires the Complete event delegates.
+
+
+
+
+ Internal-only version which can be called during a test completion
+ through the relation - not necessarily the best design; events
+ may make more sense long-term.
+
+
+
+
+ Call when an exception occurs inside a work item.
+
+ Exception object.
+
+
+
+ Fire the Complete event.
+
+ Empty event arguments.
+
+
+
+ Fire the unhandled exception event.
+
+ Exception object.
+
+
+
+ Gets a value indicating whether the container is marked Complete
+ when all children have executed or not.
+
+
+
+
+ Gets a value indicating whether sub tasks remain.
+
+
+
+
+ Complete event is fired when the underlying WorkItemComplete method
+ is called by the work item.
+
+
+
+
+ Event fired when an exception is thrown and unhandled within the
+ underlying Invoke sequence.
+
+
+
+
+ Gets or sets a value indicating whether the task can execute
+ immediately.
+
+
+
+
+ The unit test provider.
+
+
+
+
+ Initializes a new unit test work item container.
+
+ The unit test harness.
+ The unit test metadata provider.
+
+
+
+ Logs a new message.
+
+ Message object.
+
+
+
+ Logs a message about the harness.
+
+ Information about the harness.
+
+
+
+ Gets the log message writer for the unit test system.
+
+
+
+
+ Gets the test harness instance.
+
+
+
+
+ Gets the unit test provider instance.
+
+
+
+
+ The test run filter object.
+
+
+
+
+ Unit test provider-agnostic assembly metadata.
+
+
+
+
+ Container of work items for running test classes.
+
+
+
+
+ Create a new assembly manager, takes in the harness, provider
+ reference and actual IAssembly object.
+
+ The test run filter object.
+ Harness object.
+ The unit test metadata provider.
+ The test assembly metadata object.
+
+
+
+ When the test run is ready to test the underlying test assembly that
+ this class manages, perform reflection and enqueue work items to run
+ the tests.
+
+
+
+
+ The assembly initialize method.
+
+
+
+
+ The assembly cleanup method.
+
+
+
+
+ Reflect over all test classes in the assembly and add any which are not
+ filtered out into the test work item queue.
+
+
+
+
+ Helper to enqueue a new method dispatcher.
+
+ The method reflection object.
+
+
+
+ Gets the collection of all the instances of the assembly's test
+ classes, used to keep a single reference of the type.
+
+
+
+
+ A method container.
+
+
+
+
+ The timeout time.
+
+
+
+
+ The test method metadata.
+
+
+
+
+ Constructs a new method container.
+
+
+
+
+ Constructs a new method container.
+
+ An instance of the method's type.
+ The method reflection object.
+ The test method.
+
+
+
+ The task that involves the method, and contains its own internal
+ test queue, if needed for asynchronous tasks.
+
+
+
+
+ The reflection object for the method.
+
+
+
+
+ Invoke into the method.
+
+ Returns the condition of any remaining work.
+
+
+
+ On the first invoke, make sure there's a task to call the method.
+
+
+
+
+ Gets the method's reflection object.
+
+
+
+
+ A dictionary that manages single instances of types for use across the
+ unit test system.
+
+
+
+
+ Returns the instance for a Type; if there is not an instance yet,
+ this will use Activator.CreateInstance to create it.
+
+ The Type instance to retrieve.
+ Returns an instance of the Type. Returns a new instance
+ if the Type has not yet been used.
+
+
+
+ Remove any instance for the type.
+
+ The Type of instance to remove.
+
+
+
+ Test class manager.
+
+
+
+
+ Test run filter object.
+
+
+
+
+ Reference to the class and its metadata.
+
+
+
+
+ Queue of any tests to run.
+
+
+
+
+ Class instance.
+
+
+
+
+ A container type that handles an entire test class throughout the
+ test run.
+
+ Test run filter object.
+ The unit test harness.
+ The test class metadata interface.
+ The object instance.
+ The unit test provider.
+
+
+
+ Code run the first time this container is invoked.
+
+
+
+
+ Custom tests need to be prepared before use.
+
+
+
+
+ The test initialize method.
+
+
+
+
+ The test cleanup method.
+
+
+
+
+ Reflect through the class to find any test methods, and add them to
+ the list of queued methods. Also, sorts the methods if appropriate
+ based on the settings file.
+
+
+
+
+ Add a new method dispatcher to the test work item queue. This is a
+ work item container which is able to manage its own internal test
+ work item queue.
+
+ The method reflection object.
+
+
+
+ A special type dedicated to keeping a running stack of the dispatch
+ managers that are actually enabled for "work item" use. The current
+ dispatcher is used by the test work item queue.
+
+
+
+
+ Dispatcher stack; a stack of work item containers.
+
+
+
+
+ Creates a new empty stack for work item containers.
+
+
+
+
+ Push a new dispatcher onto the stack.
+
+ The composite work item to push.
+
+
+
+ Pop a dispatcher off the stack.
+
+ Returns the top-most container. Throws an
+ InvalidOperationException if none is available.
+
+
+
+ Gets the current test work item dispatcher, which is the dispatcher
+ on the top of the stack. Returns null if there is none.
+
+
+
+
+ Manager for planning, processing, and reporting the result of a single
+ test method for a unit test provider.
+
+
+
+
+ Underlying test class object.
+
+
+
+
+ Underlying test method object.
+
+
+
+
+ Reference to an instance of the test class.
+
+
+
+
+ Scenario result of the test method.
+
+
+
+
+ The started time of execution.
+
+
+
+
+ Stores a collection of written lines.
+
+
+
+
+ A value indicating whether the bug attribute was present on this
+ method. If it is, the result will be inverted at completion.
+
+
+
+
+ Contains the main test contents.
+
+
+
+
+ Constructor for a test method manager, which handles executing a single test method
+ for a unit test provider.
+
+ The unit test harness object.
+ The test class metadata object.
+ The test method metadata object.
+ The test class instance.
+ The unit test provider.
+
+
+
+ Log a start message.
+
+
+
+
+ Log an end message.
+
+
+
+
+ Handles the write line event for the test method.
+
+ The string event arguments.
+
+
+
+ First invoke, plan for the method's execution.
+
+
+
+
+ Sets the start and finish times on the ScenarioResult object.
+
+
+
+
+ Creates the ScenarioResult instance for this test method.
+
+ The initial test outcome value.
+
+
+
+ Process the result.
+
+ Source object.
+ Event arguments.
+
+
+
+ Process an unhandled exception for the method.
+
+ Source object.
+ Unhandled exception event arguments.
+
+
+
+ Create a new method container to enclose a reflected method for execution.
+
+ The method reflection object.
+
+
+
+ Gets or sets a value indicating whether the bug attribute's logic
+ has already been processed.
+
+
+
+
+ Gets the write line output list.
+
+
+
+
+ A container which is able to attach to the underlying test dispatcher
+ stack to enable advanced asynchronous functionality, when supported.
+
+
+
+
+ The unit test harness.
+
+
+
+
+ The granularity of the contained item.
+
+
+
+
+ The test method metadata object.
+
+
+
+
+ Initializes dispatcher-stack attaching method container work item.
+
+ Test harness.
+ Test instance.
+ Method reflection object.
+ Test method metadata.
+ Granularity of test.
+
+
+
+ Connect to dispatcher stack for advanced functions, if supported.
+
+
+
+
+ Check a MethodInfo for the advanced async attribute.
+
+ True if the work item queue is supported.
+
+
+
+ A work item for tests to use which will call the delegate when the work
+ item is executed.
+
+
+
+
+ Stored void delegate.
+
+
+
+
+ Create a new Callback work item.
+
+ Action to execute on Invoke.
+
+
+
+ Execute the callback.
+
+ Whether the work item is complete.
+
+
+
+ A test work item that is complete once the condition is asserted.
+
+
+
+
+ The conditional delegate.
+
+
+
+
+ Construct a new conditional work item.
+
+ Conditional delegate.
+
+
+
+ Invoke the condition, will continue invoking until
+ the condition is false.
+
+ Completes the invocation once the condition is true.
+
+
+
+ A simple work item that invokes a method through the reflection
+ MethodInfo instance.
+
+
+
+
+ An empty object array.
+
+
+
+
+ An object instance.
+
+
+
+
+ Method reflection object.
+
+
+
+
+ The test method to invoke.
+
+
+
+
+ Creates a new method invoke work item for a MethodInfo instance.
+
+ The type instance.
+ The method on the type to invoke when the
+ work item is executed.
+ The test method metadata.
+
+
+
+ Invokes the underlying method on the instance and marks the
+ test work item as complete.
+
+ False, noting the completion of the work item.
+
+
+
+ Unit test providers.
+
+
+
+
+ List of unit test providers.
+
+
+
+
+ Static constructor that initializes the built-in unit test metadata providers.
+
+
+
+
+ Gets the unit test provider for an assembly. The framework only
+ currently supports a single provider per test assembly, so if more
+ than one registered provider can handle the assembly, at runtime an
+ InvalidOperationException is thrown.
+
+ The test harness making the request.
+ Assembly reflection object.
+ The unit test provider for the test assembly. Throws if
+ more than one can process the assembly. Returns null if there is
+ not a provider for the assembly.
+
+
+
+ Returns the IAssembly provider for an assembly.
+
+ Test harness object.
+ Assembly reflection object.
+ Returns null or an IAssembly instance.
+
+
+
+ Gets the list of Unit Test providers.
+
+
+
+
+ A dictionary that can store just about any kind of object, keyed off any
+ object. As a Hashtable, it permits using keys of
+ - enums
+ - objects
+ - types
+
+ This makes it ideal for use in decorating and adorning special types in
+ the system, such as log messages.
+
+ A strongly-typed decorator key could come from an enum value, while a
+ prototype extension to the test system could simply use a string key for
+ organizing.
+
+ In all instances, the resulting object needs to be cast appropriately.
+
+
+
+
+ Check if a decorator exists.
+
+ The decorator key object.
+
+ Returns a value indicating whether the decorator key exists. Even
+ if the key exists, the instance value for the key could be set to
+ null, yielding a null instance.
+
+
+
+
+ Check if a set of decorators exists.
+
+ The set of decorator(s) of interest.
+
+ Returns a value indicating whether the decorators of interest were
+ present.
+
+
+
+
+ Retrieves the decorator instance if it exists. If not, this method
+ returns null.
+
+ The decorator key object.
+
+ Returns the instance or null if it does not exist. No exceptions
+ are thrown in this method.
+
+
+
+
+ Helper functionality for dealing with embedded resources in an assembly.
+
+
+
+
+ Get a string containing the text of an embedded resource in an
+ assembly.
+
+
+ An instance whose assembly can be retrieved through reflection.
+
+
+ Complete embedded resource name.
+
+
+ A string containing the embedded resource's string contents.
+
+
+
+
+ A simple factory used for creating new log messages.
+
+
+
+
+ Create a new LogMessage instance.
+
+ Returns a new LogMessage instance.
+
+
+
+ Create a new LogMessage instance.
+
+ The type of message to create.
+ Returns a new LogMessage instance.
+
+
+
+ Gets or sets the default log message type used for the creation of
+ unspecific log message types.
+
+
+
+
+ Well-known keys that can be used to mark decorator instances in log
+ message objects.
+
+
+
+
+ Key for a decorator that is a simple Exception object.
+
+
+
+
+ Key for a decorator that is a simple Name string property.
+
+
+
+
+ An associated TestOutcome value.
+
+
+
+
+ The stage of a message or event.
+
+
+
+
+ The granularity of a message or event.
+
+
+
+
+ A number of possible test outcomes or results. For compatibility, this
+ information resembles that of the desktop test framework, although many
+ of the states may not apply or be valid for an in-browser test harness.
+
+
+
+
+ A test outcome of Error.
+
+
+
+
+ A test outcome of Failed.
+
+
+
+
+ A test outcome of Timeout.
+
+
+
+
+ A test outcome of Aborted.
+
+
+
+
+ A test outcome of Inconclusive.
+
+
+
+
+ A test outcome of a run that was aborted, but passed.
+
+
+
+
+ A test outcome of NotRunnable.
+
+
+
+
+ A test outcome of NotExecuted.
+
+
+
+
+ A test outcome of Disconnected.
+
+
+
+
+ A test outcome of Warning.
+
+
+
+
+ A test outcome of Passed.
+
+
+
+
+ A test outcome of Completed.
+
+
+
+
+ A test outcome of InProgress.
+
+
+
+
+ A test outcome of Pending.
+
+
+
+
+ The stage of a test scenario, case or system running.
+
+
+
+
+ In the process of starting.
+
+
+
+
+ Currently running.
+
+
+
+
+ Finishing up.
+
+
+
+
+ The test is canceling.
+
+
+
+
+ Provides a property that will attach and detach a known event handler
+ delegate when the bit is flipped.
+
+
+
+
+ The event to fire when attached.
+
+
+
+
+ Whether the event handler is attached as a global unhandled
+ exception handler.
+
+
+
+
+ Creates a new exception handler "manager" with the provided
+ EventHandler.
+
+ The event handler to manage.
+
+
+
+ Mark the Handled property in the event args as True to stop any
+ event bubbling.
+
+ Event arguments.
+
+ Value indicating whether the Exception should be marked as handled.
+
+
+
+
+ Return the Exception property from the EventArgs.
+
+ Event arguments.
+
+ Returns the Exception object that the event arguments stores.
+
+
+ This method is compatible with the full desktop framework as well as
+ Silverlight.
+
+
+
+
+ Internal event that is hooked up to the global exception handler.
+
+ Source object of the event.
+ Event arguments.
+
+
+
+ Called after a change to the attachment field value.
+
+
+
+
+ Attach the handler globally.
+
+
+
+
+ Detach the handler globally.
+
+
+
+
+ Gets or sets a value indicating whether the handler is currently
+ attached to the global exception handler.
+
+
+
+
+ A log message.
+
+
+
+
+ The default log message used during initialization.
+
+
+
+
+ Initializes a new log message of the default message type.
+
+
+
+
+ Initializes a new log message.
+
+ The message type.
+
+
+
+ Converts to string representation.
+
+ A string version of the LogMessage.
+
+
+
+ Check if a decorator is present on the LogMessage.
+
+ The decorator of interest.
+
+ Returns a value indicating whether the decorator is present in the
+ DecoratorDictionary.
+
+
+
+
+ Check if a set of decorators are present.
+
+ The decorator(s) of interest.
+
+ Returns a value indicating whether the decorator(s) of interest are
+ present.
+
+
+
+
+ Gets the set of decorator instances attached to the log message.
+
+
+
+
+ Gets or sets the type of message.
+
+
+
+
+ Gets or sets the log's message.
+
+
+
+
+ Gets or sets the decorator type for the message.
+
+
+ The type of decorator. Only one explicit Type is permitted,
+ although multiple types within the same type hierarchy are
+ legitimate.
+
+ Returns the instance of the decorator, if any.
+
+
+
+ The hierarchy of test execution represented in more generic terms, this
+ allows for more robust and useful actions by log providers.
+
+
+
+
+ Harness-level granularity.
+
+
+
+
+ Group of test-level granularity.
+
+
+
+
+ Test-level granularity.
+
+
+
+
+ Scenario-level granularity.
+
+
+
+
+ The most verbose log provider, this calls .ToString() on each and every
+ LogMessage that it processes. The output will appear in an attached
+ debugger's "Output" window.
+
+
+
+
+ Initializes a new instance of the DebugOutputProvider class.
+
+
+
+
+ Display a LogMessage in the debug output window.
+
+ Message object.
+
+
+
+ Gets or sets a value indicating whether any TestResult failures will
+ be reported, regardless of whether the TestResult type is being
+ monitored for debug output.
+
+
+
+
+ Gets or sets a value indicating whether all messages appear in the
+ debug output.
+
+
+
+
+ Set of defined types of log messages to allow for some level of
+ filtering and selective processing of log messages.
+
+
+
+
+ Pass, fail, etc.
+
+
+
+
+ Debug::WriteLine or tracing.
+
+
+
+
+ Non-fatal log message.
+
+
+
+
+ Fatal error message.
+
+
+
+
+ Information about a known defect.
+
+
+
+
+ General information similar to a Console::WriteLine.
+
+
+
+
+ Operating system setting or platform values.
+
+
+
+
+ New unit of test or test run note.
+
+
+
+
+ Related test systems or out-of-process communication information.
+
+
+
+
+ Event information marking the completion of a test run.
+
+
+
+
+ Creates a new TestHarnessCompletedEventArgs.
+
+ The final test harness state.
+
+
+
+ Gets the final test harness state.
+
+ This contains the final pass versus fail result at a minimum.
+ Specific harnesses may extend the type to contain additional
+ information, logs, scenario counts, or anything else.
+
+
+
+
+ A type which handles preparing the underlying dispatcher or timer from
+ which the test work items execute.
+
+
+
+
+ Millisecond interval to use for the interval between DispatcherTimer
+ ticks.
+
+
+
+
+ Dispatcher timer.
+
+
+
+
+ Creates a new run method manager using the default value for the
+ timer's millisecond interval.
+
+
+ Conditional delegate which returns true as long as there is
+ additional work.
+
+
+
+
+ Sets up a new run method manager.
+
+
+ Conditional delegate which returns true as long as there is
+ additional work.
+
+ Milliseconds between ticks, at a
+ minimum.
+
+
+
+ Begin the execution process by hooking up the underlying
+ DispatcherTimer to call into the test framework regularly and
+ perform test work items.
+
+
+
+
+ Call into the underlying work item queue, if the method manager is
+ still set to run.
+
+ Sending object.
+ Event arguments.
+
+
+
+ Base class representing the overall state of a test run.
+
+
+
+
+ Increment the failures counter.
+
+
+
+
+ Increments the total scenarios counter.
+
+
+
+
+ Gets the count of failing scenarios.
+
+
+
+
+ Gets the total count of scenarios run.
+
+
+
+
+ Gets a value indicating whether the status recorded indicates a
+ failure.
+
+
+
+
+ A set of helper methods for interacting with methods and types that are
+ marked with attributes.
+
+
+
+
+ Retrieve all types in an assembly that are decorated with a specific
+ attribute.
+
+ Assembly to search.
+
+ Instance of the Type of attribute that marks interesting methods.
+
+
+ A collection of types from the assembly. An empty collection is
+ returned if no types were found matching the constraints.
+
+
+
+
+ Given a MethodInfo type, returns the attributes (if any) that are of
+ the decoratingAttribute parameter's type.
+
+ MemberInfo instance.
+ Attribute of interest.
+
+ A collection populated with the Attribute instances.
+
+
+
+
+ Given a MethodInfo type, returns the attributes (if any) that are of
+ the decoratingAttribute parameter's type.
+
+ MemberInfo instance.
+ Attribute of interest.
+ A value indicating whether to look for
+ inheriting custom attributes.
+
+ A collection populated with the Attribute instances.
+
+
+
+
+ Given a test method, returns the attributes (if any) that are of
+ the decoratingAttribute parameter's type.
+
+ ITestMethod instance.
+ Attribute of interest.
+ Whether to inherit attributes.
+
+ A collection populated with the Attribute instances.
+
+
+
+
+ Retrieve a list of Reflection.Assembly types from a set of
+ instances and/or types.
+
+ Set of instances or types.
+ A set of Assembly instances from the instances or types.
+
+
+
+ Returns a list of unique assemblies from a set of types.
+
+ Set of types.
+
+ A list of unique Assembly instances from the input types.
+
+
+
+
+ Given a list of attributes, retrieves a single Attribute instance.
+ Will throw an exception if multiple attributes exist on the method.
+
+ List of attributes.
+
+ The attribute instance, or null if it does not exist.
+
+
+
+
+ Given a method and a decorative attribute of interest, retrieves a
+ single Attribute instance. Will throw an exception if multiple
+ attributes exist on the method.
+
+ MemberInfo instance.
+
+ Attribute type of interest.
+
+
+ The attribute instance, or null if it does not exist.
+
+
+
+
+ Given a test method and a decorative attribute of interest,
+ retrieves a single Attribute instance. Will throw an exception if
+ multiple attributes exist on the method.
+
+ ITestMethod instance.
+
+ Attribute type of interest.
+
+
+ The attribute instance, or null if it does not exist.
+
+
+
+
+ Given a test method and a decorative attribute of interest,
+ retrieves a single Attribute instance. Will throw an exception if
+ multiple attributes exist on the method.
+
+ ITestMethod instance.
+
+ Attribute type of interest.
+
+ A value indicating whether to look for custom
+ inherited attributes.
+
+ The attribute instance, or null if it does not exist.
+
+
+
+
+ Returns a value indicating whether a method has the attribute.
+
+ MemberInfo instance.
+ Attribute of interest.
+
+ A value indicating whether the type has the decorating attribute or
+ not.
+
+
+
+
+ Returns a value indicating whether a method has the attribute.
+
+ ITestMethod instance.
+ Attribute of interest.
+
+ A value indicating whether the type has the decorating attribute or
+ not.
+
+
+
+
+ Return a collection of MethodInfo instances given a type to look
+ through and the attribute of interest.
+
+ Type to look through for methods.
+ Attribute of interest.
+
+ A collection of the method reflection objects, if any, with the
+ marked attribute present.
+
+
+
+
+ Retrieve a MethodInfo from a single decorated method inside a type,
+ if any. Throws an Exception if there are > 1 methods that are
+ decorated with the attribute.
+
+ Type of interest.
+ Attribute of interest.
+
+ MethodInfo reflection object. Null if none are found.
+
+
+
+
+ Exposes clipboard functionality within Silverlight 3 applications when a
+ Silverlight 4 runtime is in use.
+
+
+
+
+ An empty array of object type.
+
+
+
+
+ Backing field for set text.
+
+
+
+
+ Backing field for get text.
+
+
+
+
+ Backing field for the contains text method.
+
+
+
+
+ A value indicating whether the clipboard feature is present. This
+ assumes that all 3 methods are present, in their current form for a
+ more recent runtime.
+
+
+
+
+ Sets Unicode text data to store on the clipboard, for later access
+ with System.Windows.Clipboard.GetText().
+
+ A string that contains the Unicode text data to
+ store on the clipboard.
+
+
+
+ Retrieves Unicode text data from the system clipboard, if Unicode
+ text data exists.
+
+ If Unicode text data is present on the system clipboard,
+ returns a string that contains the Unicode text data. Otherwise,
+ returns an empty string.
+
+
+
+
+ Queries the clipboard for the presence of data in the Unicode text
+ format.
+
+ True if the system clipboard contains Unicode text data;
+ otherwise, false.
+
+
+
+ Prepares to use the System.Windows.Clipboard type and throws an
+ exception if the feature cannot be completely located.
+
+
+
+
+ Prepares the type and reflects for new Silverlight features.
+
+
+
+
+ Gets a value indicating whether the clipboard feature is available
+ and supported.
+
+
+
+
+ A framework element that permits a binding to be evaluated in a new data
+ context leaf node.
+
+ The type of dynamic binding to return.
+
+
+
+ Gets or sets the string value binding used by the control.
+
+
+
+
+ Identifies the Value dependency property.
+
+
+
+
+ Initializes a new instance of the BindingEvaluator class.
+
+
+
+
+ Initializes a new instance of the BindingEvaluator class,
+ setting the initial binding to the provided parameter.
+
+ The initial string value binding.
+
+
+
+ Clears the data context so that the control does not keep a
+ reference to the last-looked up item.
+
+
+
+
+ Updates the data context of the framework element and returns the
+ updated binding value.
+
+ The object to use as the data context.
+ If set to true, this parameter will
+ clear the data context immediately after retrieving the value.
+ Returns the evaluated T value of the bound dependency
+ property.
+
+
+
+ Updates the data context of the framework element and returns the
+ updated binding value.
+
+ The object to use as the data context.
+ Returns the evaluated T value of the bound dependency
+ property.
+
+
+
+ Gets or sets the data item string value.
+
+
+
+
+ Gets or sets the value binding.
+
+
+
+
+ Specifies values that control the behavior of a control positioned
+ inside another control.
+
+ Stable
+
+
+
+ Specifies that the control should be positioned on the left of the
+ control.
+
+
+
+
+ Specifies that the control should be positioned on top of the
+ control.
+
+
+
+
+ Specifies that the control should be positioned on the right of the
+ control.
+
+
+
+
+ Specifies that the control should be positioned at the bottom of
+ control.
+
+
+
+
+ The InteractionHelper provides controls with support for all of the
+ common interactions like mouse movement, mouse clicks, key presses,
+ etc., and also incorporates proper event semantics when the control is
+ disabled.
+
+
+
+
+ The threshold used to determine whether two clicks are temporally
+ local and considered a double click (or triple, quadruple, etc.).
+ 500 milliseconds is the default double click value on Windows.
+ This value would ideally be pulled form the system settings.
+
+
+
+
+ The threshold used to determine whether two clicks are spatially
+ local and considered a double click (or triple, quadruple, etc.)
+ in pixels squared. We use pixels squared so that we can compare to
+ the distance delta without taking a square root.
+
+
+
+
+ Reference used to call UpdateVisualState on the base class.
+
+
+
+
+ Initializes a new instance of the InteractionHelper class.
+
+ Control receiving interaction.
+
+
+
+ Update the visual state of the control.
+
+
+ A value indicating whether to automatically generate transitions to
+ the new state, or instantly transition to the new state.
+
+
+ UpdateVisualState works differently than the rest of the injected
+ functionality. Most of the other events are overridden by the
+ calling class which calls Allow, does what it wants, and then calls
+ Base. UpdateVisualState is the opposite because a number of the
+ methods in InteractionHelper need to trigger it in the calling
+ class. We do this using the IUpdateVisualState internal interface.
+
+
+
+
+ Update the visual state of the control.
+
+
+ A value indicating whether to automatically generate transitions to
+ the new state, or instantly transition to the new state.
+
+
+
+
+ Handle the control's Loaded event.
+
+ The control.
+ Event arguments.
+
+
+
+ Handle changes to the control's IsEnabled property.
+
+ The control.
+ Event arguments.
+
+
+
+ Handles changes to the control's IsReadOnly property.
+
+ The value of the property.
+
+
+
+ Update the visual state of the control when its template is changed.
+
+
+
+
+ Check if the control's GotFocus event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Base implementation of the virtual GotFocus event handler.
+
+
+
+
+ Check if the control's LostFocus event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Base implementation of the virtual LostFocus event handler.
+
+
+
+
+ Check if the control's MouseEnter event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Base implementation of the virtual MouseEnter event handler.
+
+
+
+
+ Check if the control's MouseLeave event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Base implementation of the virtual MouseLeave event handler.
+
+
+
+
+ Check if the control's MouseLeftButtonDown event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Base implementation of the virtual MouseLeftButtonDown event
+ handler.
+
+
+
+
+ Check if the control's MouseLeftButtonUp event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Base implementation of the virtual MouseLeftButtonUp event handler.
+
+
+
+
+ Check if the control's KeyDown event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Check if the control's KeyUp event should be handled.
+
+ Event arguments.
+
+ A value indicating whether the event should be handled.
+
+
+
+
+ Gets the control the InteractionHelper is targeting.
+
+
+
+
+ Gets a value indicating whether the control has focus.
+
+
+
+
+ Gets a value indicating whether the mouse is over the control.
+
+
+
+
+ Gets a value indicating whether the read-only property is set.
+
+
+
+
+ Gets a value indicating whether the mouse button is pressed down
+ over the control.
+
+
+
+
+ Gets or sets the last time the control was clicked.
+
+
+ The value is stored as Utc time because it is slightly more
+ performant than converting to local time.
+
+
+
+
+ Gets or sets the mouse position of the last click.
+
+ The value is relative to the control.
+
+
+
+ Gets the number of times the control was clicked.
+
+
+
+
+ The ItemContainerGenerator provides useful utilities for ItemsControls.
+
+ Preview
+
+
+
+ A Panel that is used as the ItemsHost of the ItemsControl. This
+ property will only be valid when the ItemsControl is live in the
+ tree and has generated containers for some of its items.
+
+
+
+
+ A ScrollViewer that is used to scroll the items in the ItemsHost.
+
+
+
+
+ Initializes a new instance of the ItemContainerGenerator.
+
+
+ The ItemsControl being tracked by the ItemContainerGenerator.
+
+
+
+
+ Apply a control template to the ItemsControl.
+
+
+
+
+ Prepares the specified container to display the specified item.
+
+
+ Container element used to display the specified item.
+
+
+ The ItemContainerStyle for the parent ItemsControl.
+
+
+
+
+ Update the style of any generated items when the ItemContainerStyle
+ has been changed.
+
+ The ItemContainerStyle.
+
+ Silverlight does not support setting a Style multiple times, so we
+ only attempt to set styles on elements whose style hasn't already
+ been set.
+
+
+
+
+ Scroll the desired element into the ScrollHost's viewport.
+
+ Element to scroll into view.
+
+
+
+ Gets or sets the ItemsControl being tracked by the
+ ItemContainerGenerator.
+
+
+
+
+ Gets a Panel that is used as the ItemsHost of the ItemsControl.
+ This property will only be valid when the ItemsControl is live in
+ the tree and has generated containers for some of its items.
+
+
+
+
+ Gets a ScrollViewer that is used to scroll the items in the
+ ItemsHost.
+
+
+
+
+ Numeric utility methods used by controls. These methods are similar in
+ scope to the WPF DoubleUtil class.
+
+
+
+
+ Check if a number is zero.
+
+ The number to check.
+ True if the number is zero, false otherwise.
+
+
+
+ Check if a number isn't really a number.
+
+ The number to check.
+
+ True if the number is not a number, false if it is a number.
+
+
+
+
+ Determine if one number is greater than another.
+
+ First number.
+ Second number.
+
+ True if the first number is greater than the second, false
+ otherwise.
+
+
+
+
+ Determine if one number is less than or close to another.
+
+ First number.
+ Second number.
+
+ True if the first number is less than or close to the second, false
+ otherwise.
+
+
+
+
+ Determine if two numbers are close in value.
+
+ First number.
+ Second number.
+
+ True if the first number is close in value to the second, false
+ otherwise.
+
+
+
+
+ NanUnion is a C++ style type union used for efficiently converting
+ a double into an unsigned long, whose bits can be easily
+ manipulated.
+
+
+
+
+ Floating point representation of the union.
+
+
+
+
+ Integer representation of the union.
+
+
+
+
+ Provides event data for various routed events that track property values
+ changing. Typically the events denote a cancellable action.
+
+
+ The type of the value for the dependency property that is changing.
+
+ Preview
+
+
+
+ Private member variable for Cancel property.
+
+
+
+
+ Initializes a new instance of the
+
+ class.
+
+
+ The identifier
+ for the property that is changing.
+
+ The previous value of the property.
+
+ The new value of the property, assuming that the property change is
+ not cancelled.
+
+
+ True if the property change is cancellable by setting
+
+ to true in event handling. false if the property change is not
+ cancellable.
+
+
+
+
+ Gets the
+ identifier for the property that is changing.
+
+
+ The identifier
+ for the property that is changing.
+
+
+
+
+ Gets a value that reports the previous value of the changing
+ property.
+
+
+ The previous value of the changing property.
+
+
+
+
+ Gets or sets a value that reports the new value of the changing
+ property, assuming that the property change is not cancelled.
+
+
+ The new value of the changing property.
+
+
+
+
+ Gets a value indicating whether the property change that originated
+ the RoutedPropertyChanging event is cancellable.
+
+
+ True if the property change is cancellable. false if the property
+ change is not cancellable.
+
+
+
+
+ Gets or sets a value indicating whether the property change that
+ originated the RoutedPropertyChanging event should be cancelled.
+
+
+ True to cancel the property change; this resets the property to
+ .
+ false to not cancel the property change; the value changes to
+ .
+
+
+ Attempted to cancel in an instance where
+
+ is false.
+
+
+
+
+ Gets or sets a value indicating whether internal value coercion is
+ acting on the property change that originated the
+ RoutedPropertyChanging event.
+
+
+ True if coercion is active. false if coercion is not active.
+
+
+ This is a total hack to work around the class hierarchy for Value
+ coercion in NumericUpDown.
+
+
+
+
+ Represents methods that handle various routed events that track property
+ values changing. Typically the events denote a cancellable action.
+
+
+ The type of the value for the dependency property that is changing.
+
+
+ The object where the initiating property is changing.
+
+ Event data for the event.
+ Preview
+
+
+
+ The ScrollExtensions class provides utility methods for scrolling items
+ ScrollViewers.
+
+
+
+
+ The amount to scroll a ScrollViewer for a line change.
+
+
+
+
+ Scroll a ScrollViewer vertically by a given offset.
+
+ The ScrollViewer.
+ The vertical offset to scroll.
+
+
+
+ Scroll a ScrollViewer horizontally by a given offset.
+
+ The ScrollViewer.
+ The horizontal offset to scroll.
+
+
+
+ Scroll the ScrollViewer up by a line.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer down by a line.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer left by a line.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer right by a line.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer up by a page.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer down by a page.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer left by a page.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer right by a page.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer to the top.
+
+ The ScrollViewer.
+
+
+
+ Scroll the ScrollViewer to the bottom.
+
+ The ScrollViewer.
+
+
+
+ Get the top and bottom of an element with respect to its parent.
+
+ The element to get the position of.
+ The parent of the element.
+ Vertical offset to the top of the element.
+
+ Vertical offset to the bottom of the element.
+
+
+
+
+ Common TypeConverter functionality.
+
+
+
+
+ Returns a value indicating whether this converter can convert an
+ object of the given type to an instance of the expected type.
+
+ Expected type of the converter.
+
+ The type of the source that is being evaluated for conversion.
+
+
+ A value indicating whether the converter can convert the provided
+ type.
+
+
+
+
+ Attempts to convert a specified object to an instance of the
+ expected type.
+
+ Expected type of the converter.
+ TypeConverter instance.
+ The object being converted.
+
+ The instance of the expected type created from the converted object.
+
+
+
+
+ Determines whether conversion is possible to a specified type.
+
+ Expected type of the converter.
+
+ Identifies the data type to evaluate for conversion.
+
+
+ A value indicating whether conversion is possible.
+
+
+
+
+ Attempts to convert a specified object to an instance of the
+ desired type.
+
+ TypeConverter instance.
+ The object being converted.
+
+ The type to convert the value to.
+
+
+ The value of the conversion to the specified type.
+
+
+
+
+ Names and helpers for visual states in the controls.
+
+
+
+
+ Common state group.
+
+
+
+
+ Normal state of the Common state group.
+
+
+
+
+ Normal state of the Common state group.
+
+
+
+
+ MouseOver state of the Common state group.
+
+
+
+
+ Pressed state of the Common state group.
+
+
+
+
+ Disabled state of the Common state group.
+
+
+
+
+ Focus state group.
+
+
+
+
+ Unfocused state of the Focus state group.
+
+
+
+
+ Focused state of the Focus state group.
+
+
+
+
+ Selection state group.
+
+
+
+
+ Selected state of the Selection state group.
+
+
+
+
+ Unselected state of the Selection state group.
+
+
+
+
+ Selected inactive state of the Selection state group.
+
+
+
+
+ Expansion state group.
+
+
+
+
+ Expanded state of the Expansion state group.
+
+
+
+
+ Collapsed state of the Expansion state group.
+
+
+
+
+ Popup state group.
+
+
+
+
+ Opened state of the Popup state group.
+
+
+
+
+ Closed state of the Popup state group.
+
+
+
+
+ ValidationStates state group.
+
+
+
+
+ The valid state for the ValidationStates group.
+
+
+
+
+ Invalid, focused state for the ValidationStates group.
+
+
+
+
+ Invalid, unfocused state for the ValidationStates group.
+
+
+
+
+ ExpandDirection state group.
+
+
+
+
+ Down expand direction state of ExpandDirection state group.
+
+
+
+
+ Up expand direction state of ExpandDirection state group.
+
+
+
+
+ Left expand direction state of ExpandDirection state group.
+
+
+
+
+ Right expand direction state of ExpandDirection state group.
+
+
+
+
+ HasItems state group.
+
+
+
+
+ HasItems state of the HasItems state group.
+
+
+
+
+ NoItems state of the HasItems state group.
+
+
+
+
+ Increment state group.
+
+
+
+
+ State enabled for increment group.
+
+
+
+
+ State disabled for increment group.
+
+
+
+
+ Decrement state group.
+
+
+
+
+ State enabled for decrement group.
+
+
+
+
+ State disabled for decrement group.
+
+
+
+
+ InteractionMode state group.
+
+
+
+
+ Edit of the DisplayMode state group.
+
+
+
+
+ Display of the DisplayMode state group.
+
+
+
+
+ DisplayMode state group.
+
+
+
+
+ Edit of the DisplayMode state group.
+
+
+
+
+ Display of the DisplayMode state group.
+
+
+
+
+ Active state.
+
+
+
+
+ Inactive state.
+
+
+
+
+ Active state group.
+
+
+
+
+ Non-watermarked state.
+
+
+
+
+ Watermarked state.
+
+
+
+
+ Watermark state group.
+
+
+
+
+ Unfocused state for Calendar Buttons.
+
+
+
+
+ Focused state for Calendar Buttons.
+
+
+
+
+ CalendarButtons Focus state group.
+
+
+
+
+ Use VisualStateManager to change the visual state of the control.
+
+
+ Control whose visual state is being changed.
+
+
+ A value indicating whether to use transitions when updating the
+ visual state, or to snap directly to the new visual state.
+
+
+ Ordered list of state names and fallback states to transition into.
+ Only the first state to be found will be used.
+
+
+
+
+ Gets the implementation root of the Control.
+
+ The DependencyObject.
+
+ Implements Silverlight's corresponding internal property on Control.
+
+ Returns the implementation root or null.
+
+
+
+ This method tries to get the named VisualStateGroup for the
+ dependency object. The provided object's ImplementationRoot will be
+ looked up in this call.
+
+ The dependency object.
+ The visual state group's name.
+ Returns null or the VisualStateGroup object.
+
+
+
+ Represents a that supports
+ objects,
+ such as .
+
+ Stable
+
+
+
+ The DataTemplate to apply to the ItemTemplate property on a
+ generated HeaderedItemsControl (such as a MenuItem or a
+ TreeViewItem), to indicate how to display items from the next level
+ in the data hierarchy.
+
+
+
+
+ The Style to apply to the ItemContainerStyle property on a generated
+ HeaderedItemsControl (such as a MenuItem or a TreeViewItem), to
+ indicate how to style items from the next level in the data
+ hierarchy.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Gets or sets the collection that is used to generate content for the
+ next sublevel in the data hierarchy.
+
+
+ The collection that is used to generate content for the next
+ sublevel in the data hierarchy. The default value is null.
+
+
+
+
+ Gets a value indicating whether the ItemTemplate property was set on
+ the template.
+
+
+
+
+ Gets or sets the to
+ apply to the
+
+ property on a generated
+ , such
+ as a , to
+ indicate how to display items from the next sublevel in the data
+ hierarchy.
+
+
+ The to apply to the
+
+ property on a generated
+ , such
+ as a , to
+ indicate how to display items from the next sublevel in the data
+ hierarchy.
+
+
+
+
+ Gets a value indicating whether the ItemContainerStyle property was
+ set on the template.
+
+
+
+
+ Gets or sets the that is
+ applied to the item container for each child item.
+
+
+ The style that is applied to the item container for each child item.
+
+
+
+
+ Class to encapsulate drag behavior for a UIElement.
+
+ Mature
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Create an instance of the DragValidator class.
+
+
+ UIElement that represents the source of the drag operation.
+
+
+
+
+ Handle the MouseMove event for the UIElement to update the drag
+ operation.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Handle the MouseLeftButtonUp event for the UIElement to complete the
+ drag operation.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Handle the MouseLeftButtonDown event for the UIElement to start a
+ drag operation.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Invoke the DragStartedEvent handlers.
+
+
+
+
+ Invoke the DragDeltaEvent handlers.
+
+ Inherited code: Requires comment.
+
+
+
+ Invoke the DragCompletedEvent handlers.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Occurs when a drag operation has started.
+
+
+
+
+ Occurs when a drag operation has completed.
+
+
+
+
+ Occurs when a drag operation has progressed.
+
+
+
+
+ Represents a control that redistributes space between the rows of
+ columns of a control.
+
+ Mature
+
+ Represents the control that redistributes space between columns or rows
+ of a Grid control.
+
+ Mature
+
+ Represents the control that redistributes space between columns or rows
+ of a Grid control.
+
+ Mature
+
+ Represents the control that redistributes space between columns or rows
+ of a Grid control.
+
+ Mature
+
+ Represents the control that redistributes space between columns or rows
+ of a Grid control.
+
+ Mature
+
+ Represents the control that redistributes space between columns or rows
+ of a Grid control.
+
+ Mature
+
+ Represents the control that redistributes space between columns or rows
+ of a Grid control.
+
+ Mature
+
+ Represents the control that redistributes space between columns or rows
+ of a Grid control.
+
+ Mature
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Default increment parameter.
+
+
+
+
+ Default increment parameter.
+
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ An identifier for the
+
+ dependency property.
+
+
+
+
+ Identifies the
+
+ dependency property.
+
+
+ An identifier for the
+
+ dependency property.
+
+
+
+
+ Called when the IsEnabled property changes.
+
+ Sender object.
+ Property changed args.
+
+
+
+ Is Null until a resize operation is initiated with ShowsPreview ==
+ True, then it persists for the life of the GridSplitter.
+
+
+
+
+ Is initialized in the constructor.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Holds the state for whether the mouse is over the control or not.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Builds the visual tree for the
+
+ control when a new template is applied.
+
+
+
+
+ Returns a
+
+ for use by the Silverlight automation infrastructure.
+
+
+ A
+
+ for the
+ object.
+
+
+
+
+ Method to change the visual state of the control.
+
+
+
+
+ Change to the correct visual state for the GridSplitter.
+
+
+ True to use transitions when updating the visual state, false to
+ snap directly to the new visual state.
+
+
+
+
+ Handle the drag completed event to commit or cancel the resize
+ operation in progress.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Handle the drag delta event to update the UI for the resize
+ operation in progress.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Handle the drag started event to start a resize operation if the
+ control is enabled.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Handle the key down event to allow keyboard resizing or canceling a
+ resize operation.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Initialize the resize data and move the splitter by the specified
+ amount.
+
+
+ Horizontal amount to move the splitter.
+
+
+ Vertical amount to move the splitter.
+
+ Inherited code: Requires comment.
+
+
+
+ Called by keyboard event handler to move the splitter if allowed.
+
+
+ Horizontal amount to move the splitter.
+
+
+ Vertical amount to move the splitter.
+
+ Inherited code: Requires comment.
+
+
+
+ Creates the preview layer and adds it to the parent grid.
+
+ Grid to add the preview layer to.
+
+
+
+ Add the preview layer to the Grid if it is not there already and
+ then show the preview control.
+
+
+
+
+ Remove the preview control from the preview layer if it exists.
+
+
+
+
+ Initialize the resizeData object to hold the information for the
+ resize operation in progress.
+
+
+ Whether or not the preview should be shown.
+
+
+
+
+ Move the splitter and resize the affected columns or rows.
+
+
+ Amount to resize horizontally.
+
+
+ Amount to resize vertically.
+
+
+ Only one of horizontalChange or verticalChange will be non-zero.
+
+
+
+
+ Determine which adjacent column or row definitions need to be
+ included in the resize operation and set up resizeData accordingly.
+
+ True if it is a valid resize operation.
+
+
+
+ Cancel the resize operation in progress.
+
+
+
+
+ Get the actual length of the given definition.
+
+
+ Row or column definition to get the actual length for.
+
+
+ Height of a row definition or width of a column definition.
+
+
+
+
+ Determine the max and min that the two definitions can be resized.
+
+ Inherited code: Requires comment.
+
+
+
+ Determine the resize behavior based on the given direction and
+ alignment.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Determine the resize direction based on the horizontal and vertical
+ alignments.
+
+ Inherited code: Requires comment.
+
+
+
+ Create a DefinitionAbstraction instance for the given row or column
+ index in the grid.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+ Inherited code: Requires comment 2.
+ Inherited code: Requires comment 3.
+
+
+
+ Set the lengths of the two definitions depending on the split
+ behavior.
+
+
+ Inherited code: Requires comment.
+
+
+ Inherited code: Requires comment 1.
+
+
+
+
+ Set the height/width of the given row/column.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ Determine if the given definition has its size set to the "*" value.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+
+
+
+ This code will run whenever the effective resize direction changes,
+ to update the template being used to display this control.
+
+
+
+
+ Exposes test hooks to unit tests with internal access.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets the resize data. This is null unless a resize
+ operation is in progress.
+
+
+
+
+ Gets or sets a value indicating whether the
+ displays a
+ preview.
+
+
+ True if a preview is displayed; otherwise, false.
+
+
+
+
+ Gets or sets the that is used
+ for previewing changes.
+
+
+ The style that is used to preview changes.
+
+
+
+
+ Gets a value indicating whether or not the control has keyboard
+ focus.
+
+
+
+
+ Gets a test hook for unit tests with internal access.
+
+
+
+
+ Pretends to be the base class for RowDefinition and ClassDefinition
+ types so that objects of either type can be treated as one.
+
+ Mature
+
+
+
+ Creates an instance of the DefinitionAbstraction class based on
+ the given row or column definition.
+
+
+ RowDefinition or ColumnDefinition instance.
+
+
+
+
+ Gets the stored definition cast as a row definition.
+
+ Null if not a RowDefinition.
+
+
+
+ Gets the stored definition cast as a column definition.
+
+ Null if not a ColumnDefinition.
+
+
+
+ Gets the MaxHeight/MaxWidth for the row/column.
+
+
+
+
+ Gets the MinHeight/MinWidth for the row/column.
+
+
+
+
+ Gets the Height/Width for the row/column.
+
+
+
+
+ A collection of helper methods for working with double data types.
+
+ Mature
+
+
+
+ Epsilon is the smallest value such that 1.0+epsilon != 1.0. It
+ can be used to determine the acceptable tolerance for rounding
+ errors.
+
+
+ Epsilon is normally 2.2204460492503131E-16, but Silverlight 2
+ uses floats so the effective epsilon is really 1.192093E-07.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Determine if the two doubles are effectively equal within
+ tolerances.
+
+ Inherited code: Requires comment.
+ Inherited code: Requires comment 1.
+ Inherited code: Requires comment 2.
+
+
+
+ Inherited code: Requires comment.
+
+ Mature
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+ Mature
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Type to hold the data for the resize operation in progress.
+
+ Mature
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets a value indicating whether Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+ Mature
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Expose test hooks for internal and private members of the
+ GridSplitter.
+
+
+
+
+ Reference to the outer 'parent' GridSplitter.
+
+
+
+
+ Initializes a new instance of the InternalTestHook class.
+
+ The grid splitter to hook.
+
+
+
+ Simulate the DragValidator's DragCompleted event.
+
+ The sender.
+ Event arguments.
+
+
+
+ Simulate the DragValidator's DragDelta event.
+
+ The sender.
+ Event arguments.
+
+
+
+ Simulate the DragValidator's DragStarted event.
+
+ The sender.
+ Event arguments.
+
+
+
+ Simulate using the keyboard to move the splitter.
+
+ Horizontal change.
+ Vertical change.
+
+ A value indicating whether the splitter was moved.
+
+
+
+
+ Gets the GridSplitter's GridResizeDirection.
+
+
+
+
+ Gets the GridSplitter's PreviewLayer.
+
+
+
+
+ Gets the GridSplitter's ResizeData.
+
+
+
+
+ Exposes types to
+ UI automation.
+
+ Mature
+
+
+
+ Initializes a new instance of the
+
+ class.
+
+
+ The to
+ associate with the
+ .
+
+
+
+
+ Gets the control type for the element that is associated with the UI
+ Automation peer.
+
+ The control type.
+
+
+
+ Called by GetClassName that gets a human readable name that, in
+ addition to AutomationControlType, differentiates the control
+ represented by this AutomationPeer.
+
+ The string that contains the name.
+
+
+
+ Gets the control pattern for the
+ that is
+ associated with this
+ .
+
+
+ One of the enumeration values.
+
+
+ The object that implements the pattern interface, or null if the
+ specified pattern interface is not implemented by this peer.
+
+
+
+
+ Moves the control.
+
+
+ Absolute screen coordinates of the left side of the control.
+
+
+ Absolute screen coordinates of the top of the control.
+
+
+
+
+ Resizes the control.
+
+ The new width of the window, in pixels.
+
+ The new height of the window, in pixels.
+
+
+
+
+ Rotates the control.
+
+
+ The number of degrees to rotate the control. A positive number
+ rotates clockwise; a negative number rotates counterclockwise.
+
+
+
+
+ Gets a value indicating whether the control can be moved.
+
+
+ True if the element can be moved; otherwise, false.
+
+
+
+
+ Gets a value indicating whether the UI automation element can be
+ resized.
+
+
+ True if the element can be resized; otherwise, false.
+
+
+
+
+ Gets a value indicating whether the control can be rotated.
+
+
+ True if the element can be rotated; otherwise, false.
+
+
+
+
+ Represents the control that shows a preview of the GridSplitter's
+ redistribution of space between columns or rows of a Grid control.
+
+ Mature
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Inherited code: Requires comment.
+
+
+
+
+ Is Null until the PreviewControl is bound to a GridSplitter.
+
+
+
+
+ Tracks the bound GridSplitter's location for calculating the
+ PreviewControl's offset.
+
+
+
+
+ Instantiate the PreviewControl.
+
+
+
+
+ Called when template should be applied to the control.
+
+
+
+
+ Bind the the dimensions of the preview control to the associated
+ grid splitter.
+
+ GridSplitter instance to target.
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets Inherited code: Requires comment.
+
+
+
+
+ Gets or sets the x-axis offset for the underlying render transform.
+
+
+
+
+ Gets or sets the y-axis offset for the underlying render transform.
+
+
+
+
+ Exposes types to UI
+ automation.
+
+ Stable
+
+
+
+ Initializes a new instance of the
+
+ class.
+
+
+ The to associate
+ with the
+ .
+
+
+
+
+ Gets the control type for the
+ that is associated
+ with this
+ .
+ This method is called by
+ .
+
+
+ The
+
+ enumeration value.
+
+
+
+
+ Gets the name of the
+ that is associated
+ with
+ .
+ This method is called by
+ .
+
+ A string that contains TreeView.
+
+
+
+ Gets a control pattern for the
+ that is associated
+ with this
+ .
+
+
+ One of the enumeration values that indicates the control pattern.
+
+
+ The object that implements the pattern interface, or null if the
+ specified pattern interface is not implemented by this peer.
+
+
+
+
+ Gets the collection of child elements of the
+ that is associated
+ with this
+ .
+
+ The collection of child elements.
+
+
+
+ Retrieves a UI automation provider for each child element that is
+ selected.
+
+ An array of UI automation providers.
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Gets the TreeView that owns this TreeViewAutomationPeer.
+
+
+
+
+ Gets a value indicating whether the UI automation provider
+ allows more than one child element to be selected at the same time.
+
+
+ True if multiple selection is allowed; otherwise, false.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Gets a value indicating whether the UI automation provider
+ requires at least one child element to be selected.
+
+
+ True if selection is required; otherwise, false.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Exposes the items in
+ types to UI
+ automation.
+
+ Stable
+
+
+
+ Initializes a new instance of the
+
+ class.
+
+
+ The instance
+ to associate with this
+ .
+
+
+
+
+ Gets the control type for the
+ that is
+ associated with this
+ .
+ This method is called by
+ .
+
+
+ The
+
+ enumeration value.
+
+
+
+
+ Gets the name of the
+ that is
+ associated with this
+ .
+ This method is called by
+ .
+
+ A string that contains TreeViewItem.
+
+
+
+ Gets the control pattern for the
+ that is
+ associated with this
+ .
+
+
+ One of the enumeration values.
+
+
+ The object that implements the pattern interface, or null if the
+ specified pattern interface is not implemented by this peer.
+
+
+
+
+ Raise the IsSelected property changed event.
+
+
+ A value indicating whether the TreeViewItem is selected.
+
+
+
+
+ Raise an automation event when a TreeViewItem is expanded or
+ collapsed.
+
+
+ A value indicating whether the TreeViewItem was expanded.
+
+
+ A value indicating whether the TreeViewItem is expanded.
+
+
+
+
+ Displays all child nodes, controls, or content of the control.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Hides all nodes, controls, or content that are descendants of the
+ control.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Adds the current element to the collection of selected items.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Clears any selection and then selects the current element.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Removes the current element from the collection of selected items.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Scrolls the content area of a container object in order to display
+ the control within the visible region (viewport) of the container.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Gets the TreeViewItem that owns this TreeViewItemAutomationPeer.
+
+
+
+
+ Gets the state (expanded or collapsed) of the control.
+
+
+ The state (expanded or collapsed) of the control.
+
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Gets a value indicating whether an item is selected.
+
+ True if an item is selected; otherwise, false.
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ Gets the UI automation provider that implements
+
+ and acts as the container for the calling object.
+
+ The UI automation provider.
+
+ This API supports the .NET Framework infrastructure and is not
+ intended to be used directly from your code.
+
+
+
+
+ A specialized data template selector.
+
+
+
+
+ Initializes a new instance of the DataTemplateSelector type.
+
+
+
+
+ Convert a value to a data template.
+
+ The value.
+ The target parameter.
+ ConverterParameter value.
+ The culture parameter.
+ Returns the object.
+
+
+
+ No 2-way databinding support.
+
+ The value.
+ The target parameter.
+ ConverterParameter value.
+ The culture parameter.
+ Returns the object.
+
+
+
+ Gets or sets the default data template.
+
+
+
+
+ Gets or sets the test method template.
+
+
+
+
+ Gets or sets the test class template.
+
+
+
+
+ A specialized bool inversion selector.
+
+
+
+
+ Initializes a new instance of the InvertValueConverter class.
+
+
+
+
+ Convert a value to its opposite. Defines that null value will also
+ return false.
+
+ The value.
+ The target parameter.
+ ConverterParameter value.
+ The culture parameter.
+ Returns the object.
+
+
+
+ No 2-way databinding support.
+
+ The value.
+ The target parameter.
+ ConverterParameter value.
+ The culture parameter.
+ Returns the object.
+
+
+
+ A notification type for use in the Notifications ItemsControl.
+
+
+
+
+ Name of the template part.
+
+
+
+
+ Identifies the Title dependency property.
+
+
+
+
+ Identifies the CloseButtonVisibility dependency property.
+
+
+
+
+ Backing field for the close button.
+
+
+
+
+ Initializes a new instance of the Notification class.
+
+
+
+
+ Fires the Closed event.
+
+ The event data.
+
+
+
+ Overrides the on apply template method.
+
+
+
+
+ Connects to the Click event of the Close button.
+
+ The source object.
+ The event arguments.
+
+
+
+ Gets or sets the title of the notification.
+
+
+
+
+ Gets or sets the visibility of the close button.
+
+
+
+
+ Closed event that connects to the close button of the notification.
+
+
+
+
+ A class that contains notification information.
+
+
+
+
+ Initialize a new intance of the Notifications type.
+
+
+
+
+ Overrides the on apply template method.
+
+
+
+
+ Adds a notification object to the set of notifications. Connects the
+ close button handler to automatically remove the notification from
+ the visual tree.
+
+ A notification instance.
+
+
+
+ Handles the Closed event from the notification and removes the
+ child.
+
+ The source object.
+ The event data.
+
+
+
+ This class contains information about the test application and its
+ deployment settings.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Handles the install state changed event.
+
+ The source object.
+ The event arguments.
+
+
+
+ Backing field for an installed property.
+
+
+
+
+ Gets a value indicating whether the test application is currently
+ installed out of browser.
+
+
+
+
+ Gets the text to show the user the state of the out of browser test
+ application.
+
+
+
+
+ Gets a value indicating whether out of browser is both supported and
+ not currently installed.
+
+
+
+
+ Gets a value indicating whether out of browser is supported by this
+ test application.
+
+
+
+
+ A simple implementation similar to XElement.
+
+
+
+
+ Backing field for child elements.
+
+
+
+
+ Backing field for attributes.
+
+
+
+
+ Backing field for the element name.
+
+
+
+
+ Backing field for optional XML namespace.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the element.
+
+ The name of the element.
+
+
+
+ Initializes a new instance of the element.
+
+ The name of the element.
+ The XML namespace of the element.
+
+
+
+ Initializes a new instance of the class using the reader as the
+ current root of the element.
+
+ The XmlReader instance.
+
+
+
+ Sets the value of a new child element.
+
+ The element name.
+ The value of the new element.
+
+
+
+ Sets the value of a new child element with an XML namespace value.
+
+ The element name.
+ The value of the new element.
+ The XML namespace.
+
+
+
+ Sets the value of an attribute.
+
+ The attribute name.
+ The attribute value.
+
+
+
+ Sets the value of the element.
+
+ The new string value.
+
+
+
+ Gets an attribute value.
+
+ The attribute name.
+ Returns an instance of the attribute value.
+
+
+
+ Adds a child element to the simple element instance.
+
+ The child element instance.
+
+
+
+ Returns descendants.
+
+ The element name to look for.
+ Returns an enumeration of elements.
+
+
+
+ Creates a new SimpleXElement.
+
+ XML content.
+ Returns a new instance of the element and children.
+
+
+
+ Parses the current level with the XmlReader instance.
+
+ The reader instance.
+ A value indicating whether this is the first
+ parse. Actually this will always be true for now.
+
+
+
+ Generates the string representation of the element and its tree.
+
+ Returns the string representation of the element.
+
+
+
+ Writes to the XML writer without document start and ends.
+
+ The writer instance.
+
+
+
+ Gets the element name.
+
+
+
+
+ Gets or sets the element text, if any.
+
+
+
+
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll
new file mode 100644
index 0000000000..9313918b18
Binary files /dev/null and b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll differ
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.extmap.xml b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.extmap.xml
new file mode 100644
index 0000000000..2410f71457
--- /dev/null
+++ b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.extmap.xml
@@ -0,0 +1,12 @@
+
+
+
+ Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight
+ 2.0.5.0
+ 31bf3856ad364e35
+ Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll
+
+
+
+
\ No newline at end of file
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.pdb b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.pdb
new file mode 100644
index 0000000000..6096960ba5
Binary files /dev/null and b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.pdb differ
diff --git a/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.xml b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.xml
new file mode 100644
index 0000000000..0b84c0ae7d
--- /dev/null
+++ b/lib/Microsoft.Silverlight.Testing/April2010/Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.xml
@@ -0,0 +1,3429 @@
+
+
+
+ Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight
+
+
+
+
+ UrlToTest specifies the url that should be requested to give context to the test.
+
+
+
+
+ An unused attribute.
+
+
+
+
+
+ Gets the URL to test.
+
+
+
+
+ AspNetDevelopmentServer specifies the settings to be used for the
+ ASP.NET Development Server for the test.
+
+
+
+
+ Initializes the AspNetDevelopmentServerAttribute.
+
+ The name.
+ The path to web app.
+
+
+
+ Initializes the AspNetDevelopmentServerAttribute.
+
+ The name.
+ The path to web app.
+ The web app root.
+
+
+
+ Gets the name.
+
+
+
+
+ Gets the PathToWebApp.
+
+
+
+
+ Gets the web app root.
+
+
+
+
+ AspNetDevelopmentServerHost specifies the settings to be used when
+ ASP.NET Development Server is the host server for the test.
+
+
+
+
+ Initializes the AspNetDevelopmentServerHostAttribute.
+
+ The path to the web app.
+
+
+
+ Initializes the AspNetDevelopmentServerHostAttribute.
+
+ The path to the web app.
+ The web app root.
+
+
+
+ Gets the path to the web application.
+
+
+
+
+ Gets the WebAppRoot.
+
+
+
+
+ For ASP.NET sites that require basic authentication, specify the
+ user name and password using the Credential attribute.
+ WARNING: The password is stored in plain text in source code
+ and in the compiled assembly. Restrict access to the source code
+ and assembly to protect this sensitive information.
+
+
+
+
+ Specify the user name and password needed to access the web site under test.
+
+ The user name.
+
+ The password. WARNING: The password is stored in plain text in source code
+ and in the compiled assembly. Restrict access to the source code and assembly
+ to protect this sensitive information.
+
+
+
+
+ Specify the user name, password, and domain needed to access the web site under test.
+
+ The user name.
+
+ The password. WARNING: The password is stored in plain text in source code
+ and in the compiled assembly. Restrict access to the source code and assembly
+ to protect this sensitive information.
+
+ The domain.
+
+
+
+ Gets the user name.
+
+
+
+
+ Gets the password.
+
+
+
+
+ Gets the domain.
+
+
+
+
+ Base class for Framework Exceptions, provides localization trick so that messages are in HA locale.
+
+
+
+
+ Initializes a new UnitTestAssertException.
+
+
+
+
+ Initializes UnitTestAssertException.
+
+ The message.
+
+
+
+ Gets the Message string.
+
+
+
+
+ AssertFailedException class. Used to indicate failure for a test case
+
+
+
+
+ Initializes a new AssertFailedException.
+
+ The message.
+
+
+
+ AssertFailedException
+
+ The message.
+ The inner exception.
+
+
+
+ The AssertInconclusiveException class.
+
+
+
+
+ Initializes a new AssertInconclusiveException.
+
+ The message.
+
+
+
+ Initializes a new AssertInconclusiveException.
+
+ The message.
+ The inner exception.
+
+
+
+ Initializes a new AssertInconclusiveException.
+
+
+
+
+ InternalTestFailureException class. Used to indicate internal failure
+ for a test case.
+
+
+
+
+ Initializes a new InternalTestFailureException.
+
+ The message.
+
+
+
+ Initializes a new InternalTestFailureException.
+
+ The message.
+ The inner exception.
+
+
+
+ Initializes a new InternalTestFailureException.
+
+
+
+
+ A collection of helper classes to test various conditions within
+ unit tests. If the condition being tested is not met, an exception
+ is thrown.
+
+
+
+
+
+
+
+
+
+ Tests whether the specified condition is true and throws an exception
+ if the condition is false.
+
+ The condition the test expects to be true.
+
+ Thrown if is false.
+
+
+
+
+ Tests whether the specified condition is true and throws an exception
+ if the condition is false.
+
+ The condition the test expects to be true.
+
+ The message to include in the exception when
+ is false. The message is shown in test results.
+
+
+ Thrown if is false.
+
+
+
+
+ Tests whether the specified condition is true and throws an exception
+ if the condition is false.
+
+ The condition the test expects to be true.
+
+ The message to include in the exception when
+ is false. The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is false.
+
+
+
+
+ Tests whether the specified condition is false and throws an exception
+ if the condition is true.
+
+ The condition the test expects to be false.
+
+ Thrown if is true.
+
+
+
+
+ Tests whether the specified condition is false and throws an exception
+ if the condition is true.
+
+ The condition the test expects to be false.
+
+ The message to include in the exception when
+ is true. The message is shown in test results.
+
+
+ Thrown if is true.
+
+
+
+
+ Tests whether the specified condition is false and throws an exception
+ if the condition is true.
+
+ The condition the test expects to be false.
+
+ The message to include in the exception when
+ is true. The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is true.
+
+
+
+
+ Tests whether the specified object is null and throws an exception
+ if it is not.
+
+ The object the test expects to be null.
+
+ Thrown if is not null.
+
+
+
+
+ Tests whether the specified object is null and throws an exception
+ if it is not.
+
+ The object the test expects to be null.
+
+ The message to include in the exception when
+ is not null. The message is shown in test results.
+
+
+ Thrown if is not null.
+
+
+
+
+ Tests whether the specified object is null and throws an exception
+ if it is not.
+
+ The object the test expects to be null.
+
+ The message to include in the exception when
+ is not null. The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not null.
+
+
+
+
+ Tests whether the specified object is non-null and throws an exception
+ if it is null.
+
+ The object the test expects not to be null.
+
+ Thrown if is null.
+
+
+
+
+ Tests whether the specified object is non-null and throws an exception
+ if it is null.
+
+ The object the test expects not to be null.
+
+ The message to include in the exception when
+ is null. The message is shown in test results.
+
+
+ Thrown if is null.
+
+
+
+
+ Tests whether the specified object is non-null and throws an exception
+ if it is null.
+
+ The object the test expects not to be null.
+
+ The message to include in the exception when
+ is null. The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is null.
+
+
+
+
+ Tests whether the specified objects both refer to the same object and
+ throws an exception if the two inputs do not refer to the same object.
+
+
+ The first object to compare. This is the value the test expects.
+
+
+ The second object to compare. This is the value produced by the code under test.
+
+
+ Thrown if does not refer to the same object
+ as .
+
+
+
+
+ Tests whether the specified objects both refer to the same object and
+ throws an exception if the two inputs do not refer to the same object.
+
+
+ The first object to compare. This is the value the test expects.
+
+
+ The second object to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is not the same as . The message is shown
+ in test results.
+
+
+ Thrown if does not refer to the same object
+ as .
+
+
+
+
+ Tests whether the specified objects both refer to the same object and
+ throws an exception if the two inputs do not refer to the same object.
+
+
+ The first object to compare. This is the value the test expects.
+
+
+ The second object to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is not the same as . The message is shown
+ in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if does not refer to the same object
+ as .
+
+
+
+
+ Tests whether the specified objects refer to different objects and
+ throws an exception if the two inputs refer to the same object.
+
+
+ The first object to compare. This is the value the test expects not
+ to match .
+
+
+ The second object to compare. This is the value produced by the code under test.
+
+
+ Thrown if refers to the same object
+ as .
+
+
+
+
+ Tests whether the specified objects refer to different objects and
+ throws an exception if the two inputs refer to the same object.
+
+
+ The first object to compare. This is the value the test expects not
+ to match .
+
+
+ The second object to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is the same as . The message is shown in
+ test results.
+
+
+ Thrown if refers to the same object
+ as .
+
+
+
+
+ Tests whether the specified objects refer to different objects and
+ throws an exception if the two inputs refer to the same object.
+
+
+ The first object to compare. This is the value the test expects not
+ to match .
+
+
+ The second object to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is the same as . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if refers to the same object
+ as .
+
+
+
+
+ Tests whether the specified values are equal and throws an exception
+ if the two values are not equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+ The type of values to compare.
+
+ The first value to compare. This is the value the tests expects.
+
+
+ The second value to compare. This is the value produced by the code under test.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified values are equal and throws an exception
+ if the two values are not equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+ The type of values to compare.
+
+ The first value to compare. This is the value the tests expects.
+
+
+ The second value to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified values are equal and throws an exception
+ if the two values are not equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+ The type of values to compare.
+
+ The first value to compare. This is the value the tests expects.
+
+
+ The second value to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified values are unequal and throws an exception
+ if the two values are equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+ The type of values to compare.
+
+ The first value to compare. This is the value the test expects not
+ to match .
+
+
+ The second value to compare. This is the value produced by the code under test.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified values are unequal and throws an exception
+ if the two values are equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+ The type of values to compare.
+
+ The first value to compare. This is the value the test expects not
+ to match .
+
+
+ The second value to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified values are unequal and throws an exception
+ if the two values are equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+ The type of values to compare.
+
+ The first value to compare. This is the value the test expects not
+ to match .
+
+
+ The second value to compare. This is the value produced by the code under test.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified objects are equal and throws an exception
+ if the two objects are not equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+
+ The first object to compare. This is the object the tests expects.
+
+
+ The second object to compare. This is the object produced by the code under test.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified objects are equal and throws an exception
+ if the two objects are not equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+
+ The first object to compare. This is the object the tests expects.
+
+
+ The second object to compare. This is the object produced by the code under test.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified objects are equal and throws an exception
+ if the two objects are not equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+
+ The first object to compare. This is the object the tests expects.
+
+
+ The second object to compare. This is the object produced by the code under test.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified objects are unequal and throws an exception
+ if the two objects are equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+
+ The first object to compare. This is the value the test expects not
+ to match .
+
+
+ The second object to compare. This is the object produced by the code under test.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified objects are unequal and throws an exception
+ if the two objects are equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+
+ The first object to compare. This is the value the test expects not
+ to match .
+
+
+ The second object to compare. This is the object produced by the code under test.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified objects are unequal and throws an exception
+ if the two objects are equal. Different numeric types are treated
+ as unequal even if the logical values are equal. 42L is not equal to 42.
+
+
+ The first object to compare. This is the value the test expects not
+ to match .
+
+
+ The second object to compare. This is the object produced by the code under test.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified floats are equal and throws an exception
+ if they are not equal.
+
+
+ The first float to compare. This is the float the tests expects.
+
+
+ The second float to compare. This is the float produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by more than .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified floats are equal and throws an exception
+ if they are not equal.
+
+
+ The first float to compare. This is the float the tests expects.
+
+
+ The second float to compare. This is the float produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by more than .
+
+
+ The message to include in the exception when
+ is different than by more than
+ . The message is shown in test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified floats are equal and throws an exception
+ if they are not equal.
+
+
+ The first float to compare. This is the float the tests expects.
+
+
+ The second float to compare. This is the float produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by more than .
+
+
+ The message to include in the exception when
+ is different than by more than
+ . The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified floats are unequal and throws an exception
+ if they are equal.
+
+
+ The first float to compare. This is the float the test expects not to
+ match .
+
+
+ The second float to compare. This is the float produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by at most .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified floats are unequal and throws an exception
+ if they are equal.
+
+
+ The first float to compare. This is the float the test expects not to
+ match .
+
+
+ The second float to compare. This is the float produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by at most .
+
+
+ The message to include in the exception when
+ is equal to or different by less than
+ . The message is shown in test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified floats are unequal and throws an exception
+ if they are equal.
+
+
+ The first float to compare. This is the float the test expects not to
+ match .
+
+
+ The second float to compare. This is the float produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by at most .
+
+
+ The message to include in the exception when
+ is equal to or different by less than
+ . The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified doubles are equal and throws an exception
+ if they are not equal.
+
+
+ The first double to compare. This is the double the tests expects.
+
+
+ The second double to compare. This is the double produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by more than .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified doubles are equal and throws an exception
+ if they are not equal.
+
+
+ The first double to compare. This is the double the tests expects.
+
+
+ The second double to compare. This is the double produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by more than .
+
+
+ The message to include in the exception when
+ is different than by more than
+ . The message is shown in test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified doubles are equal and throws an exception
+ if they are not equal.
+
+
+ The first double to compare. This is the double the tests expects.
+
+
+ The second double to compare. This is the double produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by more than .
+
+
+ The message to include in the exception when
+ is different than by more than
+ . The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified doubles are unequal and throws an exception
+ if they are equal.
+
+
+ The first double to compare. This is the double the test expects not to
+ match .
+
+
+ The second double to compare. This is the double produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by at most .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified doubles are unequal and throws an exception
+ if they are equal.
+
+
+ The first double to compare. This is the double the test expects not to
+ match .
+
+
+ The second double to compare. This is the double produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by at most .
+
+
+ The message to include in the exception when
+ is equal to or different by less than
+ . The message is shown in test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified doubles are unequal and throws an exception
+ if they are equal.
+
+
+ The first double to compare. This is the double the test expects not to
+ match .
+
+
+ The second double to compare. This is the double produced by the code under test.
+
+
+ The required accuracy. An exception will be thrown only if
+ is different than
+ by at most .
+
+
+ The message to include in the exception when
+ is equal to or different by less than
+ . The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified strings are equal and throws an exception
+ if they are not equal. The invariant culture is used for the comparison.
+
+
+ The first string to compare. This is the string the tests expects.
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified strings are equal and throws an exception
+ if they are not equal. The invariant culture is used for the comparison.
+
+
+ The first string to compare. This is the string the tests expects.
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified strings are equal and throws an exception
+ if they are not equal. The invariant culture is used for the comparison.
+
+
+ The first string to compare. This is the string the tests expects.
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified strings are equal and throws an exception
+ if they are not equal.
+
+
+ The first string to compare. This is the string the tests expects.
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ A CultureInfo object that supplies culture-specific comparison information.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified strings are equal and throws an exception
+ if they are not equal.
+
+
+ The first string to compare. This is the string the tests expects.
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ A CultureInfo object that supplies culture-specific comparison information.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified strings are equal and throws an exception
+ if they are not equal.
+
+
+ The first string to compare. This is the string the tests expects.
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ A CultureInfo object that supplies culture-specific comparison information.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified strings are unequal and throws an exception
+ if they are equal. The invariant culture is used for the comparison.
+
+
+ The first string to compare. This is the string the test expects not to
+ match .
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified strings are unequal and throws an exception
+ if they are equal. The invariant culture is used for the comparison.
+
+
+ The first string to compare. This is the string the test expects not to
+ match .
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified strings are unequal and throws an exception
+ if they are equal. The invariant culture is used for the comparison.
+
+
+ The first string to compare. This is the string the test expects not to
+ match .
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified strings are unequal and throws an exception
+ if they are equal.
+
+
+ The first string to compare. This is the string the test expects not to
+ match .
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ A CultureInfo object that supplies culture-specific comparison information.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified strings are unequal and throws an exception
+ if they are equal.
+
+
+ The first string to compare. This is the string the test expects not to
+ match .
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ A CultureInfo object that supplies culture-specific comparison information.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified strings are unequal and throws an exception
+ if they are equal.
+
+
+ The first string to compare. This is the string the test expects not to
+ match .
+
+
+ The second string to compare. This is the string produced by the code under test.
+
+
+ A Boolean indicating a case-sensitive or insensitive comparison. (true
+ indicates a case-insensitive comparison.)
+
+
+ A CultureInfo object that supplies culture-specific comparison information.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified object is an instance of the expected
+ type and throws an exception if the expected type is not in the
+ inheritance hierarchy of the object.
+
+
+ The object the test expects to be of the specified type.
+
+
+ The expected type of .
+
+
+ Thrown if is null or
+ is not in the inheritance hierarchy
+ of .
+
+
+
+
+ Tests whether the specified object is an instance of the expected
+ type and throws an exception if the expected type is not in the
+ inheritance hierarchy of the object.
+
+
+ The object the test expects to be of the specified type.
+
+
+ The expected type of .
+
+
+ The message to include in the exception when
+ is not an instance of . The message is
+ shown in test results.
+
+
+ Thrown if is null or
+ is not in the inheritance hierarchy
+ of .
+
+
+
+
+ Tests whether the specified object is an instance of the expected
+ type and throws an exception if the expected type is not in the
+ inheritance hierarchy of the object.
+
+
+ The object the test expects to be of the specified type.
+
+
+ The expected type of .
+
+
+ The message to include in the exception when
+ is not an instance of . The message is
+ shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is null or
+ is not in the inheritance hierarchy
+ of .
+
+
+
+
+ Tests whether the specified object is not an instance of the wrong
+ type and throws an exception if the specified type is in the
+ inheritance hierarchy of the object.
+
+
+ The object the test expects not to be of the specified type.
+
+
+ The type that should not be.
+
+
+ Thrown if is not null and
+ is in the inheritance hierarchy
+ of .
+
+
+
+
+ Tests whether the specified object is not an instance of the wrong
+ type and throws an exception if the specified type is in the
+ inheritance hierarchy of the object.
+
+
+ The object the test expects not to be of the specified type.
+
+
+ The type that should not be.
+
+
+ The message to include in the exception when
+ is an instance of . The message is shown
+ in test results.
+
+
+ Thrown if is not null and
+ is in the inheritance hierarchy
+ of .
+
+
+
+
+ Tests whether the specified object is not an instance of the wrong
+ type and throws an exception if the specified type is in the
+ inheritance hierarchy of the object.
+
+
+ The object the test expects not to be of the specified type.
+
+
+ The type that should not be.
+
+
+ The message to include in the exception when
+ is an instance of . The message is shown
+ in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not null and
+ is in the inheritance hierarchy
+ of .
+
+
+
+
+ Throws an AssertFailedException.
+
+
+ Always thrown.
+
+
+
+
+ Throws an AssertFailedException.
+
+
+ The message to include in the exception. The message is shown in
+ test results.
+
+
+ Always thrown.
+
+
+
+
+ Throws an AssertFailedException.
+
+
+ The message to include in the exception. The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Always thrown.
+
+
+
+
+ Throws an AssertInconclusiveException.
+
+
+ Always thrown.
+
+
+
+
+ Throws an AssertInconclusiveException.
+
+
+ The message to include in the exception. The message is shown in
+ test results.
+
+
+ Always thrown.
+
+
+
+
+ Throws an AssertInconclusiveException.
+
+
+ The message to include in the exception. The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Always thrown.
+
+
+
+
+ Helper function that creates and throws an AssertionFailedException.
+
+ name of the assertion throwing an exception.
+ message describing conditions for assertion failure.
+ The parameters.
+
+
+
+ Checks the parameter for valid conditions
+
+ The parameter.
+ The assertion name.
+ The parameter name.
+ The message.
+ The parameters.
+
+
+
+ Safely converts an object to a string, handling null values and null characters.
+ Null values are converted to "(null)". Null characters are converted to "\\0".
+
+ The object to convert to a string.
+ The converted string.
+
+
+
+ Replaces null characters ('\0') with "\\0".
+
+ The string to search.
+ The converted string with null characters replaced by "\\0".
+
+
+
+ An exception from reflection will always be a TargetInvocationException - however
+ the goal of Private Accessors is to be seamless to the original code.
+ The only problem with throwing the inner exception is that the stack trace will
+ be overwritten. From here we register the stack trace of the inner exception
+ and then throw it. The Unit Test Adapter will then later rebuild the stack
+ from the cached shadow information plus the remaining stack from this throw.
+
+
+
+
+
+ A collection of helper classes to test various conditions associated
+ with collections within unit tests. If the condition being tested is not
+ met, an exception is thrown.
+
+
+
+
+ Tests whether the specified collection contains the specified element
+ and throws an exception if the element is not in the collection.
+
+
+ The collection in which to search for the element.
+
+
+ The element that is expected to be in the collection.
+
+
+ Thrown if is not found in
+ .
+
+
+
+
+ Tests whether the specified collection contains the specified element
+ and throws an exception if the element is not in the collection.
+
+
+ The collection in which to search for the element.
+
+
+ The element that is expected to be in the collection.
+
+
+ The message to include in the exception when
+ is not in . The message is shown in
+ test results.
+
+
+ Thrown if is not found in
+ .
+
+
+
+
+ Tests whether the specified collection contains the specified element
+ and throws an exception if the element is not in the collection.
+
+
+ The collection in which to search for the element.
+
+
+ The element that is expected to be in the collection.
+
+
+ The message to include in the exception when
+ is not in . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not found in
+ .
+
+
+
+
+ Tests whether the specified collection does not contain the specified
+ element and throws an exception if the element is in the collection.
+
+
+ The collection in which to search for the element.
+
+
+ The element that is expected not to be in the collection.
+
+
+ Thrown if is found in
+ .
+
+
+
+
+ Tests whether the specified collection does not contain the specified
+ element and throws an exception if the element is in the collection.
+
+
+ The collection in which to search for the element.
+
+
+ The element that is expected not to be in the collection.
+
+
+ The message to include in the exception when
+ is in . The message is shown in test
+ results.
+
+
+ Thrown if is found in
+ .
+
+
+
+
+ Tests whether the specified collection does not contain the specified
+ element and throws an exception if the element is in the collection.
+
+
+ The collection in which to search for the element.
+
+
+ The element that is expected not to be in the collection.
+
+
+ The message to include in the exception when
+ is in . The message is shown in test
+ results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is found in
+ .
+
+
+
+
+ Tests whether all items in the specified collection are non-null and throws
+ an exception if any element is null.
+
+
+ The collection in which to search for null elements.
+
+
+ Thrown if a null element is found in .
+
+
+
+
+ Tests whether all items in the specified collection are non-null and throws
+ an exception if any element is null.
+
+
+ The collection in which to search for null elements.
+
+
+ The message to include in the exception when
+ contains a null element. The message is shown in test results.
+
+
+ Thrown if a null element is found in .
+
+
+
+
+ Tests whether all items in the specified collection are non-null and throws
+ an exception if any element is null.
+
+
+ The collection in which to search for null elements.
+
+
+ The message to include in the exception when
+ contains a null element. The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if a null element is found in .
+
+
+
+
+ Tests whether all items in the specified collection are unique or not and
+ throws if any two elements in the collection are equal.
+
+
+ The collection in which to search for duplicate elements.
+
+
+ Thrown if a two or more equal elements are found in
+ .
+
+
+
+
+ Tests whether all items in the specified collection are unique or not and
+ throws if any two elements in the collection are equal.
+
+
+ The collection in which to search for duplicate elements.
+
+
+ The message to include in the exception when
+ contains at least one duplicate element. The message is shown in
+ test results.
+
+
+ Thrown if a two or more equal elements are found in
+ .
+
+
+
+
+ Tests whether all items in the specified collection are unique or not and
+ throws if any two elements in the collection are equal.
+
+
+ The collection in which to search for duplicate elements.
+
+
+ The message to include in the exception when
+ contains at least one duplicate element. The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if a two or more equal elements are found in
+ .
+
+
+
+
+ Tests whether one collection is a subset of another collection and
+ throws an exception if any element in the subset is not also in the
+ superset.
+
+
+ The collection expected to be a subset of .
+
+
+ The collection expected to be a superset of
+
+
+ Thrown if an element in is not found in
+ .
+
+
+
+
+ Tests whether one collection is a subset of another collection and
+ throws an exception if any element in the subset is not also in the
+ superset.
+
+
+ The collection expected to be a subset of .
+
+
+ The collection expected to be a superset of
+
+
+ The message to include in the exception when an element in
+ is not found in .
+ The message is shown in test results.
+
+
+ Thrown if an element in is not found in
+ .
+
+
+
+
+ Tests whether one collection is a subset of another collection and
+ throws an exception if any element in the subset is not also in the
+ superset.
+
+
+ The collection expected to be a subset of .
+
+
+ The collection expected to be a superset of
+
+
+ The message to include in the exception when an element in
+ is not found in .
+ The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if an element in is not found in
+ .
+
+
+
+
+ Tests whether one collection is not a subset of another collection and
+ throws an exception if all elements in the subset are also in the
+ superset.
+
+
+ The collection expected not to be a subset of .
+
+
+ The collection expected not to be a superset of
+
+
+ Thrown if every element in is also found in
+ .
+
+
+
+
+ Tests whether one collection is not a subset of another collection and
+ throws an exception if all elements in the subset are also in the
+ superset.
+
+
+ The collection expected not to be a subset of .
+
+
+ The collection expected not to be a superset of
+
+
+ The message to include in the exception when every element in
+ is also found in .
+ The message is shown in test results.
+
+
+ Thrown if every element in is also found in
+ .
+
+
+
+
+ Tests whether one collection is not a subset of another collection and
+ throws an exception if all elements in the subset are also in the
+ superset.
+
+
+ The collection expected not to be a subset of .
+
+
+ The collection expected not to be a superset of
+
+
+ The message to include in the exception when every element in
+ is also found in .
+ The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if every element in is also found in
+ .
+
+
+
+
+ Tests whether two collections contain the same elements and throws an
+ exception if either collection contains an element not in the other
+ collection.
+
+
+ The first collection to compare. This contains the elements the test
+ expects.
+
+
+ The second collection to compare. This is the collection produced by
+ the code under test.
+
+
+ Thrown if an element was found in one of the collections but not
+ the other.
+
+
+
+
+ Tests whether two collections contain the same elements and throws an
+ exception if either collection contains an element not in the other
+ collection.
+
+
+ The first collection to compare. This contains the elements the test
+ expects.
+
+
+ The second collection to compare. This is the collection produced by
+ the code under test.
+
+
+ The message to include in the exception when an element was found
+ in one of the collections but not the other. The message is shown
+ in test results.
+
+
+ Thrown if an element was found in one of the collections but not
+ the other.
+
+
+
+
+ Tests whether two collections contain the same elements and throws an
+ exception if either collection contains an element not in the other
+ collection.
+
+
+ The first collection to compare. This contains the elements the test
+ expects.
+
+
+ The second collection to compare. This is the collection produced by
+ the code under test.
+
+
+ The message to include in the exception when an element was found
+ in one of the collections but not the other. The message is shown
+ in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if an element was found in one of the collections but not
+ the other.
+
+
+
+
+ Tests whether two collections contain the different elements and throws an
+ exception if the two collections contain identical elements without regard
+ to order.
+
+
+ The first collection to compare. This contains the elements the test
+ expects to be different than the actual collection.
+
+
+ The second collection to compare. This is the collection produced by
+ the code under test.
+
+
+ Thrown if the two collections contained the same elements, including
+ the same number of duplicate occurrences of each element.
+
+
+
+
+ Tests whether two collections contain the different elements and throws an
+ exception if the two collections contain identical elements without regard
+ to order.
+
+
+ The first collection to compare. This contains the elements the test
+ expects to be different than the actual collection.
+
+
+ The second collection to compare. This is the collection produced by
+ the code under test.
+
+
+ The message to include in the exception when
+ contains the same elements as . The message
+ is shown in test results.
+
+
+ Thrown if the two collections contained the same elements, including
+ the same number of duplicate occurrences of each element.
+
+
+
+
+ Tests whether two collections contain the different elements and throws an
+ exception if the two collections contain identical elements without regard
+ to order.
+
+
+ The first collection to compare. This contains the elements the test
+ expects to be different than the actual collection.
+
+
+ The second collection to compare. This is the collection produced by
+ the code under test.
+
+
+ The message to include in the exception when
+ contains the same elements as . The message
+ is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if the two collections contained the same elements, including
+ the same number of duplicate occurrences of each element.
+
+
+
+
+ Tests whether all elements in the specified collection are instances
+ of the expected type and throws an exception if the expected type is
+ not in the inheritance hierarchy of one or more of the elements.
+
+
+ The collection containing elements the test expects to be of the
+ specified type.
+
+
+ The expected type of each element of .
+
+
+ Thrown if an element in is null or
+ is not in the inheritance hierarchy
+ of an element in .
+
+
+
+
+ Tests whether all elements in the specified collection are instances
+ of the expected type and throws an exception if the expected type is
+ not in the inheritance hierarchy of one or more of the elements.
+
+
+ The collection containing elements the test expects to be of the
+ specified type.
+
+
+ The expected type of each element of .
+
+
+ The message to include in the exception when an element in
+ is not an instance of
+ . The message is shown in test results.
+
+
+ Thrown if an element in is null or
+ is not in the inheritance hierarchy
+ of an element in .
+
+
+
+
+ Tests whether all elements in the specified collection are instances
+ of the expected type and throws an exception if the expected type is
+ not in the inheritance hierarchy of one or more of the elements.
+
+
+ The collection containing elements the test expects to be of the
+ specified type.
+
+
+ The expected type of each element of .
+
+
+ The message to include in the exception when an element in
+ is not an instance of
+ . The message is shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if an element in is null or
+ is not in the inheritance hierarchy
+ of an element in .
+
+
+
+
+ Tests whether the specified collections are equal and throws an exception
+ if the two collections are not equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects.
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified collections are equal and throws an exception
+ if the two collections are not equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects.
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified collections are equal and throws an exception
+ if the two collections are not equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects.
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified collections are unequal and throws an exception
+ if the two collections are equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects
+ not to match .
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified collections are unequal and throws an exception
+ if the two collections are equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects
+ not to match .
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified collections are unequal and throws an exception
+ if the two collections are equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects
+ not to match .
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified collections are equal and throws an exception
+ if the two collections are not equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects.
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The compare implementation to use when comparing elements of the collection.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified collections are equal and throws an exception
+ if the two collections are not equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects.
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The compare implementation to use when comparing elements of the collection.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified collections are equal and throws an exception
+ if the two collections are not equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects.
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The compare implementation to use when comparing elements of the collection.
+
+
+ The message to include in the exception when
+ is not equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not equal to
+ .
+
+
+
+
+ Tests whether the specified collections are unequal and throws an exception
+ if the two collections are equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects
+ not to match .
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The compare implementation to use when comparing elements of the collection.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified collections are unequal and throws an exception
+ if the two collections are equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects
+ not to match .
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The compare implementation to use when comparing elements of the collection.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ Thrown if is equal to .
+
+
+
+
+ Tests whether the specified collections are unequal and throws an exception
+ if the two collections are equal. Equality is defined as having the same
+ elements in the same order and quantity. Different references to the same
+ value are considered equal.
+
+
+ The first collection to compare. This is the collection the tests expects
+ not to match .
+
+
+ The second collection to compare. This is the collection produced by the
+ code under test.
+
+
+ The compare implementation to use when comparing elements of the collection.
+
+
+ The message to include in the exception when
+ is equal to . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is equal to .
+
+
+
+
+ Constructs a dictionary containing the number of occurrences of each
+ element in the specified collection.
+
+
+ The collection to process.
+
+
+ The number of null elements in the collection.
+
+
+ A dictionary containing the number of occurrences of each element
+ in the specified collection.
+
+
+
+
+ Determines whether the first collection is a subset of the second
+ collection. If either set contains duplicate elements, the number
+ of occurrences of the element in the subset must be less than or
+ equal to the number of occurrences in the superset.
+
+
+ The collection the test expects to be contained in .
+
+
+ The collection the test expects to contain .
+
+
+ True if is a subset of
+ , false otherwise.
+
+
+
+
+ Finds a mismatched element between the two collections. A mismatched
+ element is one that appears a different number of times in the
+ expected collection than it does in the actual collection. The
+ collections are assumed to be different non-null references with the
+ same number of elements. The caller is responsible for this level of
+ verification. If there is no mismatched element, the function returns
+ false and the out parameters should not be used.
+
+ The first collection to compare.
+ The second collection to compare.
+
+ The expected number of occurrences of
+ or 0 if there is no mismatched
+ element.
+
+
+ The actual number of occurrences of
+ or 0 if there is no mismatched
+ element.
+
+
+ The mismatched element (may be null) or null if there is no
+ mismatched element.
+
+
+ true if a mismatched element was found; false otherwise.
+
+
+
+
+ compares the objects using object.Equals
+
+
+
+
+ This class is designed to help user doing unit testing.
+ GenericParameterHelper satisfies some comment generic type constraints
+ such as:
+ 1. public default constructor
+ 2. implements common interface: IComparable, IEnumerable, ICloneable
+
+
+
+
+
+ public default constructor, satisfies the constraint in C# generics.
+ This constructor initializes the Data property to a random value.
+
+
+
+
+ This constructor initializes the Data property to a user-supplied value
+
+
+
+
+
+ Do the value comparison for two GenericParameterHelper object
+
+ object to do comparison with
+ true if obj has the same value as 'this' GenericParameterHelper object.
+ false otherwise.
+
+
+
+ Returns a hash code for this object.
+
+
+
+
+
+ Compares to the object.
+
+
+
+
+
+
+ Returns an IEnumerator object whose length is derived from
+ the Data property.
+
+
+
+
+
+ Returns a GenericParameterHelper object that is equal to
+ 'this' one.
+
+
+
+
+
+ Gets or sets the Data property.
+
+
+
+
+ Provides method signature discovery for generic methods.
+
+
+
+
+ Given a set of methods that match the base criteria, select a method based
+ upon an array of types. This method should return null if no method matches
+ the criteria.
+
+
+
+
+ Set of string assertions.
+
+
+
+
+ Tests whether the specified string contains the specified substring
+ and throws an exception if the substring does not occur within the
+ test string.
+
+
+ The string that is expected to contain .
+
+
+ The string expected to occur within .
+
+
+ Thrown if is not found in
+ .
+
+
+
+
+ Tests whether the specified string contains the specified substring
+ and throws an exception if the substring does not occur within the
+ test string.
+
+
+ The string that is expected to contain .
+
+
+ The string expected to occur within .
+
+
+ The message to include in the exception when
+ is not in . The message is shown in
+ test results.
+
+
+ Thrown if is not found in
+ .
+
+
+
+
+ Tests whether the specified string contains the specified substring
+ and throws an exception if the substring does not occur within the
+ test string.
+
+
+ The string that is expected to contain .
+
+
+ The string expected to occur within .
+
+
+ The message to include in the exception when
+ is not in . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if is not found in
+ .
+
+
+
+
+ Tests whether the specified string begins with the specified substring
+ and throws an exception if the test string does not start with the
+ substring.
+
+
+ The string that is expected to begin with .
+
+
+ The string expected to be a prefix of .
+
+
+ Thrown if does not begin with
+ .
+
+
+
+
+ Tests whether the specified string begins with the specified substring
+ and throws an exception if the test string does not start with the
+ substring.
+
+
+ The string that is expected to begin with .
+
+
+ The string expected to be a prefix of .
+
+
+ The message to include in the exception when
+ does not begin with . The message is
+ shown in test results.
+
+
+ Thrown if does not begin with
+ .
+
+
+
+
+ Tests whether the specified string begins with the specified substring
+ and throws an exception if the test string does not start with the
+ substring.
+
+
+ The string that is expected to begin with .
+
+
+ The string expected to be a prefix of .
+
+
+ The message to include in the exception when
+ does not begin with . The message is
+ shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if does not begin with
+ .
+
+
+
+
+ Tests whether the specified string ends with the specified substring
+ and throws an exception if the test string does not end with the
+ substring.
+
+
+ The string that is expected to end with .
+
+
+ The string expected to be a suffix of .
+
+
+ Thrown if does not end with
+ .
+
+
+
+
+ Tests whether the specified string ends with the specified substring
+ and throws an exception if the test string does not end with the
+ substring.
+
+
+ The string that is expected to end with .
+
+
+ The string expected to be a suffix of .
+
+
+ The message to include in the exception when
+ does not end with . The message is
+ shown in test results.
+
+
+ Thrown if does not end with
+ .
+
+
+
+
+ Tests whether the specified string ends with the specified substring
+ and throws an exception if the test string does not end with the
+ substring.
+
+
+ The string that is expected to end with .
+
+
+ The string expected to be a suffix of .
+
+
+ The message to include in the exception when
+ does not end with . The message is
+ shown in test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if does not end with
+ .
+
+
+
+
+ Tests whether the specified string matches a regular expression and
+ throws an exception if the string does not match the expression.
+
+
+ The string that is expected to match .
+
+
+ The regular expression that is
+ expected to match.
+
+
+ Thrown if does not match
+ .
+
+
+
+
+ Tests whether the specified string matches a regular expression and
+ throws an exception if the string does not match the expression.
+
+
+ The string that is expected to match .
+
+
+ The regular expression that is
+ expected to match.
+
+
+ The message to include in the exception when
+ does not match . The message is shown in
+ test results.
+
+
+ Thrown if does not match
+ .
+
+
+
+
+ Tests whether the specified string matches a regular expression and
+ throws an exception if the string does not match the expression.
+
+
+ The string that is expected to match .
+
+
+ The regular expression that is
+ expected to match.
+
+
+ The message to include in the exception when
+ does not match . The message is shown in
+ test results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if does not match
+ .
+
+
+
+
+ Tests whether the specified string does not match a regular expression
+ and throws an exception if the string matches the expression.
+
+
+ The string that is expected not to match .
+
+
+ The regular expression that is
+ expected to not match.
+
+
+ Thrown if matches .
+
+
+
+
+ Tests whether the specified string does not match a regular expression
+ and throws an exception if the string matches the expression.
+
+
+ The string that is expected not to match .
+
+
+ The regular expression that is
+ expected to not match.
+
+
+ The message to include in the exception when
+ matches . The message is shown in test
+ results.
+
+
+ Thrown if matches .
+
+
+
+
+ Tests whether the specified string does not match a regular expression
+ and throws an exception if the string matches the expression.
+
+
+ The string that is expected not to match .
+
+
+ The regular expression that is
+ expected to not match.
+
+
+ The message to include in the exception when
+ matches . The message is shown in test
+ results.
+
+
+ An array of parameters to use when formatting .
+
+
+ Thrown if matches .
+
+
+
+
+ TestContext class. This class should be fully abstract and not contain any
+ members. The adapter will implement the members. Users in the framework should
+ only access this via a well-defined interface.
+
+
+
+
+ Used to write trace messages while the test is running
+
+ format string
+ the arguments
+
+
+
+ Adds a file name to the list in TestResult.ResultFileNames
+
+
+
+
+ Begins a timer with the specified name
+
+
+
+
+ Ends a timer with the specified name
+
+
+
+
+ Per test properties
+
+
+
+
+
+ Current data row when test is used for data driven testing.
+
+
+
+
+ Current data connection row when test is used for data driven testing.
+
+
+
+
+ Gets the test logs directory.
+
+
+
+
+ Gets the test directory.
+
+
+
+
+ Gets the test deployment directory.
+
+
+
+
+ Gets the test name.
+
+
+
+
+ Gets the CurrentTestOutcome.
+
+
+
+
+ Outcome of a test or a run.
+ If a new successful state needs to be added you will need to modify
+ RunResultAndStatistics in TestRun and TestOutcomeHelper below.
+
+ NOTE: the order is important and is used for computing outcome for aggregations.
+ More important outcomes come first. See TestOutcomeHelper.GetAggregationOutcome.
+
+
+
+
+ Test was executed, but there were issues.
+ Issues may involve exceptions or failed assertions.
+
+
+
+
+ Test has completed, but we can't say if it passed or failed.
+ May be used for aborted tests...
+
+
+
+
+ Test was executed w/o any issues.
+
+
+
+
+ Test is currently executing.
+
+
+
+
+ There was a system error while we were trying to execute a test.
+
+
+
+
+ The test timed out.
+
+
+
+
+ Test was aborted by the user.
+
+
+
+
+ Test is in an unknown state
+
+
+
+
+ The data row.
+
+
+
+
+ The database connection.
+
+
+
+
+ Marks a test class.
+
+
+
+
+ Initializes a new test class attribute.
+
+
+
+
+ Marks a test method.
+
+
+
+
+ Initializes a new TestMethodAttribute.
+
+
+
+
+ A method marker called before a test method runs.
+
+
+
+
+ Initializes a new TestInitializeAttribute.
+
+
+
+
+ A method marker called after a test method runs.
+
+
+
+
+ Initializes a new TestCleanupAttribute.
+
+
+
+
+ Ignores a unit test.
+
+
+
+
+ Initializes a new IgnoreAttribute.
+
+
+
+
+ The ExpectedExceptionAttribute.
+
+
+
+
+ Initializes the ExpectedExceptionAttribute.
+
+ The exception type.
+
+
+
+ Initializes the ExpectedExceptionAttribute.
+
+ The exception type.
+ The message.
+
+
+
+ Gets the exception type.
+
+
+
+
+ Gets the message.
+
+
+
+
+ The test property attribute.
+
+
+
+
+ Initializes the TestPropertyAttribute.
+
+
+
+
+
+
+ Gets the name.
+
+
+
+
+ Gets the value.
+
+
+
+
+ The ClassInitializeAttribute.
+
+
+
+
+ Initializes the ClassInitializeAttribute.
+
+
+
+
+ The ClassCleanupAttribute.
+
+
+
+
+ Initializes the ClassCleanupAttribute.
+
+
+
+
+ The AssemblyInitializeAttribute.
+
+
+
+
+ Initializes the AssemblyInitializeAttribute.
+
+
+
+
+ The AssemblyCleanupAttribute.
+
+
+
+
+ Initializes the AssemblyCleanupAttribute.
+
+
+
+
+ Description of the test.
+
+
+
+
+ Initializes the DescriptionAttribute.
+
+ The description.
+
+
+
+ Gets the description.
+
+
+
+
+ The OwnerAttribute.
+
+
+
+
+ Initializes the OwnerAttribute.
+
+ The owner.
+
+
+
+ Gets the owner.
+
+
+
+
+ CSS Project Structure URI.
+
+
+
+
+ Initializes the CSS Project Structure URI.
+
+ The structure.
+
+
+
+ Gets the property structure.
+
+
+
+
+ CSS Iteration URI
+
+
+
+
+ Initializes the CssIterationAttribute.
+
+ The parameter.
+
+
+
+ Gets the CssIteration.
+
+
+
+
+ Priority attribute; used to specify the priority of a unit test.
+
+
+
+
+ Initializes the PriorityAttribute.
+
+ The priority.
+
+
+
+ Gets the Priority.
+
+
+
+
+ Timeout attribute; used to specify the timeout of a unit test.
+
+
+
+
+ Initializes the TimeoutAttribute.
+
+
+
+
+
+ Gets the Timeout.
+
+
+
+
+ WorkItem attribute; used to specify a work item associated with this test.
+
+
+
+
+ Initializes the WorkItemAttribute.
+
+
+
+
+
+ Gets the ID.
+
+
+
+
+ HostType specifies the type of host that this unit test will
+ run in.
+
+
+
+
+ Initializes the host type attribute.
+
+
+
+
+
+ Constructor of HostTypeAttribute.
+
+ The type of the host.
+ Custom data for the host adapter.
+
+
+ The reason this is string (and not object) is that currently CMI cannot parse arbitrary instances of object and we deprioritized changing CMI.
+
+
+
+ Gets the host type.
+
+
+
+
+ Gets the host data.
+
+
+
+
+ Used to specify deployment item (file or directory) for per-test deployment.
+ Can be specified on test class or test method.
+ Can have multiple instances of the attribute to specify more than one item.
+ The item path can be absolute or relative, if relative, it is relative to RunConfig.RelativePathRoot.
+
+
+ [DeploymentItem("file1.xml")]
+ [DeploymentItem("file2.xml", "DataFiles")]
+ [DeploymentItem("bin\Debug")]
+
+
+
+
+ Initializes DeploymentItemAttribute.
+
+ The path.
+
+
+
+ Initializes DeploymentItemAttribute.
+
+ The path.
+ The output directory.
+
+
+
+ Verifiable interface.
+
+
+
+
+ The IsValid method.
+
+ Returns a value.
+
+
+
diff --git a/lib/NUnit 2.2.8.0/NUnitTests.nunit b/lib/NUnit 2.2.8.0/NUnitTests.nunit
deleted file mode 100644
index cde7d0005c..0000000000
--- a/lib/NUnit 2.2.8.0/NUnitTests.nunit
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/lib/NUnit 2.2.8.0/TestResult.xml b/lib/NUnit 2.2.8.0/TestResult.xml
deleted file mode 100644
index fbce2d972c..0000000000
--- a/lib/NUnit 2.2.8.0/TestResult.xml
+++ /dev/null
@@ -1,1301 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/lib/NUnit 2.2.8.0/clr.bat b/lib/NUnit 2.2.8.0/clr.bat
deleted file mode 100644
index 0a838482ca..0000000000
--- a/lib/NUnit 2.2.8.0/clr.bat
+++ /dev/null
@@ -1,96 +0,0 @@
-@echo off
-rem Run a program under a particular version of the .Net framework
-rem by setting the COMPLUS_Version environment variable.
-rem
-rem This command was written by Charlie Poole for the NUnit project.
-rem You may use it separately from NUnit at your own risk.
-
-if "%1"=="/?" goto help
-if "%1"=="?" goto help
-if "%1"=="" goto GetVersion
-if /I "%1"=="off" goto RemoveVersion
-if "%2"=="" goto SetVersion
-goto main
-
-:help
-echo Control the version of the .Net framework that is used. The
-echo command has several forms:
-echo.
-echo CLR
-echo Reports the version of the CLR that has been set
-echo.
-echo CLR version
-echo Sets the local shell environment to use a specific
-echo version of the CLR for subsequent commands.
-echo.
-echo CLR version command [arguments]
-echo Executes a single command using the specified CLR version.
-echo.
-echo CLR off
-echo Turns off specific version selection for commands
-echo.
-echo The CLR version may be specified as vn.n.n or n.n.n. In addition,
-echo the following shortcuts are recognized:
-echo net-1.0, 1.0 For version 1.0.3705
-echo net-1.1, 1.1 For version 1.1.4322
-echo beta2 For version 2.0.50215
-echo net-2.0, 2.0 For version 2.0.50727
-echo.
-echo NOTE:
-echo Any specific settings for required or supported runtime in
-echo the ^ section of a program's config file will
-echo override the version specified by this command, and the
-echo command will have no effect.
-echo.
-goto done
-
-:main
-
-setlocal
-set CMD=
-call :SetVersion %1
-shift /1
-
-:loop 'Copy remaining arguments to form the command
-if "%1"=="" goto run
-set CMD=%CMD% %1
-shift /1
-goto :loop
-
-:run 'Execute the command
-%CMD%
-endlocal
-goto done
-
-:SetVersion
-set COMPLUS_Version=%1
-
-rem Substitute proper format for certain names
-if /I "%COMPLUS_Version:~0,1%"=="v" goto useit
-if /I "%COMPLUS_Version%"=="net-1.0" set COMPLUS_Version=v1.0.3705&goto report
-if /I "%COMPLUS_Version%"=="1.0" set COMPLUS_Version=v1.0.3705&goto report
-if /I "%COMPLUS_Version%"=="net-1.1" set COMPLUS_Version=v1.1.4322&goto report
-if /I "%COMPLUS_Version%"=="1.1" set COMPLUS_Version=v1.1.4322&goto report
-if /I "%COMPLUS_Version%"=="beta2" set COMPLUS_Version=v2.0.50215&goto report
-if /I "%COMPLUS_Version%"=="net-2.0" set COMPLUS_Version=v2.0.50727&goto report
-if /I "%COMPLUS_Version%"=="2.0" set COMPLUS_Version=v2.0.50727&goto report
-
-rem Add additional substitutions here, branching to report
-
-rem assume it's a version number without 'v'
-set COMPLUS_Version=v%COMPLUS_Version%
-
-:report
-echo Setting CLR version to %COMPLUS_Version%
-goto done
-
-:GetVersion
-if "%COMPLUS_Version%"=="" echo CLR version is not set
-if NOT "%COMPLUS_Version%"=="" echo CLR version is set to %COMPLUS_Version%
-goto done
-
-:RemoveVersion
-set COMPLUS_Version=
-echo CLR version is no longer set
-
-:done
\ No newline at end of file
diff --git a/lib/NUnit 2.2.8.0/mock-assembly.dll b/lib/NUnit 2.2.8.0/mock-assembly.dll
deleted file mode 100644
index 574010aeef..0000000000
Binary files a/lib/NUnit 2.2.8.0/mock-assembly.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nonamespace-assembly.dll b/lib/NUnit 2.2.8.0/nonamespace-assembly.dll
deleted file mode 100644
index 19a45ea347..0000000000
Binary files a/lib/NUnit 2.2.8.0/nonamespace-assembly.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/notestfixtures-assembly.dll b/lib/NUnit 2.2.8.0/notestfixtures-assembly.dll
deleted file mode 100644
index e1b467e9ea..0000000000
Binary files a/lib/NUnit 2.2.8.0/notestfixtures-assembly.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-console-runner.dll b/lib/NUnit 2.2.8.0/nunit-console-runner.dll
deleted file mode 100644
index 6a6b5e2eb8..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-console-runner.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-console.exe b/lib/NUnit 2.2.8.0/nunit-console.exe
deleted file mode 100644
index 24fda7e4b5..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-console.exe and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-console.tests.dll b/lib/NUnit 2.2.8.0/nunit-console.tests.dll
deleted file mode 100644
index 361ddb0fb2..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-console.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-gui-runner.dll b/lib/NUnit 2.2.8.0/nunit-gui-runner.dll
deleted file mode 100644
index a6e1692d96..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-gui-runner.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-gui.exe b/lib/NUnit 2.2.8.0/nunit-gui.exe
deleted file mode 100644
index 258f093c4c..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-gui.exe and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-gui.exe.config b/lib/NUnit 2.2.8.0/nunit-gui.exe.config
deleted file mode 100644
index 3035c12e2c..0000000000
--- a/lib/NUnit 2.2.8.0/nunit-gui.exe.config
+++ /dev/null
@@ -1,109 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/lib/NUnit 2.2.8.0/nunit-gui.tests.dll b/lib/NUnit 2.2.8.0/nunit-gui.tests.dll
deleted file mode 100644
index 039bcf964a..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-gui.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-server.exe b/lib/NUnit 2.2.8.0/nunit-server.exe
deleted file mode 100644
index e3d2c8ee55..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-server.exe and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-server.tests.dll b/lib/NUnit 2.2.8.0/nunit-server.tests.dll
deleted file mode 100644
index 346563256b..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-server.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit-test-server.dll b/lib/NUnit 2.2.8.0/nunit-test-server.dll
deleted file mode 100644
index 40c265a240..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit-test-server.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.core.dll b/lib/NUnit 2.2.8.0/nunit.core.dll
deleted file mode 100644
index a11e62341e..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.core.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.core.extensions.dll b/lib/NUnit 2.2.8.0/nunit.core.extensions.dll
deleted file mode 100644
index d37d58eec3..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.core.extensions.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.extensions.tests.dll b/lib/NUnit 2.2.8.0/nunit.extensions.tests.dll
deleted file mode 100644
index 9dedfabb86..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.extensions.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.framework.dll b/lib/NUnit 2.2.8.0/nunit.framework.dll
deleted file mode 100644
index 44704bd5ea..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.framework.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.framework.tests.dll b/lib/NUnit 2.2.8.0/nunit.framework.tests.dll
deleted file mode 100644
index 28b168ad44..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.framework.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.mocks.dll b/lib/NUnit 2.2.8.0/nunit.mocks.dll
deleted file mode 100644
index 99c4282a09..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.mocks.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.mocks.tests.dll b/lib/NUnit 2.2.8.0/nunit.mocks.tests.dll
deleted file mode 100644
index 84bd3ed444..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.mocks.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.uikit.dll b/lib/NUnit 2.2.8.0/nunit.uikit.dll
deleted file mode 100644
index 32673ccc74..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.uikit.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.uikit.tests.dll b/lib/NUnit 2.2.8.0/nunit.uikit.tests.dll
deleted file mode 100644
index 40e6ddfc47..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.uikit.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.util.dll b/lib/NUnit 2.2.8.0/nunit.util.dll
deleted file mode 100644
index 8fff811dfd..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.util.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/nunit.util.tests.dll b/lib/NUnit 2.2.8.0/nunit.util.tests.dll
deleted file mode 100644
index 57efc06e22..0000000000
Binary files a/lib/NUnit 2.2.8.0/nunit.util.tests.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/test-utilities.dll b/lib/NUnit 2.2.8.0/test-utilities.dll
deleted file mode 100644
index 24a0f5d1c6..0000000000
Binary files a/lib/NUnit 2.2.8.0/test-utilities.dll and /dev/null differ
diff --git a/lib/NUnit 2.2.8.0/timing-tests.dll b/lib/NUnit 2.2.8.0/timing-tests.dll
deleted file mode 100644
index 45930da35e..0000000000
Binary files a/lib/NUnit 2.2.8.0/timing-tests.dll and /dev/null differ
diff --git a/lib/NUnit-config/Microsoft.VisualStudio.TestTools.cs b/lib/NUnit-config/Microsoft.VisualStudio.TestTools.cs
new file mode 100644
index 0000000000..d526c48930
--- /dev/null
+++ b/lib/NUnit-config/Microsoft.VisualStudio.TestTools.cs
@@ -0,0 +1,53 @@
+
+using System;
+
+namespace Microsoft.VisualStudio.TestTools.UnitTesting
+{
+ [AttributeUsage(AttributeTargets.Class, Inherited = true, AllowMultiple = false)]
+ public sealed class TestClassAttribute : NUnit.Framework.TestFixtureAttribute
+ {
+ }
+
+ [AttributeUsage(AttributeTargets.Method, Inherited = true, AllowMultiple = false)]
+ public sealed class TestMethodAttribute : NUnit.Framework.TestAttribute
+ {
+ }
+
+ [AttributeUsage(AttributeTargets.Method, Inherited = true, AllowMultiple = false)]
+ public sealed class TestInitializeAttribute : NUnit.Framework.SetUpAttribute
+ {
+ }
+
+ [AttributeUsage(AttributeTargets.Method, Inherited = true, AllowMultiple = false)]
+ public sealed class IgnoreAttribute : NUnit.Framework.IgnoreAttribute
+ {
+ }
+
+ [AttributeUsage(AttributeTargets.Method, Inherited = true, AllowMultiple = false)]
+ public sealed class ExpectedExceptionAttribute : NUnit.Framework.ExpectedExceptionAttribute
+ {
+ public ExpectedExceptionAttribute(Type type) : base(type)
+ { }
+ }
+
+ public class Assert : NUnit.Framework.Assert
+ {
+ [Obsolete("Do not use AreEqual on Byte[], use TestUtil.AssertBytesEqual(,)")]
+ public static void AreEqual(byte[] b1, byte[] b2)
+ {
+ NUnit.Framework.Assert.AreEqual(b1, b2);
+ }
+
+ [Obsolete("No not use assert with miss-matched types.")]
+ public static new void AreEqual(object b1, object b2)
+ {
+ NUnit.Framework.Assert.AreEqual(b1, b2);
+ }
+
+ //Allowed if the types match
+ public static void AreEqual(T b1, T b2)
+ {
+ NUnit.Framework.Assert.AreEqual(b1, b2);
+ }
+ }
+}
\ No newline at end of file
diff --git a/lib/NUnit-config/nunit-console.v2.0.config b/lib/NUnit-config/nunit-console.v2.0.config
new file mode 100644
index 0000000000..30453c9b85
--- /dev/null
+++ b/lib/NUnit-config/nunit-console.v2.0.config
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit-config/nunit-console.v3.5.config b/lib/NUnit-config/nunit-console.v3.5.config
new file mode 100644
index 0000000000..30453c9b85
--- /dev/null
+++ b/lib/NUnit-config/nunit-console.v3.5.config
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit-config/nunit-console.v4.0.config b/lib/NUnit-config/nunit-console.v4.0.config
new file mode 100644
index 0000000000..08ee954714
--- /dev/null
+++ b/lib/NUnit-config/nunit-console.v4.0.config
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/Logo.ico b/lib/NUnit/Logo.ico
new file mode 100644
index 0000000000..13c4ff9d5b
Binary files /dev/null and b/lib/NUnit/Logo.ico differ
diff --git a/lib/NUnit/NUnit.nupkg b/lib/NUnit/NUnit.nupkg
new file mode 100644
index 0000000000..7e9a7773f5
Binary files /dev/null and b/lib/NUnit/NUnit.nupkg differ
diff --git a/lib/NUnit/NUnitFitTests.html b/lib/NUnit/NUnitFitTests.html
new file mode 100644
index 0000000000..b7eb5c9117
--- /dev/null
+++ b/lib/NUnit/NUnitFitTests.html
@@ -0,0 +1,277 @@
+
+
+
+
NUnit Acceptance Tests
+
+ Developers love self-referential programs! Hence, NUnit has always run all it's
+ own tests, even those that are not really unit tests.
+
Now, beginning with NUnit 2.4, NUnit has top-level tests using Ward Cunningham's
+ FIT framework. At this time, the tests are pretty rudimentary, but it's a start
+ and it's a framework for doing more.
+
Running the Tests
+
Open a console or shell window and navigate to the NUnit bin directory, which
+ contains this file. To run the test under Microsoft .Net, enter the command
+
+ Note the space and dot at the end of each command. The results of your test
+ will be in TestResults.html in the same directory.
+
Platform and CLR Version
+
+
+
NUnit.Fixtures.PlatformInfo
+
+
+
Verify Unit Tests
+
+ Load and run the NUnit unit tests, verifying that the results are as expected.
+ When these tests are run on different platforms, different numbers of tests may
+ be skipped, so the values for Skipped and Run tests are informational only.
+
+ The number of tests in each assembly should be constant across all platforms -
+ any discrepancy usually means that one of the test source files was not
+ compiled on the platform. There should be no failures and no tests ignored.
+
Note:
+ At the moment, the nunit.extensions.tests assembly is failing because the
+ fixture doesn't initialize addins in the test domain.
+
+
+
+
NUnit.Fixtures.AssemblyRunner
+
+
+
Assembly
+
Tests()
+
Run()
+
Skipped()
+
Ignored()
+
Failures()
+
+
+
nunit.framework.tests.dll
+
397
+
+
+
0
+
0
+
+
+
nunit.core.tests.dll
+
355
+
+
+
0
+
0
+
+
+
nunit.util.tests.dll
+
238
+
+
+
0
+
0
+
+
+
nunit.mocks.tests.dll
+
43
+
+
+
0
+
0
+
+
+
nunit.extensions.tests.dll
+
5
+
+
+
0
+
0
+
+
+
nunit-console.tests.dll
+
40
+
+
+
0
+
0
+
+
+
nunit.uikit.tests.dll
+
34
+
+
+
0
+
0
+
+
+
nunit-gui.tests.dll
+
15
+
+
+
0
+
0
+
+
+
nunit.fixtures.tests.dll
+
6
+
+
+
0
+
0
+
+
+
Code Snippet Tests
+
+ These tests create a test assembly from a snippet of code and then load and run
+ the tests that it contains, verifying that the structure of the loaded tests is
+ as expected and that the number of tests run, skipped, ignored or failed is
+ correct.
+
+
+
+
NUnit.Fixtures.SnippetRunner
+
+
+
Code
+
Tree()
+
Run()
+
Skipped()
+
Ignored()
+
Failures()
+
+
+
public class TestClass
+{
+}
+
+
EMPTY
+
0
+
0
+
0
+
0
+
+
+
using NUnit.Framework;
+
+[TestFixture]
+public class TestClass
+{
+}
+
+
TestClass
+
0
+
0
+
0
+
0
+
+
+
using NUnit.Framework;
+
+[TestFixture]
+public class TestClass
+{
+ [Test]
+ public void T1() { }
+ [Test]
+ public void T2() { }
+ [Test]
+ public void T3() { }
+}
+
+
TestClass
+>T1
+>T2
+>T3
+
+
3
+
0
+
0
+
0
+
+
+
using NUnit.Framework;
+
+[TestFixture]
+public class TestClass1
+{
+ [Test]
+ public void T1() { }
+}
+
+[TestFixture]
+public class TestClass2
+{
+ [Test]
+ public void T2() { }
+ [Test]
+ public void T3() { }
+}
+
+
TestClass1
+>T1
+TestClass2
+>T2
+>T3
+
+
3
+
0
+
0
+
0
+
+
+
using NUnit.Framework;
+
+[TestFixture]
+public class TestClass
+{
+ [Test]
+ public void T1() { }
+ [Test, Ignore]
+ public void T2() { }
+ [Test]
+ public void T3() { }
+}
+
+
TestClass
+>T1
+>T2
+>T3
+
+
2
+
0
+
1
+
0
+
+
+
using NUnit.Framework;
+
+[TestFixture]
+public class TestClass
+{
+ [Test]
+ public void T1() { }
+ [Test, Explicit]
+ public void T2() { }
+ [Test]
+ public void T3() { }
+}
+
+
TestClass
+>T1
+>T2
+>T3
+
+
2
+
1
+
0
+
0
+
+
+
Summary Information
+
+
+
fit.Summary
+
+
+
+
diff --git a/lib/NUnit/fit-license.txt b/lib/NUnit/fit-license.txt
new file mode 100644
index 0000000000..af375329e9
--- /dev/null
+++ b/lib/NUnit/fit-license.txt
@@ -0,0 +1,342 @@
+
+
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ , 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
\ No newline at end of file
diff --git a/lib/NUnit/lib/nunit.framework.dll b/lib/NUnit/lib/nunit.framework.dll
new file mode 100644
index 0000000000..6856e51ef0
Binary files /dev/null and b/lib/NUnit/lib/nunit.framework.dll differ
diff --git a/lib/NUnit/lib/nunit.framework.xml b/lib/NUnit/lib/nunit.framework.xml
new file mode 100644
index 0000000000..c98e5adcc5
--- /dev/null
+++ b/lib/NUnit/lib/nunit.framework.xml
@@ -0,0 +1,10407 @@
+
+
+
+ nunit.framework
+
+
+
+
+ Attribute used to apply a category to a test
+
+
+
+
+ The name of the category
+
+
+
+
+ Construct attribute for a given category based on
+ a name. The name may not contain the characters ',',
+ '+', '-' or '!'. However, this is not checked in the
+ constructor since it would cause an error to arise at
+ as the test was loaded without giving a clear indication
+ of where the problem is located. The error is handled
+ in NUnitFramework.cs by marking the test as not
+ runnable.
+
+ The name of the category
+
+
+
+ Protected constructor uses the Type name as the name
+ of the category.
+
+
+
+
+ The name of the category
+
+
+
+
+ Used to mark a field for use as a datapoint when executing a theory
+ within the same fixture that requires an argument of the field's Type.
+
+
+
+
+ Used to mark an array as containing a set of datapoints to be used
+ executing a theory within the same fixture that requires an argument
+ of the Type of the array elements.
+
+
+
+
+ Attribute used to provide descriptive text about a
+ test case or fixture.
+
+
+
+
+ Construct the attribute
+
+ Text describing the test
+
+
+
+ Gets the test description
+
+
+
+
+ Enumeration indicating how the expected message parameter is to be used
+
+
+
+ Expect an exact match
+
+
+ Expect a message containing the parameter string
+
+
+ Match the regular expression provided as a parameter
+
+
+ Expect a message that starts with the parameter string
+
+
+
+ ExpectedExceptionAttribute
+
+
+
+
+
+ Constructor for a non-specific exception
+
+
+
+
+ Constructor for a given type of exception
+
+ The type of the expected exception
+
+
+
+ Constructor for a given exception name
+
+ The full name of the expected exception
+
+
+
+ Gets or sets the expected exception type
+
+
+
+
+ Gets or sets the full Type name of the expected exception
+
+
+
+
+ Gets or sets the expected message text
+
+
+
+
+ Gets or sets the user message displayed in case of failure
+
+
+
+
+ Gets or sets the type of match to be performed on the expected message
+
+
+
+
+ Gets the name of a method to be used as an exception handler
+
+
+
+
+ ExplicitAttribute marks a test or test fixture so that it will
+ only be run if explicitly executed from the gui or command line
+ or if it is included by use of a filter. The test will not be
+ run simply because an enclosing suite is run.
+
+
+
+
+ Default constructor
+
+
+
+
+ Constructor with a reason
+
+ The reason test is marked explicit
+
+
+
+ The reason test is marked explicit
+
+
+
+
+ Attribute used to mark a test that is to be ignored.
+ Ignored tests result in a warning message when the
+ tests are run.
+
+
+
+
+ Constructs the attribute without giving a reason
+ for ignoring the test.
+
+
+
+
+ Constructs the attribute giving a reason for ignoring the test
+
+ The reason for ignoring the test
+
+
+
+ The reason for ignoring a test
+
+
+
+
+ Abstract base for Attributes that are used to include tests
+ in the test run based on environmental settings.
+
+
+
+
+ Constructor with no included items specified, for use
+ with named property syntax.
+
+
+
+
+ Constructor taking one or more included items
+
+ Comma-delimited list of included items
+
+
+
+ Name of the item that is needed in order for
+ a test to run. Multiple itemss may be given,
+ separated by a comma.
+
+
+
+
+ Name of the item to be excluded. Multiple items
+ may be given, separated by a comma.
+
+
+
+
+ The reason for including or excluding the test
+
+
+
+
+ PlatformAttribute is used to mark a test fixture or an
+ individual method as applying to a particular platform only.
+
+
+
+
+ Constructor with no platforms specified, for use
+ with named property syntax.
+
+
+
+
+ Constructor taking one or more platforms
+
+ Comma-deliminted list of platforms
+
+
+
+ CultureAttribute is used to mark a test fixture or an
+ individual method as applying to a particular Culture only.
+
+
+
+
+ Constructor with no cultures specified, for use
+ with named property syntax.
+
+
+
+
+ Constructor taking one or more cultures
+
+ Comma-deliminted list of cultures
+
+
+
+ Marks a test to use a combinatorial join of any argument data
+ provided. NUnit will create a test case for every combination of
+ the arguments provided. This can result in a large number of test
+ cases and so should be used judiciously. This is the default join
+ type, so the attribute need not be used except as documentation.
+
+
+
+
+ PropertyAttribute is used to attach information to a test as a name/value pair..
+
+
+
+
+ Construct a PropertyAttribute with a name and string value
+
+ The name of the property
+ The property value
+
+
+
+ Construct a PropertyAttribute with a name and int value
+
+ The name of the property
+ The property value
+
+
+
+ Construct a PropertyAttribute with a name and double value
+
+ The name of the property
+ The property value
+
+
+
+ Constructor for derived classes that set the
+ property dictionary directly.
+
+
+
+
+ Constructor for use by derived classes that use the
+ name of the type as the property name. Derived classes
+ must ensure that the Type of the property value is
+ a standard type supported by the BCL. Any custom
+ types will cause a serialization Exception when
+ in the client.
+
+
+
+
+ Gets the property dictionary for this attribute
+
+
+
+
+ Default constructor
+
+
+
+
+ Marks a test to use pairwise join of any argument data provided.
+ NUnit will attempt too excercise every pair of argument values at
+ least once, using as small a number of test cases as it can. With
+ only two arguments, this is the same as a combinatorial join.
+
+
+
+
+ Default constructor
+
+
+
+
+ Marks a test to use a sequential join of any argument data
+ provided. NUnit will use arguements for each parameter in
+ sequence, generating test cases up to the largest number
+ of argument values provided and using null for any arguments
+ for which it runs out of values. Normally, this should be
+ used with the same number of arguments for each parameter.
+
+
+
+
+ Default constructor
+
+
+
+
+ Summary description for MaxTimeAttribute.
+
+
+
+
+ Construct a MaxTimeAttribute, given a time in milliseconds.
+
+ The maximum elapsed time in milliseconds
+
+
+
+ RandomAttribute is used to supply a set of random values
+ to a single parameter of a parameterized test.
+
+
+
+
+ ValuesAttribute is used to provide literal arguments for
+ an individual parameter of a test.
+
+
+
+
+ Abstract base class for attributes that apply to parameters
+ and supply data for the parameter.
+
+
+
+
+ Gets the data to be provided to the specified parameter
+
+
+
+
+ The collection of data to be returned. Must
+ be set by any derived attribute classes.
+ We use an object[] so that the individual
+ elements may have their type changed in GetData
+ if necessary.
+
+
+
+
+ Construct with one argument
+
+
+
+
+
+ Construct with two arguments
+
+
+
+
+
+
+ Construct with three arguments
+
+
+
+
+
+
+
+ Construct with an array of arguments
+
+
+
+
+
+ Get the collection of values to be used as arguments
+
+
+
+
+ Construct a set of doubles from 0.0 to 1.0,
+ specifying only the count.
+
+
+
+
+
+ Construct a set of doubles from min to max
+
+
+
+
+
+
+
+ Construct a set of ints from min to max
+
+
+
+
+
+
+
+ Get the collection of values to be used as arguments
+
+
+
+
+ RangeAttribute is used to supply a range of values to an
+ individual parameter of a parameterized test.
+
+
+
+
+ Construct a range of ints using default step of 1
+
+
+
+
+
+
+ Construct a range of ints specifying the step size
+
+
+
+
+
+
+
+ Construct a range of longs
+
+
+
+
+
+
+
+ Construct a range of doubles
+
+
+
+
+
+
+
+ Construct a range of floats
+
+
+
+
+
+
+
+ RepeatAttribute may be applied to test case in order
+ to run it multiple times.
+
+
+
+
+ Construct a RepeatAttribute
+
+ The number of times to run the test
+
+
+
+ RequiredAddinAttribute may be used to indicate the names of any addins
+ that must be present in order to run some or all of the tests in an
+ assembly. If the addin is not loaded, the entire assembly is marked
+ as NotRunnable.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The required addin.
+
+
+
+ Gets the name of required addin.
+
+ The required addin name.
+
+
+
+ Summary description for SetCultureAttribute.
+
+
+
+
+ Construct given the name of a culture
+
+
+
+
+
+ Summary description for SetUICultureAttribute.
+
+
+
+
+ Construct given the name of a culture
+
+
+
+
+
+ Attribute used to mark a class that contains one-time SetUp
+ and/or TearDown methods that apply to all the tests in a
+ namespace or an assembly.
+
+
+
+
+ SetUpFixtureAttribute is used to identify a SetUpFixture
+
+
+
+
+ Attribute used to mark a static (shared in VB) property
+ that returns a list of tests.
+
+
+
+
+ Attribute used to identify a method that is called
+ immediately after each test is run. The method is
+ guaranteed to be called, even if an exception is thrown.
+
+
+
+
+ Adding this attribute to a method within a
+ class makes the method callable from the NUnit test runner. There is a property
+ called Description which is optional which you can provide a more detailed test
+ description. This class cannot be inherited.
+
+
+
+ [TestFixture]
+ public class Fixture
+ {
+ [Test]
+ public void MethodToTest()
+ {}
+
+ [Test(Description = "more detailed description")]
+ publc void TestDescriptionMethod()
+ {}
+ }
+
+
+
+
+
+ Descriptive text for this test
+
+
+
+
+ TestCaseAttribute is used to mark parameterized test cases
+ and provide them with their arguments.
+
+
+
+
+ The ITestCaseData interface is implemented by a class
+ that is able to return complete testcases for use by
+ a parameterized test method.
+
+ NOTE: This interface is used in both the framework
+ and the core, even though that results in two different
+ types. However, sharing the source code guarantees that
+ the various implementations will be compatible and that
+ the core is able to reflect successfully over the
+ framework implementations of ITestCaseData.
+
+
+
+
+ Gets the argument list to be provided to the test
+
+
+
+
+ Gets the expected result
+
+
+
+
+ Gets the expected exception Type
+
+
+
+
+ Gets the FullName of the expected exception
+
+
+
+
+ Gets the name to be used for the test
+
+
+
+
+ Gets the description of the test
+
+
+
+
+ Gets a value indicating whether this is ignored.
+
+ true if ignored; otherwise, false.
+
+
+
+ Gets the ignore reason.
+
+ The ignore reason.
+
+
+
+ Construct a TestCaseAttribute with a list of arguments.
+ This constructor is not CLS-Compliant
+
+
+
+
+
+ Construct a TestCaseAttribute with a single argument
+
+
+
+
+
+ Construct a TestCaseAttribute with a two arguments
+
+
+
+
+
+
+ Construct a TestCaseAttribute with a three arguments
+
+
+
+
+
+
+
+ Gets the list of arguments to a test case
+
+
+
+
+ Gets or sets the expected result.
+
+ The result.
+
+
+
+ Gets a list of categories associated with this test;
+
+
+
+
+ Gets or sets the category associated with this test.
+ May be a single category or a comma-separated list.
+
+
+
+
+ Gets or sets the expected exception.
+
+ The expected exception.
+
+
+
+ Gets or sets the name the expected exception.
+
+ The expected name of the exception.
+
+
+
+ Gets or sets the expected message of the expected exception
+
+ The expected message of the exception.
+
+
+
+ Gets or sets the type of match to be performed on the expected message
+
+
+
+
+ Gets or sets the description.
+
+ The description.
+
+
+
+ Gets or sets the name of the test.
+
+ The name of the test.
+
+
+
+ Gets or sets the ignored status of the test
+
+
+
+
+ Gets or sets the ignored status of the test
+
+
+
+
+ Gets the ignore reason.
+
+ The ignore reason.
+
+
+
+ FactoryAttribute indicates the source to be used to
+ provide test cases for a test method.
+
+
+
+
+ Construct with the name of the factory - for use with languages
+ that don't support params arrays.
+
+ An array of the names of the factories that will provide data
+
+
+
+ Construct with a Type and name - for use with languages
+ that don't support params arrays.
+
+ The Type that will provide data
+ The name of the method, property or field that will provide data
+
+
+
+ The name of a the method, property or fiend to be used as a source
+
+
+
+
+ A Type to be used as a source
+
+
+
+
+ [TestFixture]
+ public class ExampleClass
+ {}
+
+
+
+
+ Default constructor
+
+
+
+
+ Construct with a object[] representing a set of arguments.
+ In .NET 2.0, the arguments may later be separated into
+ type arguments and constructor arguments.
+
+
+
+
+
+ Descriptive text for this fixture
+
+
+
+
+ Gets and sets the category for this fixture.
+ May be a comma-separated list of categories.
+
+
+
+
+ Gets a list of categories for this fixture
+
+
+
+
+ The arguments originally provided to the attribute
+
+
+
+
+ Gets or sets a value indicating whether this should be ignored.
+
+ true if ignore; otherwise, false.
+
+
+
+ Gets or sets the ignore reason. May set Ignored as a side effect.
+
+ The ignore reason.
+
+
+
+ Get or set the type arguments. If not set
+ explicitly, any leading arguments that are
+ Types are taken as type arguments.
+
+
+
+
+ Attribute used to identify a method that is
+ called before any tests in a fixture are run.
+
+
+
+
+ Attribute used to identify a method that is called after
+ all the tests in a fixture have run. The method is
+ guaranteed to be called, even if an exception is thrown.
+
+
+
+
+ Adding this attribute to a method within a
+ class makes the method callable from the NUnit test runner. There is a property
+ called Description which is optional which you can provide a more detailed test
+ description. This class cannot be inherited.
+
+
+
+ [TestFixture]
+ public class Fixture
+ {
+ [Test]
+ public void MethodToTest()
+ {}
+
+ [Test(Description = "more detailed description")]
+ publc void TestDescriptionMethod()
+ {}
+ }
+
+
+
+
+
+ WUsed on a method, marks the test with a timeout value in milliseconds.
+ The test will be run in a separate thread and is cancelled if the timeout
+ is exceeded. Used on a method or assembly, sets the default timeout
+ for all contained test methods.
+
+
+
+
+ Construct a TimeoutAttribute given a time in milliseconds
+
+ The timeout value in milliseconds
+
+
+
+ Marks a test that must run in the STA, causing it
+ to run in a separate thread if necessary.
+
+ On methods, you may also use STAThreadAttribute
+ to serve the same purpose.
+
+
+
+
+ Construct a RequiresSTAAttribute
+
+
+
+
+ Marks a test that must run in the MTA, causing it
+ to run in a separate thread if necessary.
+
+ On methods, you may also use MTAThreadAttribute
+ to serve the same purpose.
+
+
+
+
+ Construct a RequiresMTAAttribute
+
+
+
+
+ Marks a test that must run on a separate thread.
+
+
+
+
+ Construct a RequiresThreadAttribute
+
+
+
+
+ Construct a RequiresThreadAttribute, specifying the apartment
+
+
+
+
+ ValueSourceAttribute indicates the source to be used to
+ provide data for one parameter of a test method.
+
+
+
+
+ Construct with the name of the factory - for use with languages
+ that don't support params arrays.
+
+ The name of the data source to be used
+
+
+
+ Construct with a Type and name - for use with languages
+ that don't support params arrays.
+
+ The Type that will provide data
+ The name of the method, property or field that will provide data
+
+
+
+ The name of a the method, property or fiend to be used as a source
+
+
+
+
+ A Type to be used as a source
+
+
+
+
+ AttributeExistsConstraint tests for the presence of a
+ specified attribute on a Type.
+
+
+
+
+ The Constraint class is the base of all built-in constraints
+ within NUnit. It provides the operator overloads used to combine
+ constraints.
+
+
+
+
+ The IConstraintExpression interface is implemented by all
+ complete and resolvable constraints and expressions.
+
+
+
+
+ Return the top-level constraint for this expression
+
+
+
+
+
+ Static UnsetObject used to detect derived constraints
+ failing to set the actual value.
+
+
+
+
+ The actual value being tested against a constraint
+
+
+
+
+ The display name of this Constraint for use by ToString()
+
+
+
+
+ Argument fields used by ToString();
+
+
+
+
+ The builder holding this constraint
+
+
+
+
+ Construct a constraint with no arguments
+
+
+
+
+ Construct a constraint with one argument
+
+
+
+
+ Construct a constraint with two arguments
+
+
+
+
+ Sets the ConstraintBuilder holding this constraint
+
+
+
+
+ Write the failure message to the MessageWriter provided
+ as an argument. The default implementation simply passes
+ the constraint and the actual value to the writer, which
+ then displays the constraint description and the value.
+
+ Constraints that need to provide additional details,
+ such as where the error occured can override this.
+
+ The MessageWriter on which to display the message
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Test whether the constraint is satisfied by an
+ ActualValueDelegate that returns the value to be tested.
+ The default implementation simply evaluates the delegate
+ but derived classes may override it to provide for delayed
+ processing.
+
+ An ActualValueDelegate
+ True for success, false for failure
+
+
+
+ Test whether the constraint is satisfied by a given reference.
+ The default implementation simply dereferences the value but
+ derived classes may override it to provide for delayed processing.
+
+ A reference to the value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ Default override of ToString returns the constraint DisplayName
+ followed by any arguments within angle brackets.
+
+
+
+
+
+ Returns the string representation of this constraint
+
+
+
+
+ This operator creates a constraint that is satisfied only if both
+ argument constraints are satisfied.
+
+
+
+
+ This operator creates a constraint that is satisfied if either
+ of the argument constraints is satisfied.
+
+
+
+
+ This operator creates a constraint that is satisfied if the
+ argument constraint is not satisfied.
+
+
+
+
+ Returns a DelayedConstraint with the specified delay time.
+
+ The delay in milliseconds.
+
+
+
+
+ Returns a DelayedConstraint with the specified delay time
+ and polling interval.
+
+ The delay in milliseconds.
+ The interval at which to test the constraint.
+
+
+
+
+ The display name of this Constraint for use by ToString().
+ The default value is the name of the constraint with
+ trailing "Constraint" removed. Derived classes may set
+ this to another name in their constructors.
+
+
+
+
+ Returns a ConstraintExpression by appending And
+ to the current constraint.
+
+
+
+
+ Returns a ConstraintExpression by appending And
+ to the current constraint.
+
+
+
+
+ Returns a ConstraintExpression by appending Or
+ to the current constraint.
+
+
+
+
+ Class used to detect any derived constraints
+ that fail to set the actual value in their
+ Matches override.
+
+
+
+
+ Constructs an AttributeExistsConstraint for a specific attribute Type
+
+
+
+
+
+ Tests whether the object provides the expected attribute.
+
+ A Type, MethodInfo, or other ICustomAttributeProvider
+ True if the expected attribute is present, otherwise false
+
+
+
+ Writes the description of the constraint to the specified writer
+
+
+
+
+ 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.
+
+
+
+
+ Abstract base class used for prefixes
+
+
+
+
+ The base constraint
+
+
+
+
+ Construct given a base constraint
+
+
+
+
+
+ Constructs an AttributeConstraint for a specified attriute
+ Type and base constraint.
+
+
+
+
+
+
+ Determines whether the Type or other provider has the
+ expected attribute and if its value matches the
+ additional constraint specified.
+
+
+
+
+ Writes a description of the attribute to the specified writer.
+
+
+
+
+ Writes the actual value supplied to the specified writer.
+
+
+
+
+ Returns a string representation of the constraint.
+
+
+
+
+ BasicConstraint is the abstract base for constraints that
+ perform a simple comparison to a constant value.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected.
+ The description.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ NullConstraint tests that the actual value is null
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ TrueConstraint tests that the actual value is true
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ FalseConstraint tests that the actual value is false
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ NaNConstraint tests that the actual value is a double or float NaN
+
+
+
+
+ Test that the actual value is an NaN
+
+
+
+
+
+
+ Write the constraint description to a specified writer
+
+
+
+
+
+ BinaryConstraint is the abstract base of all constraints
+ that combine two other constraints in some fashion.
+
+
+
+
+ The first constraint being combined
+
+
+
+
+ The second constraint being combined
+
+
+
+
+ Construct a BinaryConstraint from two other constraints
+
+ The first constraint
+ The second constraint
+
+
+
+ AndConstraint succeeds only if both members succeed.
+
+
+
+
+ Create an AndConstraint from two other constraints
+
+ The first constraint
+ The second constraint
+
+
+
+ Apply both member constraints to an actual value, succeeding
+ succeeding only if both of them succeed.
+
+ The actual value
+ True if the constraints both succeeded
+
+
+
+ Write a description for this contraint to a MessageWriter
+
+ The MessageWriter to receive the description
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ OrConstraint succeeds if either member succeeds
+
+
+
+
+ Create an OrConstraint from two other constraints
+
+ The first constraint
+ The second constraint
+
+
+
+ Apply the member constraints to an actual value, succeeding
+ succeeding as soon as one of them succeeds.
+
+ The actual value
+ True if either constraint succeeded
+
+
+
+ Write a description for this contraint to a MessageWriter
+
+ The MessageWriter to receive the description
+
+
+
+ CollectionConstraint is the abstract base class for
+ constraints that operate on collections.
+
+
+
+
+ Construct an empty CollectionConstraint
+
+
+
+
+ Construct a CollectionConstraint
+
+
+
+
+
+ Determines whether the specified enumerable is empty.
+
+ The enumerable.
+
+ true if the specified enumerable is empty; otherwise, false.
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Protected method to be implemented by derived classes
+
+
+
+
+
+
+ CollectionItemsEqualConstraint is the abstract base class for all
+ collection constraints that apply some notion of item equality
+ as a part of their operation.
+
+
+
+
+ Construct an empty CollectionConstraint
+
+
+
+
+ Construct a CollectionConstraint
+
+
+
+
+
+ Flag the constraint to use the supplied IComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied Comparison object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IEqualityComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IEqualityComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Compares two collection members for equality
+
+
+
+
+ Return a new CollectionTally for use in making tests
+
+ The collection to be included in the tally
+
+
+
+ Flag the constraint to ignore case and return self.
+
+
+
+
+ EmptyCollectionConstraint tests whether a collection is empty.
+
+
+
+
+ Check that the collection is empty
+
+
+
+
+
+
+ Write the constraint description to a MessageWriter
+
+
+
+
+
+ UniqueItemsConstraint tests whether all the items in a
+ collection are unique.
+
+
+
+
+ Check that all items are unique.
+
+
+
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+
+
+
+
+ CollectionContainsConstraint is used to test whether a collection
+ contains an expected object as a member.
+
+
+
+
+ Construct a CollectionContainsConstraint
+
+
+
+
+
+ Test whether the expected item is contained in the collection
+
+
+
+
+
+
+ Write a descripton of the constraint to a MessageWriter
+
+
+
+
+
+ CollectionEquivalentCOnstraint is used to determine whether two
+ collections are equivalent.
+
+
+
+
+ Construct a CollectionEquivalentConstraint
+
+
+
+
+
+ Test whether two collections are equivalent
+
+
+
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+
+
+
+
+ CollectionSubsetConstraint is used to determine whether
+ one collection is a subset of another
+
+
+
+
+ Construct a CollectionSubsetConstraint
+
+ The collection that the actual value is expected to be a subset of
+
+
+
+ Test whether the actual collection is a subset of
+ the expected collection provided.
+
+
+
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+
+
+
+
+ CollectionOrderedConstraint is used to test whether a collection is ordered.
+
+
+
+
+ Construct a CollectionOrderedConstraint
+
+
+
+
+ Modifies the constraint to use an IComparer and returns self.
+
+
+
+
+ Modifies the constraint to use an IComparer<T> and returns self.
+
+
+
+
+ Modifies the constraint to use a Comparison<T> and returns self.
+
+
+
+
+ Modifies the constraint to test ordering by the value of
+ a specified property and returns self.
+
+
+
+
+ Test whether the collection is ordered
+
+
+
+
+
+
+ Write a description of the constraint to a MessageWriter
+
+
+
+
+
+ Returns the string representation of the constraint.
+
+
+
+
+
+ If used performs a reverse comparison
+
+
+
+
+ CollectionTally counts (tallies) the number of
+ occurences of each object in one or more enumerations.
+
+
+
+
+ Construct a CollectionTally object from a comparer and a collection
+
+
+
+
+ Try to remove an object from the tally
+
+ The object to remove
+ True if successful, false if the object was not found
+
+
+
+ Try to remove a set of objects from the tally
+
+ The objects to remove
+ True if successful, false if any object was not found
+
+
+
+ The number of objects remaining in the tally
+
+
+
+
+ ComparisonAdapter class centralizes all comparisons of
+ values in NUnit, adapting to the use of any provided
+ IComparer, IComparer<T> or Comparison<T>
+
+
+
+
+ Returns a ComparisonAdapter that wraps an IComparer
+
+
+
+
+ Returns a ComparisonAdapter that wraps an IComparer<T>
+
+
+
+
+ Returns a ComparisonAdapter that wraps a Comparison<T>
+
+
+
+
+ Compares two objects
+
+
+
+
+ Gets the default ComparisonAdapter, which wraps an
+ NUnitComparer object.
+
+
+
+
+ Construct a ComparisonAdapter for an IComparer
+
+
+
+
+ Compares two objects
+
+
+
+
+
+
+
+ Construct a default ComparisonAdapter
+
+
+
+
+ ComparisonAdapter<T> extends ComparisonAdapter and
+ allows use of an IComparer<T> or Comparison<T>
+ to actually perform the comparison.
+
+
+
+
+ Construct a ComparisonAdapter for an IComparer<T>
+
+
+
+
+ Compare a Type T to an object
+
+
+
+
+ Construct a ComparisonAdapter for a Comparison<T>
+
+
+
+
+ Compare a Type T to an object
+
+
+
+
+ Abstract base class for constraints that compare values to
+ determine if one is greater than, equal to or less than
+ the other.
+
+
+
+
+ The value against which a comparison is to be made
+
+
+
+
+ If true, less than returns success
+
+
+
+
+ if true, equal returns success
+
+
+
+
+ if true, greater than returns success
+
+
+
+
+ The predicate used as a part of the description
+
+
+
+
+ ComparisonAdapter to be used in making the comparison
+
+
+
+
+ Initializes a new instance of the class.
+
+ The value against which to make a comparison.
+ if set to true less succeeds.
+ if set to true equal succeeds.
+ if set to true greater succeeds.
+ String used in describing the constraint.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Modifies the constraint to use an IComparer and returns self
+
+
+
+
+ Modifies the constraint to use an IComparer<T> and returns self
+
+
+
+
+ Modifies the constraint to use a Comparison<T> and returns self
+
+
+
+
+ Tests whether a value is greater than the value supplied to its constructor
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected value.
+
+
+
+ Tests whether a value is greater than or equal to the value supplied to its constructor
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected value.
+
+
+
+ Tests whether a value is less than the value supplied to its constructor
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected value.
+
+
+
+ Tests whether a value is less than or equal to the value supplied to its constructor
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected value.
+
+
+
+ Delegate used to delay evaluation of the actual value
+ to be used in evaluating a constraint
+
+
+
+
+ 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 reognized. a ConstraintStack holds
+ input constraints as well as the results of each
+ operator applied.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Appends the specified operator to the expression by first
+ reducing the operator stack and then pushing the new
+ operator on the stack.
+
+ The operator to push.
+
+
+
+ Appends the specified constraint to the expresson by pushing
+ it on the constraint stack.
+
+ The constraint to push.
+
+
+
+ Sets the top operator right context.
+
+ The right context.
+
+
+
+ Reduces the operator stack until the topmost item
+ precedence is greater than or equal to the target precedence.
+
+ The target precedence.
+
+
+
+ Resolves this instance, returning a Constraint. If the builder
+ is not currently in a resolvable state, an exception is thrown.
+
+ The resolved constraint
+
+
+
+ Gets a value indicating whether this instance is resolvable.
+
+
+ true if this instance is resolvable; otherwise, false.
+
+
+
+
+ OperatorStack is a type-safe stack for holding ConstraintOperators
+
+
+
+
+ Initializes a new instance of the class.
+
+ The builder.
+
+
+
+ Pushes the specified operator onto the stack.
+
+ The op.
+
+
+
+ Pops the topmost operator from the stack.
+
+
+
+
+
+ Gets a value indicating whether this is empty.
+
+ true if empty; otherwise, false.
+
+
+
+ Gets the topmost operator without modifying the stack.
+
+ The top.
+
+
+
+ ConstraintStack is a type-safe stack for holding Constraints
+
+
+
+
+ Initializes a new instance of the class.
+
+ The builder.
+
+
+
+ Pushes the specified constraint. As a side effect,
+ the constraint's builder field is set to the
+ ConstraintBuilder owning this stack.
+
+ The constraint.
+
+
+
+ Pops this topmost constrait from the stack.
+ As a side effect, the constraint's builder
+ field is set to null.
+
+
+
+
+
+ Gets a value indicating whether this is empty.
+
+ true if empty; otherwise, false.
+
+
+
+ Gets the topmost constraint without modifying the stack.
+
+ The topmost constraint
+
+
+
+ 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
+ reognized. Once an actual Constraint is appended, the expression
+ returns a resolvable Constraint.
+
+
+
+
+ ConstraintExpressionBase is the abstract base class for the
+ generated ConstraintExpression class, which represents a
+ compound constraint in the process of being constructed
+ from a series of syntactic elements.
+
+ NOTE: ConstraintExpressionBase is aware of some of its
+ derived classes, which is an apparent violation of
+ encapsulation. Ideally, these classes would be a
+ single class, but they must be separated in order to
+ allow parts to be generated under .NET 1.x and to
+ provide proper user feedback in syntactically
+ aware IDEs.
+
+
+
+
+ The ConstraintBuilder holding the elements recognized so far
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the
+ class passing in a ConstraintBuilder, which may be pre-populated.
+
+ The builder.
+
+
+
+ Returns a string representation of the expression as it
+ currently stands. This should only be used for testing,
+ since it has the side-effect of resolving the expression.
+
+
+
+
+
+ Appends an operator to the expression and returns the
+ resulting expression itself.
+
+
+
+
+ Appends a self-resolving operator to the expression and
+ returns a new ResolvableConstraintExpression.
+
+
+
+
+ Appends a constraint to the expression and returns that
+ constraint, which is associated with the current state
+ of the expression being built.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the
+ class passing in a ConstraintBuilder, which may be pre-populated.
+
+ The builder.
+
+
+
+ Returns a new PropertyConstraintExpression, which will either
+ test for the existence of the named property on the object
+ being tested or apply any following constraint to that property.
+
+
+
+
+ Returns a new AttributeConstraint checking for the
+ presence of a particular attribute on an object.
+
+
+
+
+ Returns a new AttributeConstraint checking for the
+ presence of a particular attribute on an object.
+
+
+
+
+ Returns the constraint provided as an argument - used to allow custom
+ custom constraints to easily participate in the syntax.
+
+
+
+
+ Returns the constraint provided as an argument - used to allow custom
+ custom constraints to easily participate in the syntax.
+
+
+
+
+ Returns a constraint that tests two items for equality
+
+
+
+
+ Returns a constraint that tests that two references are the same object
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the actual
+ value is of the exact type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual
+ value is of the exact type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is a collection containing the same elements as the
+ collection supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is a subset of the collection supplied as an argument.
+
+
+
+
+ Returns a new CollectionContainsConstraint checking for the
+ presence of a particular object in the collection.
+
+
+
+
+ Returns a new CollectionContainsConstraint checking for the
+ presence of a particular object in the collection.
+
+
+
+
+ Returns a new ContainsConstraint. This constraint
+ will, in turn, make use of the appropriate second-level
+ constraint, depending on the type of the actual argument.
+ This overload is only used if the item sought is a string,
+ since any other type implies that we are looking for a
+ collection member.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value matches the Regex pattern supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value matches the Regex pattern supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same as an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same path or under an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same path or under an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the actual value falls
+ within a specified range.
+
+
+
+
+ Returns a ConstraintExpression that negates any
+ following constraint.
+
+
+
+
+ Returns a ConstraintExpression that negates any
+ following constraint.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them succeed.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if at least one of them succeeds.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them fail.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Length property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Count property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Message property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the InnerException property of the object being tested.
+
+
+
+
+ With is currently a NOP - reserved for future use.
+
+
+
+
+ Returns a constraint that tests for null
+
+
+
+
+ Returns a constraint that tests for True
+
+
+
+
+ Returns a constraint that tests for False
+
+
+
+
+ Returns a constraint that tests for NaN
+
+
+
+
+ Returns a constraint that tests for empty
+
+
+
+
+ Returns a constraint that tests whether a collection
+ contains all unique items.
+
+
+
+
+ Returns a constraint that tests whether an object graph is serializable in binary format.
+
+
+
+
+ Returns a constraint that tests whether an object graph is serializable in xml format.
+
+
+
+
+ Returns a constraint that tests whether a collection is ordered
+
+
+
+
+ Helper class with properties and methods that supply
+ a number of constraints used in Asserts.
+
+
+
+
+ Returns a new PropertyConstraintExpression, which will either
+ test for the existence of the named property on the object
+ being tested or apply any following constraint to that property.
+
+
+
+
+ Returns a new AttributeConstraint checking for the
+ presence of a particular attribute on an object.
+
+
+
+
+ Returns a new AttributeConstraint checking for the
+ presence of a particular attribute on an object.
+
+
+
+
+ Returns a constraint that tests two items for equality
+
+
+
+
+ Returns a constraint that tests that two references are the same object
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the actual
+ value is of the exact type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual
+ value is of the exact type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is a collection containing the same elements as the
+ collection supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is a subset of the collection supplied as an argument.
+
+
+
+
+ Returns a new CollectionContainsConstraint checking for the
+ presence of a particular object in the collection.
+
+
+
+
+ Returns a new CollectionContainsConstraint checking for the
+ presence of a particular object in the collection.
+
+
+
+
+ Returns a new ContainsConstraint. This constraint
+ will, in turn, make use of the appropriate second-level
+ constraint, depending on the type of the actual argument.
+ This overload is only used if the item sought is a string,
+ since any other type implies that we are looking for a
+ collection member.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value matches the Regex pattern supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value matches the Regex pattern supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value matches the pattern supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same as an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same path or under an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same path or under an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the actual value falls
+ within a specified range.
+
+
+
+
+ Returns a ConstraintExpression that negates any
+ following constraint.
+
+
+
+
+ Returns a ConstraintExpression that negates any
+ following constraint.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them succeed.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if at least one of them succeeds.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them fail.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Length property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Count property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Message property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the InnerException property of the object being tested.
+
+
+
+
+ Returns a constraint that tests for null
+
+
+
+
+ Returns a constraint that tests for True
+
+
+
+
+ Returns a constraint that tests for False
+
+
+
+
+ Returns a constraint that tests for NaN
+
+
+
+
+ Returns a constraint that tests for empty
+
+
+
+
+ Returns a constraint that tests whether a collection
+ contains all unique items.
+
+
+
+
+ Returns a constraint that tests whether an object graph is serializable in binary format.
+
+
+
+
+ Returns a constraint that tests whether an object graph is serializable in xml format.
+
+
+
+
+ Returns a constraint that tests whether a collection is ordered
+
+
+
+
+ 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.
+
+
+
+
+ The precedence value used when the operator
+ is about to be pushed to the stack.
+
+
+
+
+ The precedence value used when the operator
+ is on the top of the stack.
+
+
+
+
+ Reduce produces a constraint from the operator and
+ any arguments. It takes the arguments from the constraint
+ stack and pushes the resulting constraint on it.
+
+
+
+
+
+ The syntax element preceding this operator
+
+
+
+
+ The syntax element folowing this operator
+
+
+
+
+ The precedence value used when the operator
+ is about to be pushed to the stack.
+
+
+
+
+ The precedence value used when the operator
+ is on the top of the stack.
+
+
+
+
+ PrefixOperator takes a single constraint and modifies
+ it's action in some way.
+
+
+
+
+ Reduce produces a constraint from the operator and
+ any arguments. It takes the arguments from the constraint
+ stack and pushes the resulting constraint on it.
+
+
+
+
+
+ Returns the constraint created by applying this
+ prefix to another constraint.
+
+
+
+
+
+
+ Negates the test of the constraint it wraps.
+
+
+
+
+ Constructs a new NotOperator
+
+
+
+
+ Returns a NotConstraint applied to its argument.
+
+
+
+
+ Abstract base for operators that indicate how to
+ apply a constraint to items in a collection.
+
+
+
+
+ Constructs a CollectionOperator
+
+
+
+
+ Represents a constraint that succeeds if all the
+ members of a collection match a base constraint.
+
+
+
+
+ Returns a constraint that will apply the argument
+ to the members of a collection, succeeding if
+ they all succeed.
+
+
+
+
+ Represents a constraint that succeeds if any of the
+ members of a collection match a base constraint.
+
+
+
+
+ Returns a constraint that will apply the argument
+ to the members of a collection, succeeding if
+ any of them succeed.
+
+
+
+
+ Represents a constraint that succeeds if none of the
+ members of a collection match a base constraint.
+
+
+
+
+ Returns a constraint that will apply the argument
+ to the members of a collection, succeeding if
+ none of them succeed.
+
+
+
+
+ Represents a constraint that simply wraps the
+ constraint provided as an argument, without any
+ further functionality, but which modifes the
+ order of evaluation because of its precedence.
+
+
+
+
+ Constructor for the WithOperator
+
+
+
+
+ Returns a constraint that wraps its argument
+
+
+
+
+ Abstract base class for operators that are able to reduce to a
+ constraint whether or not another syntactic element follows.
+
+
+
+
+ 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.
+
+
+
+
+ Constructs a PropOperator for a particular named property
+
+
+
+
+ Reduce produces a constraint from the operator and
+ any arguments. It takes the arguments from the constraint
+ stack and pushes the resulting constraint on it.
+
+
+
+
+
+ Gets the name of the property to which the operator applies
+
+
+
+
+ Operator that tests for the presence of a particular attribute
+ on a type and optionally applies further tests to the attribute.
+
+
+
+
+ Construct an AttributeOperator for a particular Type
+
+ The Type of attribute tested
+
+
+
+ Reduce produces a constraint from the operator and
+ any arguments. It takes the arguments from the constraint
+ stack and pushes the resulting constraint on it.
+
+
+
+
+ Operator that tests that an exception is thrown and
+ optionally applies further tests to the exception.
+
+
+
+
+ Construct a ThrowsOperator
+
+
+
+
+ Reduce produces a constraint from the operator and
+ any arguments. It takes the arguments from the constraint
+ stack and pushes the resulting constraint on it.
+
+
+
+
+ Abstract base class for all binary operators
+
+
+
+
+ Reduce produces a constraint from the operator and
+ any arguments. It takes the arguments from the constraint
+ stack and pushes the resulting constraint on it.
+
+
+
+
+
+ Abstract method that produces a constraint by applying
+ the operator to its left and right constraint arguments.
+
+
+
+
+ Gets the left precedence of the operator
+
+
+
+
+ Gets the right precedence of the operator
+
+
+
+
+ Operator that requires both it's arguments to succeed
+
+
+
+
+ Construct an AndOperator
+
+
+
+
+ Apply the operator to produce an AndConstraint
+
+
+
+
+ Operator that requires at least one of it's arguments to succeed
+
+
+
+
+ Construct an OrOperator
+
+
+
+
+ Apply the operator to produce an OrConstraint
+
+
+
+
+ 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.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Flag the constraint to use the supplied IComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied Comparison object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IEqualityComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IEqualityComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to ignore case and return self.
+
+
+
+
+ Applies a delay to the match so that a match can be evaluated in the future.
+
+
+
+
+ Creates a new DelayedConstraint
+
+ The inner constraint two decorate
+ The time interval after which the match is performed
+ If the value of is less than 0
+
+
+
+ Creates a new DelayedConstraint
+
+ The inner constraint two decorate
+ The time interval after which the match is performed
+ The time interval used for polling
+ If the value of is less than 0
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for if the base constraint fails, false if it succeeds
+
+
+
+ Test whether the constraint is satisfied by a delegate
+
+ The delegate whose value is to be tested
+ True for if the base constraint fails, false if it succeeds
+
+
+
+ Test whether the constraint is satisfied by a given reference.
+ Overridden to wait for the specified delay period before
+ calling the base constraint with the dereferenced value.
+
+ A reference to the value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a MessageWriter.
+
+ The writer on which the actual value is displayed
+
+
+
+ Returns the string representation of the constraint.
+
+
+
+
+ EmptyDirectoryConstraint is used to test that a directory is empty
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ 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.
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ 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.
+
+
+
+
+ If true, strings in error messages will be clipped
+
+
+
+
+ NUnitEqualityComparer used to test equality.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected value.
+
+
+
+ Flag the constraint to use a tolerance when determining equality.
+
+ Tolerance value to be used
+ Self.
+
+
+
+ Flag the constraint to use the supplied IComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied Comparison object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IEqualityComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Flag the constraint to use the supplied IEqualityComparer object.
+
+ The IComparer object to use.
+ Self.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write a failure message. Overridden to provide custom
+ failure messages for EqualConstraint.
+
+ The MessageWriter to write to
+
+
+
+ Write description of this constraint
+
+ The MessageWriter to write to
+
+
+
+ Display the failure information for two collections that did not match.
+
+ The MessageWriter on which to display
+ The expected collection.
+ The actual collection
+ The depth of this failure in a set of nested collections
+
+
+
+ Displays a single line showing the types and sizes of the expected
+ and actual collections or arrays. If both are identical, the value is
+ only shown once.
+
+ The MessageWriter on which to display
+ The expected collection or array
+ The actual collection or array
+ The indentation level for the message line
+
+
+
+ Displays a single line showing the point in the expected and actual
+ arrays at which the comparison failed. If the arrays have different
+ structures or dimensions, both values are shown.
+
+ The MessageWriter on which to display
+ The expected array
+ The actual array
+ Index of the failure point in the underlying collections
+ The indentation level for the message line
+
+
+
+ Flag the constraint to ignore case and return self.
+
+
+
+
+ Flag the constraint to suppress string clipping
+ and return self.
+
+
+
+
+ Flag the constraint to compare arrays as collections
+ and return self.
+
+
+
+
+ Switches the .Within() modifier to interpret its tolerance as
+ a distance in representable values (see remarks).
+
+ Self.
+
+ Ulp stands for "unit in the last place" and describes the minimum
+ amount a given value can change. For any integers, an ulp is 1 whole
+ digit. For floating point values, the accuracy of which is better
+ for smaller numbers and worse for larger numbers, an ulp depends
+ on the size of the number. Using ulps for comparison of floating
+ point results instead of fixed tolerances is safer because it will
+ automatically compensate for the added inaccuracy of larger numbers.
+
+
+
+
+ Switches the .Within() modifier to interpret its tolerance as
+ a percentage that the actual values is allowed to deviate from
+ the expected value.
+
+ Self
+
+
+
+ Causes the tolerance to be interpreted as a TimeSpan in days.
+
+ Self
+
+
+
+ Causes the tolerance to be interpreted as a TimeSpan in hours.
+
+ Self
+
+
+
+ Causes the tolerance to be interpreted as a TimeSpan in minutes.
+
+ Self
+
+
+
+ Causes the tolerance to be interpreted as a TimeSpan in seconds.
+
+ Self
+
+
+
+ Causes the tolerance to be interpreted as a TimeSpan in milliseconds.
+
+ Self
+
+
+
+ Causes the tolerance to be interpreted as a TimeSpan in clock ticks.
+
+ Self
+
+
+
+ EqualityAdapter class handles all equality comparisons
+ that use an IEqualityComparer, IEqualityComparer<T>
+ or a ComparisonAdapter.
+
+
+
+
+ Compares two objects, returning true if they are equal
+
+
+
+
+ Returns an EqualityAdapter that wraps an IComparer.
+
+
+
+
+ Returns an EqualityAdapter that wraps an IEqualityComparer.
+
+
+
+
+ Returns an EqualityAdapter that wraps an IEqualityComparer<T>.
+
+
+
+
+ Returns an EqualityAdapter that wraps an IComparer<T>.
+
+
+
+
+ Returns an EqualityAdapter that wraps a Comparison<T>.
+
+
+
+ Helper routines for working with floating point numbers
+
+
+ The floating point comparison code is based on this excellent article:
+ http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm
+
+
+ "ULP" means Unit in the Last Place and in the context of this library refers to
+ the distance between two adjacent floating point numbers. IEEE floating point
+ numbers can only represent a finite subset of natural numbers, with greater
+ accuracy for smaller numbers and lower accuracy for very large numbers.
+
+
+ If a comparison is allowed "2 ulps" of deviation, that means the values are
+ allowed to deviate by up to 2 adjacent floating point values, which might be
+ as low as 0.0000001 for small numbers or as high as 10.0 for large numbers.
+
+
+
+
+ Compares two floating point values for equality
+ First floating point value to be compared
+ Second floating point value t be compared
+
+ Maximum number of representable floating point values that are allowed to
+ be between the left and the right floating point values
+
+ True if both numbers are equal or close to being equal
+
+
+ Floating point values can only represent a finite subset of natural numbers.
+ For example, the values 2.00000000 and 2.00000024 can be stored in a float,
+ but nothing inbetween them.
+
+
+ This comparison will count how many possible floating point values are between
+ the left and the right number. If the number of possible values between both
+ numbers is less than or equal to maxUlps, then the numbers are considered as
+ being equal.
+
+
+ Implementation partially follows the code outlined here:
+ http://www.anttirt.net/2007/08/19/proper-floating-point-comparisons/
+
+
+
+
+ Compares two double precision floating point values for equality
+ First double precision floating point value to be compared
+ Second double precision floating point value t be compared
+
+ Maximum number of representable double precision floating point values that are
+ allowed to be between the left and the right double precision floating point values
+
+ True if both numbers are equal or close to being equal
+
+
+ Double precision floating point values can only represent a limited series of
+ natural numbers. For example, the values 2.0000000000000000 and 2.0000000000000004
+ can be stored in a double, but nothing inbetween them.
+
+
+ This comparison will count how many possible double precision floating point
+ values are between the left and the right number. If the number of possible
+ values between both numbers is less than or equal to maxUlps, then the numbers
+ are considered as being equal.
+
+
+ Implementation partially follows the code outlined here:
+ http://www.anttirt.net/2007/08/19/proper-floating-point-comparisons/
+
+
+
+
+
+ Reinterprets the memory contents of a floating point value as an integer value
+
+
+ Floating point value whose memory contents to reinterpret
+
+
+ The memory contents of the floating point value interpreted as an integer
+
+
+
+
+ Reinterprets the memory contents of a double precision floating point
+ value as an integer value
+
+
+ Double precision floating point value whose memory contents to reinterpret
+
+
+ The memory contents of the double precision floating point value
+ interpreted as an integer
+
+
+
+
+ Reinterprets the memory contents of an integer as a floating point value
+
+ Integer value whose memory contents to reinterpret
+
+ The memory contents of the integer value interpreted as a floating point value
+
+
+
+
+ Reinterprets the memory contents of an integer value as a double precision
+ floating point value
+
+ Integer whose memory contents to reinterpret
+
+ The memory contents of the integer interpreted as a double precision
+ floating point value
+
+
+
+ Union of a floating point variable and an integer
+
+
+ The union's value as a floating point variable
+
+
+ The union's value as an integer
+
+
+ The union's value as an unsigned integer
+
+
+ Union of a double precision floating point variable and a long
+
+
+ The union's value as a double precision floating point variable
+
+
+ The union's value as a long
+
+
+ The union's value as an unsigned long
+
+
+
+ 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.
+
+
+
+
+ Construct a MessageWriter given a culture
+
+
+
+
+ Method to write single line message with optional args, usually
+ written to precede the general failure message.
+
+ The message to be written
+ Any arguments used in formatting the message
+
+
+
+ Method to write single line message with optional args, usually
+ written to precede the general failure message, at a givel
+ indentation level.
+
+ The indentation level of the message
+ The message to be written
+ Any arguments used in formatting the message
+
+
+
+ Display Expected and Actual lines for a constraint. This
+ is called by MessageWriter's default implementation of
+ WriteMessageTo and provides the generic two-line display.
+
+ The constraint that failed
+
+
+
+ Display Expected and Actual lines for given values. This
+ method may be called by constraints that need more control over
+ the display of actual and expected values than is provided
+ by the default implementation.
+
+ The expected value
+ The actual value causing the failure
+
+
+
+ Display Expected and Actual lines for given values, including
+ a tolerance value on the Expected line.
+
+ The expected value
+ The actual value causing the failure
+ The tolerance within which the test was made
+
+
+
+ Display the expected and actual string values on separate lines.
+ If the mismatch parameter is >=0, an additional line is displayed
+ line containing a caret that points to the mismatch point.
+
+ The expected string value
+ The actual string value
+ The point at which the strings don't match or -1
+ If true, case is ignored in locating the point where the strings differ
+ If true, the strings should be clipped to fit the line
+
+
+
+ Writes the text for a connector.
+
+ The connector.
+
+
+
+ Writes the text for a predicate.
+
+ The predicate.
+
+
+
+ Writes the text for an expected value.
+
+ The expected value.
+
+
+
+ Writes the text for a modifier
+
+ The modifier.
+
+
+
+ Writes the text for an actual value.
+
+ The actual value.
+
+
+
+ Writes the text for a generalized value.
+
+ The value.
+
+
+
+ Writes the text for a collection value,
+ starting at a particular point, to a max length
+
+ The collection containing elements to write.
+ The starting point of the elements to write
+ The maximum number of elements to write
+
+
+
+ Abstract method to get the max line length
+
+
+
+
+ Static methods used in creating messages
+
+
+
+
+ Static string used when strings are clipped
+
+
+
+
+ Returns the representation of a type as used in NUnitLite.
+ This is the same as Type.ToString() except for arrays,
+ which are displayed with their declared sizes.
+
+
+
+
+
+
+ Converts any control characters in a string
+ to their escaped representation.
+
+ The string to be converted
+ The converted string
+
+
+
+ Return the a string representation for a set of indices into an array
+
+ Array of indices for which a string is needed
+
+
+
+ Get an array of indices representing the point in a collection or
+ array corresponding to a single int index into the collection.
+
+ The collection to which the indices apply
+ Index in the collection
+ Array of indices
+
+
+
+ Clip a string to a given length, starting at a particular offset, returning the clipped
+ string with ellipses representing the removed parts
+
+ The string to be clipped
+ The maximum permitted length of the result string
+ The point at which to start clipping
+ The clipped string
+
+
+
+ Clip the expected and actual strings in a coordinated fashion,
+ so that they may be displayed together.
+
+
+
+
+
+
+
+
+ Shows the position two strings start to differ. Comparison
+ starts at the start index.
+
+ The expected string
+ The actual string
+ The index in the strings at which comparison should start
+ Boolean indicating whether case should be ignored
+ -1 if no mismatch found, or the index where mismatch found
+
+
+
+ The Numerics class contains common operations on numeric values.
+
+
+
+
+ Checks the type of the object, returning true if
+ the object is a numeric type.
+
+ The object to check
+ true if the object is a numeric type
+
+
+
+ Checks the type of the object, returning true if
+ the object is a floating point numeric type.
+
+ The object to check
+ true if the object is a floating point numeric type
+
+
+
+ Checks the type of the object, returning true if
+ the object is a fixed point numeric type.
+
+ The object to check
+ true if the object is a fixed point numeric type
+
+
+
+ Test two numeric values for equality, performing the usual numeric
+ conversions and using a provided or default tolerance. If the tolerance
+ provided is Empty, this method may set it to a default tolerance.
+
+ The expected value
+ The actual value
+ A reference to the tolerance in effect
+ True if the values are equal
+
+
+
+ Compare two numeric values, performing the usual numeric conversions.
+
+ The expected value
+ The actual value
+ The relationship of the values to each other
+
+
+
+ NUnitComparer encapsulates NUnit's default behavior
+ in comparing two objects.
+
+
+
+
+ Compares two objects
+
+
+
+
+
+
+
+ Returns the default NUnitComparer.
+
+
+
+
+ NUnitEqualityComparer encapsulates NUnit's handling of
+ equality tests between objects.
+
+
+
+
+ If true, all string comparisons will ignore case
+
+
+
+
+ If true, arrays will be treated as collections, allowing
+ those of different dimensions to be compared
+
+
+
+
+ If non-zero, equality comparisons within the specified
+ tolerance will succeed.
+
+
+
+
+ Comparison object used in comparisons for some constraints.
+
+
+
+
+ Compares two objects for equality.
+
+
+
+
+ Helper method to compare two arrays
+
+
+
+
+ Method to compare two DirectoryInfo objects
+
+ first directory to compare
+ second directory to compare
+ true if equivalent, false if not
+
+
+
+ Returns the default NUnitEqualityComparer
+
+
+
+
+ Gets and sets a flag indicating whether case should
+ be ignored in determining equality.
+
+
+
+
+ Gets and sets a flag indicating that arrays should be
+ compared as collections, without regard to their shape.
+
+
+
+
+ Gets and sets an external comparer to be used to
+ test for equality. It is applied to members of
+ collections, in place of NUnit's own logic.
+
+
+
+
+ Gets and sets a tolerance used to compare objects of
+ certin types.
+
+
+
+
+ Gets the list of failure points for the last Match performed.
+
+
+
+
+ PathConstraint serves as the abstract base of constraints
+ that operate on paths and provides several helper methods.
+
+
+
+
+ The expected path used in the constraint
+
+
+
+
+ The actual path being tested
+
+
+
+
+ Flag indicating whether a caseInsensitive comparison should be made
+
+
+
+
+ Construct a PathConstraint for a give expected path
+
+ The expected path
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Returns true if the expected path and actual path match
+
+
+
+
+ Returns the string representation of this constraint
+
+
+
+
+ Canonicalize the provided path
+
+
+ The path in standardized form
+
+
+
+ Test whether two paths are the same
+
+ The first path
+ The second path
+ Indicates whether case should be ignored
+
+
+
+
+ Test whether one path is under another path
+
+ The first path - supposed to be the parent path
+ The second path - supposed to be the child path
+ Indicates whether case should be ignored
+
+
+
+
+ Test whether one path is the same as or under another path
+
+ The first path - supposed to be the parent path
+ The second path - supposed to be the child path
+
+
+
+
+ Modifies the current instance to be case-insensitve
+ and returns it.
+
+
+
+
+ Modifies the current instance to be case-sensitve
+ and returns it.
+
+
+
+
+ Summary description for SamePathConstraint.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected path
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The expected path
+ The actual path
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ SubPathConstraint tests that the actual path is under the expected path
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected path
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The expected path
+ The actual path
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ SamePathOrUnderConstraint tests that one path is under another
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected path
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The expected path
+ The actual path
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Predicate constraint wraps a Predicate in a constraint,
+ returning success if the predicate is true.
+
+
+
+
+ Construct a PredicateConstraint from a predicate
+
+
+
+
+ Determines whether the predicate succeeds when applied
+ to the actual value.
+
+
+
+
+ Writes the description to a MessageWriter
+
+
+
+
+ NotConstraint negates the effect of some other constraint
+
+
+
+
+ Initializes a new instance of the class.
+
+ The base constraint to be negated.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for if the base constraint fails, false if it succeeds
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a MessageWriter.
+
+ The writer on which the actual value is displayed
+
+
+
+ AllItemsConstraint applies another constraint to each
+ item in a collection, succeeding if they all succeed.
+
+
+
+
+ Construct an AllItemsConstraint on top of an existing constraint
+
+
+
+
+
+ Apply the item constraint to each item in the collection,
+ failing if any item fails.
+
+
+
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+
+
+
+
+ SomeItemsConstraint applies another constraint to each
+ item in a collection, succeeding if any of them succeeds.
+
+
+
+
+ Construct a SomeItemsConstraint on top of an existing constraint
+
+
+
+
+
+ Apply the item constraint to each item in the collection,
+ succeeding if any item succeeds.
+
+
+
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+
+
+
+
+ NoItemConstraint applies another constraint to each
+ item in a collection, failing if any of them succeeds.
+
+
+
+
+ Construct a SomeItemsConstraint on top of an existing constraint
+
+
+
+
+
+ Apply the item constraint to each item in the collection,
+ failing if any item fails.
+
+
+
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+
+
+
+
+ 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 vaue
+ of the property. The two constraints are now separate.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The name of the property.
+
+
+
+ Test whether the property exists for a given object
+
+ The object to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter.
+
+ The writer on which the actual value is displayed
+
+
+
+ Returns the string representation of the constraint.
+
+
+
+
+
+ PropertyConstraint extracts a named property and uses
+ its value as the actual value for a chained constraint.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The name.
+ The constraint to apply to the property.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ Returns the string representation of the constraint.
+
+
+
+
+
+ RangeConstraint tests whethe two values are within a
+ specified range.
+
+
+
+
+ Initializes a new instance of the class.
+
+ From.
+ To.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Modifies the constraint to use an IComparer and returns self.
+
+
+
+
+ Modifies the constraint to use an IComparer<T> and returns self.
+
+
+
+
+ Modifies the constraint to use a Comparison<T> and returns self.
+
+
+
+
+ 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.
+
+
+
+
+ Create a new instance of ResolvableConstraintExpression
+
+
+
+
+ Create a new instance of ResolvableConstraintExpression,
+ passing in a pre-populated ConstraintBuilder.
+
+
+
+
+ Resolve the current expression to a Constraint
+
+
+
+
+ Appends an And Operator to the expression
+
+
+
+
+ Appends an Or operator to the expression.
+
+
+
+
+ ReusableConstraint wraps a resolved constraint so that it
+ may be saved and reused as needed.
+
+
+
+
+ Construct a ReusableConstraint
+
+ The constraint or expression to be reused
+
+
+
+ Conversion operator from a normal constraint to a ReusableConstraint.
+
+ The original constraint to be wrapped as a ReusableConstraint
+
+
+
+
+ Returns the string representation of the constraint.
+
+ A string representing the constraint
+
+
+
+ Resolves the ReusableConstraint by returning the constraint
+ that it originally wrapped.
+
+ A resolved constraint
+
+
+
+ SameAsConstraint tests whether an object is identical to
+ the object passed to its constructor
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected object.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ BinarySerializableConstraint tests whether
+ an object is serializable in binary format.
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ Returns the string representation
+
+
+
+
+ BinarySerializableConstraint tests whether
+ an object is serializable in binary format.
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ Returns the string representation of this constraint
+
+
+
+
+ StringConstraint is the abstract base for constraints
+ that operate on strings. It supports the IgnoreCase
+ modifier for string operations.
+
+
+
+
+ The expected value
+
+
+
+
+ Indicates whether tests should be case-insensitive
+
+
+
+
+ Constructs a StringConstraint given an expected value
+
+ The expected value
+
+
+
+ Modify the constraint to ignore case in matching.
+
+
+
+
+ EmptyStringConstraint tests whether a string is empty.
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ NullEmptyStringConstraint tests whether a string is either null or empty.
+
+
+
+
+ Constructs a new NullOrEmptyStringConstraint
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ SubstringConstraint can test whether a string contains
+ the expected substring.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ StartsWithConstraint can test whether a string starts
+ with an expected substring.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected string
+
+
+
+ Test whether the constraint is matched by the actual value.
+ This is a template method, which calls the IsMatch method
+ of the derived class.
+
+
+
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ EndsWithConstraint can test whether a string ends
+ with an expected substring.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The expected string
+
+
+
+ Test whether the constraint is matched by the actual value.
+ This is a template method, which calls the IsMatch method
+ of the derived class.
+
+
+
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ RegexConstraint can test whether a string matches
+ the pattern provided.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The pattern.
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True for success, false for failure
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ ThrowsConstraint is used to test the exception thrown by
+ a delegate by applying a constraint to it.
+
+
+
+
+ Initializes a new instance of the class,
+ using a constraint to be applied to the exception.
+
+ A constraint to apply to the caught exception.
+
+
+
+ Executes the code of the delegate and captures any exception.
+ If a non-null base constraint was provided, it applies that
+ constraint to the exception.
+
+ A delegate representing the code to be tested
+ True if an exception is thrown and the constraint succeeds, otherwise false
+
+
+
+ Converts an ActualValueDelegate to a TestDelegate
+ before calling the primary overload.
+
+
+
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ Returns the string representation of this constraint
+
+
+
+
+ Get the actual exception thrown - used by Assert.Throws.
+
+
+
+
+ ThrowsNothingConstraint tests that a delegate does not
+ throw an exception.
+
+
+
+
+ Test whether the constraint is satisfied by a given value
+
+ The value to be tested
+ True if no exception is thrown, otherwise false
+
+
+
+ Converts an ActualValueDelegate to a TestDelegate
+ before calling the primary overload.
+
+
+
+
+
+
+ Write the constraint description to a MessageWriter
+
+ The writer on which the description is displayed
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. The default implementation simply writes
+ the raw value of actual, leaving it to the writer to
+ perform any formatting.
+
+ The writer on which the actual value is displayed
+
+
+
+ Modes in which the tolerance value for a comparison can
+ be interpreted.
+
+
+
+
+ The tolerance was created with a value, without specifying
+ how the value would be used. This is used to prevent setting
+ the mode more than once and is generally changed to Linear
+ upon execution of the test.
+
+
+
+
+ The tolerance is used as a numeric range within which
+ two compared values are considered to be equal.
+
+
+
+
+ Interprets the tolerance as the percentage by which
+ the two compared values my deviate from each other.
+
+
+
+
+ Compares two values based in their distance in
+ representable numbers.
+
+
+
+
+ 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.
+
+
+
+
+ Constructs a linear tolerance of a specdified amount
+
+
+
+
+ Constructs a tolerance given an amount and ToleranceMode
+
+
+
+
+ Tests that the current Tolerance is linear with a
+ numeric value, throwing an exception if it is not.
+
+
+
+
+ Returns an empty Tolerance object, equivalent to
+ specifying an exact match.
+
+
+
+
+ Gets the ToleranceMode for the current Tolerance
+
+
+
+
+ Gets the value of the current Tolerance instance.
+
+
+
+
+ Returns a new tolerance, using the current amount as a percentage.
+
+
+
+
+ Returns a new tolerance, using the current amount in Ulps.
+
+
+
+
+ Returns a new tolerance with a TimeSpan as the amount, using
+ the current amount as a number of days.
+
+
+
+
+ Returns a new tolerance with a TimeSpan as the amount, using
+ the current amount as a number of hours.
+
+
+
+
+ Returns a new tolerance with a TimeSpan as the amount, using
+ the current amount as a number of minutes.
+
+
+
+
+ Returns a new tolerance with a TimeSpan as the amount, using
+ the current amount as a number of seconds.
+
+
+
+
+ Returns a new tolerance with a TimeSpan as the amount, using
+ the current amount as a number of milliseconds.
+
+
+
+
+ Returns a new tolerance with a TimeSpan as the amount, using
+ the current amount as a number of clock ticks.
+
+
+
+
+ Returns true if the current tolerance is empty.
+
+
+
+
+ TypeConstraint is the abstract base for constraints
+ that take a Type as their expected value.
+
+
+
+
+ The expected Type used by the constraint
+
+
+
+
+ Construct a TypeConstraint for a given Type
+
+
+
+
+
+ Write the actual value for a failing constraint test to a
+ MessageWriter. TypeConstraints override this method to write
+ the name of the type.
+
+ The writer on which the actual value is displayed
+
+
+
+ ExactTypeConstraint is used to test that an object
+ is of the exact type provided in the constructor
+
+
+
+
+ Construct an ExactTypeConstraint for a given Type
+
+ The expected Type.
+
+
+
+ Test that an object is of the exact type specified
+
+ The actual value.
+ True if the tested object is of the exact type provided, otherwise false.
+
+
+
+ Write the description of this constraint to a MessageWriter
+
+ The MessageWriter to use
+
+
+
+ InstanceOfTypeConstraint is used to test that an object
+ is of the same type provided or derived from it.
+
+
+
+
+ Construct an InstanceOfTypeConstraint for the type provided
+
+ The expected Type
+
+
+
+ Test whether an object is of the specified type or a derived type
+
+ The object to be tested
+ True if the object is of the provided type or derives from it, otherwise false.
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+ The MessageWriter to use
+
+
+
+ AssignableFromConstraint is used to test that an object
+ can be assigned from a given Type.
+
+
+
+
+ Construct an AssignableFromConstraint for the type provided
+
+
+
+
+
+ Test whether an object can be assigned from the specified type
+
+ The object to be tested
+ True if the object can be assigned a value of the expected Type, otherwise false.
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+ The MessageWriter to use
+
+
+
+ AssignableToConstraint is used to test that an object
+ can be assigned to a given Type.
+
+
+
+
+ Construct an AssignableToConstraint for the type provided
+
+
+
+
+
+ Test whether an object can be assigned to the specified type
+
+ The object to be tested
+ True if the object can be assigned a value of the expected Type, otherwise false.
+
+
+
+ Write a description of this constraint to a MessageWriter
+
+ The MessageWriter to use
+
+
+
+ Thrown when an assertion failed.
+
+
+
+
+ The error message that explains
+ the reason for the exception
+
+
+ The error message that explains
+ the reason for the exception
+ The exception that caused the
+ current exception
+
+
+
+ Serialization Constructor
+
+
+
+
+ Thrown when an assertion failed.
+
+
+
+
+
+
+ The error message that explains
+ the reason for the exception
+ The exception that caused the
+ current exception
+
+
+
+ Serialization Constructor
+
+
+
+
+ Thrown when a test executes inconclusively.
+
+
+
+
+ The error message that explains
+ the reason for the exception
+
+
+ The error message that explains
+ the reason for the exception
+ The exception that caused the
+ current exception
+
+
+
+ Serialization Constructor
+
+
+
+
+ Thrown when an assertion failed.
+
+
+
+
+
+
+ The error message that explains
+ the reason for the exception
+ The exception that caused the
+ current exception
+
+
+
+ Serialization Constructor
+
+
+
+
+ Delegate used by tests that execute code and
+ capture any thrown exception.
+
+
+
+
+ The Assert class contains a collection of static methods that
+ implement the most common assertions used in NUnit.
+
+
+
+
+ We don't actually want any instances of this object, but some people
+ like to inherit from it to add other static methods. Hence, the
+ protected constructor disallows any instances of this object.
+
+
+
+
+ The Equals method throws an AssertionException. This is done
+ to make sure there is no mistake by calling this function.
+
+
+
+
+
+
+ override the default ReferenceEquals to throw an AssertionException. This
+ implementation makes sure there is no mistake in calling this function
+ as part of Assert.
+
+
+
+
+
+
+ Helper for Assert.AreEqual(double expected, double actual, ...)
+ allowing code generation to work consistently.
+
+ The expected value
+ The actual value
+ The maximum acceptable difference between the
+ the expected and the actual
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Throws a with the message and arguments
+ that are passed in. This allows a test to be cut short, with a result
+ of success returned to NUnit.
+
+ The message to initialize the with.
+ Arguments to be used in formatting the message
+
+
+
+ Throws a with the message and arguments
+ that are passed in. This allows a test to be cut short, with a result
+ of success returned to NUnit.
+
+ The message to initialize the with.
+
+
+
+ Throws a with the message and arguments
+ that are passed in. This allows a test to be cut short, with a result
+ of success returned to NUnit.
+
+
+
+
+ Throws an with the message and arguments
+ that are passed in. This is used by the other Assert functions.
+
+ The message to initialize the with.
+ Arguments to be used in formatting the message
+
+
+
+ Throws an with the message that is
+ passed in. This is used by the other Assert functions.
+
+ The message to initialize the with.
+
+
+
+ Throws an .
+ This is used by the other Assert functions.
+
+
+
+
+ Throws an with the message and arguments
+ that are passed in. This causes the test to be reported as ignored.
+
+ The message to initialize the with.
+ Arguments to be used in formatting the message
+
+
+
+ Throws an with the message that is
+ passed in. This causes the test to be reported as ignored.
+
+ The message to initialize the with.
+
+
+
+ Throws an .
+ This causes the test to be reported as ignored.
+
+
+
+
+ Throws an with the message and arguments
+ that are passed in. This causes the test to be reported as inconclusive.
+
+ The message to initialize the with.
+ Arguments to be used in formatting the message
+
+
+
+ Throws an with the message that is
+ passed in. This causes the test to be reported as inconclusive.
+
+ The message to initialize the with.
+
+
+
+ Throws an .
+ This causes the test to be reported as Inconclusive.
+
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint expression to be applied
+ The actual value to test
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint expression to be applied
+ An ActualValueDelegate returning the value to be tested
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint expression to be applied
+ An ActualValueDelegate returning the value to be tested
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ An ActualValueDelegate returning the value to be tested
+ A Constraint expression to be applied
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display if the condition is false
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display if the condition is false
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+
+
+
+ Asserts that the code represented by a delegate throws an exception
+ that satisfies the constraint provided.
+
+ A TestDelegate to be executed
+ A ThrowsConstraint used in the test
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ A constraint to be satisfied by the exception
+ A TestSnippet delegate
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ A constraint to be satisfied by the exception
+ A TestSnippet delegate
+ The message that will be displayed on failure
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ A constraint to be satisfied by the exception
+ A TestSnippet delegate
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ The exception Type expected
+ A TestSnippet delegate
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ The exception Type expected
+ A TestSnippet delegate
+ The message that will be displayed on failure
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ The exception Type expected
+ A TestSnippet delegate
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ Type of the expected exception
+ A TestSnippet delegate
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ Type of the expected exception
+ A TestSnippet delegate
+ The message that will be displayed on failure
+
+
+
+ Verifies that a delegate throws a particular exception when called.
+
+ Type of the expected exception
+ A TestSnippet delegate
+
+
+
+ Verifies that a delegate throws an exception when called
+ and returns it.
+
+ A TestDelegate
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that a delegate throws an exception when called
+ and returns it.
+
+ A TestDelegate
+ The message that will be displayed on failure
+
+
+
+ Verifies that a delegate throws an exception when called
+ and returns it.
+
+ A TestDelegate
+
+
+
+ Verifies that a delegate throws an exception of a certain Type
+ or one derived from it when called and returns it.
+
+ The expected Exception Type
+ A TestDelegate
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that a delegate throws an exception of a certain Type
+ or one derived from it when called and returns it.
+
+ The expected Exception Type
+ A TestDelegate
+ The message that will be displayed on failure
+
+
+
+ Verifies that a delegate throws an exception of a certain Type
+ or one derived from it when called and returns it.
+
+ The expected Exception Type
+ A TestDelegate
+
+
+
+ Verifies that a delegate throws an exception of a certain Type
+ or one derived from it when called and returns it.
+
+ The expected Exception Type
+ A TestDelegate
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that a delegate throws an exception of a certain Type
+ or one derived from it when called and returns it.
+
+ The expected Exception Type
+ A TestDelegate
+ The message that will be displayed on failure
+
+
+
+ Verifies that a delegate throws an exception of a certain Type
+ or one derived from it when called and returns it.
+
+ The expected Exception Type
+ A TestDelegate
+
+
+
+ Verifies that a delegate does not throw an exception
+
+ A TestSnippet delegate
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that a delegate does not throw an exception.
+
+ A TestSnippet delegate
+ The message that will be displayed on failure
+
+
+
+ Verifies that a delegate does not throw an exception.
+
+ A TestSnippet delegate
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+
+
+
+ Asserts that a condition is false. If the condition is true the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that a condition is false. If the condition is true the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+
+
+
+ Asserts that a condition is false. If the condition is true the method throws
+ an .
+
+ The evaluated condition
+
+
+
+ Asserts that a condition is false. If the condition is true the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that a condition is false. If the condition is true the method throws
+ an .
+
+ The evaluated condition
+ The message to display in case of failure
+
+
+
+ Asserts that a condition is false. If the condition is true the method throws
+ an .
+
+ The evaluated condition
+
+
+
+ Verifies that the object that is passed in is not equal to null
+ If the object is null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the object that is passed in is not equal to null
+ If the object is null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+
+
+
+ Verifies that the object that is passed in is not equal to null
+ If the object is null then an
+ is thrown.
+
+ The object that is to be tested
+
+
+
+ Verifies that the object that is passed in is not equal to null
+ If the object is null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the object that is passed in is not equal to null
+ If the object is null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+
+
+
+ Verifies that the object that is passed in is not equal to null
+ If the object is null then an
+ is thrown.
+
+ The object that is to be tested
+
+
+
+ Verifies that the object that is passed in is equal to null
+ If the object is not null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the object that is passed in is equal to null
+ If the object is not null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+
+
+
+ Verifies that the object that is passed in is equal to null
+ If the object is not null then an
+ is thrown.
+
+ The object that is to be tested
+
+
+
+ Verifies that the object that is passed in is equal to null
+ If the object is not null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the object that is passed in is equal to null
+ If the object is not null then an
+ is thrown.
+
+ The object that is to be tested
+ The message to display in case of failure
+
+
+
+ Verifies that the object that is passed in is equal to null
+ If the object is not null then an
+ is thrown.
+
+ The object that is to be tested
+
+
+
+ Verifies that the double that is passed in is an NaN value.
+ If the object is not NaN then an
+ is thrown.
+
+ The value that is to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the double that is passed in is an NaN value.
+ If the object is not NaN then an
+ is thrown.
+
+ The value that is to be tested
+ The message to display in case of failure
+
+
+
+ Verifies that the double that is passed in is an NaN value.
+ If the object is not NaN then an
+ is thrown.
+
+ The value that is to be tested
+
+
+
+ Verifies that the double that is passed in is an NaN value.
+ If the object is not NaN then an
+ is thrown.
+
+ The value that is to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the double that is passed in is an NaN value.
+ If the object is not NaN then an
+ is thrown.
+
+ The value that is to be tested
+ The message to display in case of failure
+
+
+
+ Verifies that the double that is passed in is an NaN value.
+ If the object is not NaN then an
+ is thrown.
+
+ The value that is to be tested
+
+
+
+ Assert that a string is empty - that is equal to string.Empty
+
+ The string to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Assert that a string is empty - that is equal to string.Empty
+
+ The string to be tested
+ The message to display in case of failure
+
+
+
+ Assert that a string is empty - that is equal to string.Empty
+
+ The string to be tested
+
+
+
+ Assert that an array, list or other collection is empty
+
+ An array, list or other collection implementing ICollection
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Assert that an array, list or other collection is empty
+
+ An array, list or other collection implementing ICollection
+ The message to display in case of failure
+
+
+
+ Assert that an array, list or other collection is empty
+
+ An array, list or other collection implementing ICollection
+
+
+
+ Assert that a string is not empty - that is not equal to string.Empty
+
+ The string to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Assert that a string is not empty - that is not equal to string.Empty
+
+ The string to be tested
+ The message to display in case of failure
+
+
+
+ Assert that a string is not empty - that is not equal to string.Empty
+
+ The string to be tested
+
+
+
+ Assert that an array, list or other collection is not empty
+
+ An array, list or other collection implementing ICollection
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Assert that an array, list or other collection is not empty
+
+ An array, list or other collection implementing ICollection
+ The message to display in case of failure
+
+
+
+ Assert that an array, list or other collection is not empty
+
+ An array, list or other collection implementing ICollection
+
+
+
+ Assert that a string is either null or equal to string.Empty
+
+ The string to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Assert that a string is either null or equal to string.Empty
+
+ The string to be tested
+ The message to display in case of failure
+
+
+
+ Assert that a string is either null or equal to string.Empty
+
+ The string to be tested
+
+
+
+ Assert that a string is not null or empty
+
+ The string to be tested
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Assert that a string is not null or empty
+
+ The string to be tested
+ The message to display in case of failure
+
+
+
+ Assert that a string is not null or empty
+
+ The string to be tested
+
+
+
+ Asserts that an object may be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object may be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+
+
+
+ Asserts that an object may be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+
+
+
+ Asserts that an object may be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object may be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+
+
+
+ Asserts that an object may be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+
+
+
+ Asserts that an object may not be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object may not be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+
+
+
+ Asserts that an object may not be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+
+
+
+ Asserts that an object may not be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object may not be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+ The message to display in case of failure
+
+
+
+ Asserts that an object may not be assigned a value of a given Type.
+
+ The expected Type.
+ The object under examination
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+
+
+
+ Asserts that an object is an instance of a given type.
+
+ The expected Type
+ The object being examined
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+ The message to display in case of failure
+
+
+
+ Asserts that an object is not an instance of a given type.
+
+ The expected Type
+ The object being examined
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are equal. If they are not, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two doubles are equal considering a delta. If the
+ expected value is infinity then the delta value is ignored. If
+ they are not equal then an is
+ thrown.
+
+ The expected value
+ The actual value
+ The maximum acceptable difference between the
+ the expected and the actual
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two doubles are equal considering a delta. If the
+ expected value is infinity then the delta value is ignored. If
+ they are not equal then an is
+ thrown.
+
+ The expected value
+ The actual value
+ The maximum acceptable difference between the
+ the expected and the actual
+ The message to display in case of failure
+
+
+
+ Verifies that two doubles are equal considering a delta. If the
+ expected value is infinity then the delta value is ignored. If
+ they are not equal then an is
+ thrown.
+
+ The expected value
+ The actual value
+ The maximum acceptable difference between the
+ the expected and the actual
+
+
+
+ Verifies that two doubles are equal considering a delta. If the
+ expected value is infinity then the delta value is ignored. If
+ they are not equal then an is
+ thrown.
+
+ The expected value
+ The actual value
+ The maximum acceptable difference between the
+ the expected and the actual
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two doubles are equal considering a delta. If the
+ expected value is infinity then the delta value is ignored. If
+ they are not equal then an is
+ thrown.
+
+ The expected value
+ The actual value
+ The maximum acceptable difference between the
+ the expected and the actual
+ The message to display in case of failure
+
+
+
+ Verifies that two doubles are equal considering a delta. If the
+ expected value is infinity then the delta value is ignored. If
+ they are not equal then an is
+ thrown.
+
+ The expected value
+ The actual value
+ The maximum acceptable difference between the
+ the expected and the actual
+
+
+
+ Verifies that two objects are equal. Two objects are considered
+ equal if both are null, or if both have the same value. NUnit
+ has special semantics for some object types.
+ If they are not equal an is thrown.
+
+ The value that is expected
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two objects are equal. Two objects are considered
+ equal if both are null, or if both have the same value. NUnit
+ has special semantics for some object types.
+ If they are not equal an is thrown.
+
+ The value that is expected
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two objects are equal. Two objects are considered
+ equal if both are null, or if both have the same value. NUnit
+ has special semantics for some object types.
+ If they are not equal an is thrown.
+
+ The value that is expected
+ The actual value
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two values are not equal. If they are equal, then an
+ is thrown.
+
+ The expected value
+ The actual value
+
+
+
+ Verifies that two objects are not equal. Two objects are considered
+ equal if both are null, or if both have the same value. NUnit
+ has special semantics for some object types.
+ If they are equal an is thrown.
+
+ The value that is expected
+ The actual value
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that two objects are not equal. Two objects are considered
+ equal if both are null, or if both have the same value. NUnit
+ has special semantics for some object types.
+ If they are equal an is thrown.
+
+ The value that is expected
+ The actual value
+ The message to display in case of failure
+
+
+
+ Verifies that two objects are not equal. Two objects are considered
+ equal if both are null, or if both have the same value. NUnit
+ has special semantics for some object types.
+ If they are equal an is thrown.
+
+ The value that is expected
+ The actual value
+
+
+
+ Asserts that two objects refer to the same object. If they
+ are not the same an is thrown.
+
+ The expected object
+ The actual object
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that two objects refer to the same object. If they
+ are not the same an is thrown.
+
+ The expected object
+ The actual object
+ The message to display in case of failure
+
+
+
+ Asserts that two objects refer to the same object. If they
+ are not the same an is thrown.
+
+ The expected object
+ The actual object
+
+
+
+ Asserts that two objects do not refer to the same object. If they
+ are the same an is thrown.
+
+ The expected object
+ The actual object
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that two objects do not refer to the same object. If they
+ are the same an is thrown.
+
+ The expected object
+ The actual object
+ The message to display in case of failure
+
+
+
+ Asserts that two objects do not refer to the same object. If they
+ are the same an is thrown.
+
+ The expected object
+ The actual object
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is greater than or equal tothe second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be greater
+ The second value, expected to be less
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+ The message to display in case of failure
+
+
+
+ Verifies that the first value is less than or equal to the second
+ value. If it is not, then an
+ is thrown.
+
+ The first value, expected to be less
+ The second value, expected to be greater
+
+
+
+ Asserts that an object is contained in a list.
+
+ The expected object
+ The list to be examined
+ The message to display in case of failure
+ Array of objects to be used in formatting the message
+
+
+
+ Asserts that an object is contained in a list.
+
+ The expected object
+ The list to be examined
+ The message to display in case of failure
+
+
+
+ Asserts that an object is contained in a list.
+
+ The expected object
+ The list to be examined
+
+
+
+ Gets the number of assertions executed so far and
+ resets the counter to zero.
+
+
+
+
+ AssertionHelper is an optional base class for user tests,
+ allowing the use of shorter names for constraints and
+ asserts and avoiding conflict with the definition of
+ , from which it inherits much of its
+ behavior, in certain mock object frameworks.
+
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure. Works
+ identically to
+
+ A Constraint to be applied
+ The actual value to test
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure. Works
+ identically to
+
+ A Constraint to be applied
+ The actual value to test
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure. Works
+ identically to
+
+ A Constraint to be applied
+ The actual value to test
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint expression to be applied
+ An ActualValueDelegate returning the value to be tested
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint expression to be applied
+ An ActualValueDelegate returning the value to be tested
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ An ActualValueDelegate returning the value to be tested
+ A Constraint expression to be applied
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an assertion exception on failure.
+
+ A Constraint to be applied
+ The actual value to test
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an . Works Identically to
+ .
+
+ The evaluated condition
+ The message to display if the condition is false
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an . Works Identically to
+ .
+
+ The evaluated condition
+ The message to display if the condition is false
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an . Works Identically to .
+
+ The evaluated condition
+
+
+
+ Asserts that the code represented by a delegate throws an exception
+ that satisfies the constraint provided.
+
+ A TestDelegate to be executed
+ A ThrowsConstraint used in the test
+
+
+
+ Returns a ListMapper based on a collection.
+
+ The original collection
+
+
+
+
+ Provides static methods to express the assumptions
+ that must be met for a test to give a meaningful
+ result. If an assumption is not met, the test
+ should produce an inconclusive result.
+
+
+
+
+ The Equals method throws an AssertionException. This is done
+ to make sure there is no mistake by calling this function.
+
+
+
+
+
+
+ override the default ReferenceEquals to throw an AssertionException. This
+ implementation makes sure there is no mistake in calling this function
+ as part of Assert.
+
+
+
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ The actual value to test
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ The actual value to test
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ The actual value to test
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ An ActualValueDelegate returning the value to be tested
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ An ActualValueDelegate returning the value to be tested
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to an actual value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ An ActualValueDelegate returning the value to be tested
+ A Constraint expression to be applied
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ The actual value to test
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ The actual value to test
+ The message that will be displayed on failure
+
+
+
+ Apply a constraint to a referenced value, succeeding if the constraint
+ is satisfied and throwing an InconclusiveException on failure.
+
+ A Constraint expression to be applied
+ The actual value to test
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display if the condition is false
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that a condition is true. If the condition is false the method throws
+ an .
+
+ The evaluated condition
+ The message to display if the condition is false
+
+
+
+ Asserts that a condition is true. If the condition is false the
+ method throws an .
+
+ The evaluated condition
+
+
+
+ Asserts that the code represented by a delegate throws an exception
+ that satisfies the constraint provided.
+
+ A TestDelegate to be executed
+ A ThrowsConstraint used in the test
+
+
+
+ A set of Assert methods operationg on one or more collections
+
+
+
+
+ The Equals method throws an AssertionException. This is done
+ to make sure there is no mistake by calling this function.
+
+
+
+
+
+
+ override the default ReferenceEquals to throw an AssertionException. This
+ implementation makes sure there is no mistake in calling this function
+ as part of Assert.
+
+
+
+
+
+
+ Asserts that all items contained in collection are of the type specified by expectedType.
+
+ IEnumerable containing objects to be considered
+ System.Type that all objects in collection must be instances of
+
+
+
+ Asserts that all items contained in collection are of the type specified by expectedType.
+
+ IEnumerable containing objects to be considered
+ System.Type that all objects in collection must be instances of
+ The message that will be displayed on failure
+
+
+
+ Asserts that all items contained in collection are of the type specified by expectedType.
+
+ IEnumerable containing objects to be considered
+ System.Type that all objects in collection must be instances of
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that all items contained in collection are not equal to null.
+
+ IEnumerable containing objects to be considered
+
+
+
+ Asserts that all items contained in collection are not equal to null.
+
+ IEnumerable containing objects to be considered
+ The message that will be displayed on failure
+
+
+
+ Asserts that all items contained in collection are not equal to null.
+
+ IEnumerable of objects to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Ensures that every object contained in collection exists within the collection
+ once and only once.
+
+ IEnumerable of objects to be considered
+
+
+
+ Ensures that every object contained in collection exists within the collection
+ once and only once.
+
+ IEnumerable of objects to be considered
+ The message that will be displayed on failure
+
+
+
+ Ensures that every object contained in collection exists within the collection
+ once and only once.
+
+ IEnumerable of objects to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that expected and actual are exactly equal. The collections must have the same count,
+ and contain the exact same objects in the same order.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+
+
+
+ Asserts that expected and actual are exactly equal. The collections must have the same count,
+ and contain the exact same objects in the same order.
+ If comparer is not null then it will be used to compare the objects.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The IComparer to use in comparing objects from each IEnumerable
+
+
+
+ Asserts that expected and actual are exactly equal. The collections must have the same count,
+ and contain the exact same objects in the same order.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+
+
+
+ Asserts that expected and actual are exactly equal. The collections must have the same count,
+ and contain the exact same objects in the same order.
+ If comparer is not null then it will be used to compare the objects.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The IComparer to use in comparing objects from each IEnumerable
+ The message that will be displayed on failure
+
+
+
+ Asserts that expected and actual are exactly equal. The collections must have the same count,
+ and contain the exact same objects in the same order.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that expected and actual are exactly equal. The collections must have the same count,
+ and contain the exact same objects in the same order.
+ If comparer is not null then it will be used to compare the objects.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The IComparer to use in comparing objects from each IEnumerable
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that expected and actual are equivalent, containing the same objects but the match may be in any order.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+
+
+
+ Asserts that expected and actual are equivalent, containing the same objects but the match may be in any order.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+
+
+
+ Asserts that expected and actual are equivalent, containing the same objects but the match may be in any order.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that expected and actual are not exactly equal.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+
+
+
+ Asserts that expected and actual are not exactly equal.
+ If comparer is not null then it will be used to compare the objects.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The IComparer to use in comparing objects from each IEnumerable
+
+
+
+ Asserts that expected and actual are not exactly equal.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+
+
+
+ Asserts that expected and actual are not exactly equal.
+ If comparer is not null then it will be used to compare the objects.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The IComparer to use in comparing objects from each IEnumerable
+ The message that will be displayed on failure
+
+
+
+ Asserts that expected and actual are not exactly equal.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that expected and actual are not exactly equal.
+ If comparer is not null then it will be used to compare the objects.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The IComparer to use in comparing objects from each IEnumerable
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that expected and actual are not equivalent.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+
+
+
+ Asserts that expected and actual are not equivalent.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+
+
+
+ Asserts that expected and actual are not equivalent.
+
+ The first IEnumerable of objects to be considered
+ The second IEnumerable of objects to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that collection contains actual as an item.
+
+ IEnumerable of objects to be considered
+ Object to be found within collection
+
+
+
+ Asserts that collection contains actual as an item.
+
+ IEnumerable of objects to be considered
+ Object to be found within collection
+ The message that will be displayed on failure
+
+
+
+ Asserts that collection contains actual as an item.
+
+ IEnumerable of objects to be considered
+ Object to be found within collection
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that collection does not contain actual as an item.
+
+ IEnumerable of objects to be considered
+ Object that cannot exist within collection
+
+
+
+ Asserts that collection does not contain actual as an item.
+
+ IEnumerable of objects to be considered
+ Object that cannot exist within collection
+ The message that will be displayed on failure
+
+
+
+ Asserts that collection does not contain actual as an item.
+
+ IEnumerable of objects to be considered
+ Object that cannot exist within collection
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that superset is not a subject of subset.
+
+ The IEnumerable superset to be considered
+ The IEnumerable subset to be considered
+
+
+
+ Asserts that superset is not a subject of subset.
+
+ The IEnumerable superset to be considered
+ The IEnumerable subset to be considered
+ The message that will be displayed on failure
+
+
+
+ Asserts that superset is not a subject of subset.
+
+ The IEnumerable superset to be considered
+ The IEnumerable subset to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that superset is a subset of subset.
+
+ The IEnumerable superset to be considered
+ The IEnumerable subset to be considered
+
+
+
+ Asserts that superset is a subset of subset.
+
+ The IEnumerable superset to be considered
+ The IEnumerable subset to be considered
+ The message that will be displayed on failure
+
+
+
+ Asserts that superset is a subset of subset.
+
+ The IEnumerable superset to be considered
+ The IEnumerable subset to be considered
+ The message that will be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Assert that an array, list or other collection is empty
+
+ An array, list or other collection implementing IEnumerable
+ The message to be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Assert that an array, list or other collection is empty
+
+ An array, list or other collection implementing IEnumerable
+ The message to be displayed on failure
+
+
+
+ Assert that an array,list or other collection is empty
+
+ An array, list or other collection implementing IEnumerable
+
+
+
+ Assert that an array, list or other collection is empty
+
+ An array, list or other collection implementing IEnumerable
+ The message to be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Assert that an array, list or other collection is empty
+
+ An array, list or other collection implementing IEnumerable
+ The message to be displayed on failure
+
+
+
+ Assert that an array,list or other collection is empty
+
+ An array, list or other collection implementing IEnumerable
+
+
+
+ Assert that an array, list or other collection is ordered
+
+ An array, list or other collection implementing IEnumerable
+ The message to be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Assert that an array, list or other collection is ordered
+
+ An array, list or other collection implementing IEnumerable
+ The message to be displayed on failure
+
+
+
+ Assert that an array, list or other collection is ordered
+
+ An array, list or other collection implementing IEnumerable
+
+
+
+ Assert that an array, list or other collection is ordered
+
+ An array, list or other collection implementing IEnumerable
+ A custom comparer to perform the comparisons
+ The message to be displayed on failure
+ Arguments to be used in formatting the message
+
+
+
+ Assert that an array, list or other collection is ordered
+
+ An array, list or other collection implementing IEnumerable
+ A custom comparer to perform the comparisons
+ The message to be displayed on failure
+
+
+
+ Assert that an array, list or other collection is ordered
+
+ An array, list or other collection implementing IEnumerable
+ A custom comparer to perform the comparisons
+
+
+
+ Static helper class used in the constraint-based syntax
+
+
+
+
+ Creates a new SubstringConstraint
+
+ The value of the substring
+ A SubstringConstraint
+
+
+
+ Creates a new CollectionContainsConstraint.
+
+ The item that should be found.
+ A new CollectionContainsConstraint
+
+
+
+ Summary description for DirectoryAssert
+
+
+
+
+ The Equals method throws an AssertionException. This is done
+ to make sure there is no mistake by calling this function.
+
+
+
+
+
+
+ override the default ReferenceEquals to throw an AssertionException. This
+ implementation makes sure there is no mistake in calling this function
+ as part of Assert.
+
+
+
+
+
+
+ We don't actually want any instances of this object, but some people
+ like to inherit from it to add other static methods. Hence, the
+ protected constructor disallows any instances of this object.
+
+
+
+
+ Verifies that two directories are equal. Two directories are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A directory containing the value that is expected
+ A directory containing the actual value
+ The message to display if directories are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that two directories are equal. Two directories are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A directory containing the value that is expected
+ A directory containing the actual value
+ The message to display if directories are not equal
+
+
+
+ Verifies that two directories are equal. Two directories are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A directory containing the value that is expected
+ A directory containing the actual value
+
+
+
+ Verifies that two directories are equal. Two directories are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A directory path string containing the value that is expected
+ A directory path string containing the actual value
+ The message to display if directories are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that two directories are equal. Two directories are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A directory path string containing the value that is expected
+ A directory path string containing the actual value
+ The message to display if directories are not equal
+
+
+
+ Verifies that two directories are equal. Two directories are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A directory path string containing the value that is expected
+ A directory path string containing the actual value
+
+
+
+ Asserts that two directories are not equal. If they are equal
+ an is thrown.
+
+ A directory containing the value that is expected
+ A directory containing the actual value
+ The message to display if directories are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that two directories are not equal. If they are equal
+ an is thrown.
+
+ A directory containing the value that is expected
+ A directory containing the actual value
+ The message to display if directories are not equal
+
+
+
+ Asserts that two directories are not equal. If they are equal
+ an is thrown.
+
+ A directory containing the value that is expected
+ A directory containing the actual value
+
+
+
+ Asserts that two directories are not equal. If they are equal
+ an is thrown.
+
+ A directory path string containing the value that is expected
+ A directory path string containing the actual value
+ The message to display if directories are equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that two directories are not equal. If they are equal
+ an is thrown.
+
+ A directory path string containing the value that is expected
+ A directory path string containing the actual value
+ The message to display if directories are equal
+
+
+
+ Asserts that two directories are not equal. If they are equal
+ an is thrown.
+
+ A directory path string containing the value that is expected
+ A directory path string containing the actual value
+
+
+
+ Asserts that the directory is empty. If it is not empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that the directory is empty. If it is not empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+
+
+
+ Asserts that the directory is empty. If it is not empty
+ an is thrown.
+
+ A directory to search
+
+
+
+ Asserts that the directory is empty. If it is not empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that the directory is empty. If it is not empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+
+
+
+ Asserts that the directory is empty. If it is not empty
+ an is thrown.
+
+ A directory to search
+
+
+
+ Asserts that the directory is not empty. If it is empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that the directory is not empty. If it is empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+
+
+
+ Asserts that the directory is not empty. If it is empty
+ an is thrown.
+
+ A directory to search
+
+
+
+ Asserts that the directory is not empty. If it is empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that the directory is not empty. If it is empty
+ an is thrown.
+
+ A directory to search
+ The message to display if directories are not equal
+
+
+
+ Asserts that the directory is not empty. If it is empty
+ an is thrown.
+
+ A directory to search
+
+
+
+ Asserts that path contains actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that path contains actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+
+
+
+ Asserts that path contains actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+
+
+
+ Asserts that path contains actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that path contains actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+
+
+
+ Asserts that path contains actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+
+
+
+ Asserts that path does not contain actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that path does not contain actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+
+
+
+ Asserts that path does not contain actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+
+
+
+ Asserts that path does not contain actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that path does not contain actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+ The message to display if directory is not within the path
+
+
+
+ Asserts that path does not contain actual as a subdirectory or
+ an is thrown.
+
+ A directory to search
+ sub-directory asserted to exist under directory
+
+
+
+ Summary description for FileAssert.
+
+
+
+
+ The Equals method throws an AssertionException. This is done
+ to make sure there is no mistake by calling this function.
+
+
+
+
+
+
+ override the default ReferenceEquals to throw an AssertionException. This
+ implementation makes sure there is no mistake in calling this function
+ as part of Assert.
+
+
+
+
+
+
+ We don't actually want any instances of this object, but some people
+ like to inherit from it to add other static methods. Hence, the
+ protected constructor disallows any instances of this object.
+
+
+
+
+ Verifies that two Streams are equal. Two Streams are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ The expected Stream
+ The actual Stream
+ The message to display if Streams are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that two Streams are equal. Two Streams are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ The expected Stream
+ The actual Stream
+ The message to display if objects are not equal
+
+
+
+ Verifies that two Streams are equal. Two Streams are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ The expected Stream
+ The actual Stream
+
+
+
+ Verifies that two files are equal. Two files are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A file containing the value that is expected
+ A file containing the actual value
+ The message to display if Streams are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that two files are equal. Two files are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A file containing the value that is expected
+ A file containing the actual value
+ The message to display if objects are not equal
+
+
+
+ Verifies that two files are equal. Two files are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ A file containing the value that is expected
+ A file containing the actual value
+
+
+
+ Verifies that two files are equal. Two files are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ The path to a file containing the value that is expected
+ The path to a file containing the actual value
+ The message to display if Streams are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Verifies that two files are equal. Two files are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ The path to a file containing the value that is expected
+ The path to a file containing the actual value
+ The message to display if objects are not equal
+
+
+
+ Verifies that two files are equal. Two files are considered
+ equal if both are null, or if both have the same value byte for byte.
+ If they are not equal an is thrown.
+
+ The path to a file containing the value that is expected
+ The path to a file containing the actual value
+
+
+
+ Asserts that two Streams are not equal. If they are equal
+ an is thrown.
+
+ The expected Stream
+ The actual Stream
+ The message to be displayed when the two Stream are the same.
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that two Streams are not equal. If they are equal
+ an is thrown.
+
+ The expected Stream
+ The actual Stream
+ The message to be displayed when the Streams are the same.
+
+
+
+ Asserts that two Streams are not equal. If they are equal
+ an is thrown.
+
+ The expected Stream
+ The actual Stream
+
+
+
+ Asserts that two files are not equal. If they are equal
+ an is thrown.
+
+ A file containing the value that is expected
+ A file containing the actual value
+ The message to display if Streams are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that two files are not equal. If they are equal
+ an is thrown.
+
+ A file containing the value that is expected
+ A file containing the actual value
+ The message to display if objects are not equal
+
+
+
+ Asserts that two files are not equal. If they are equal
+ an is thrown.
+
+ A file containing the value that is expected
+ A file containing the actual value
+
+
+
+ Asserts that two files are not equal. If they are equal
+ an is thrown.
+
+ The path to a file containing the value that is expected
+ The path to a file containing the actual value
+ The message to display if Streams are not equal
+ Arguments to be used in formatting the message
+
+
+
+ Asserts that two files are not equal. If they are equal
+ an is thrown.
+
+ The path to a file containing the value that is expected
+ The path to a file containing the actual value
+ The message to display if objects are not equal
+
+
+
+ Asserts that two files are not equal. If they are equal
+ an is thrown.
+
+ The path to a file containing the value that is expected
+ The path to a file containing the actual value
+
+
+
+ GlobalSettings is a place for setting default values used
+ by the framework in performing asserts.
+
+
+
+
+ Default tolerance for floating point equality
+
+
+
+
+ Helper class with properties and methods that supply
+ a number of constraints used in Asserts.
+
+
+
+
+ Returns a new PropertyConstraintExpression, which will either
+ test for the existence of the named property on the object
+ being tested or apply any following constraint to that property.
+
+
+
+
+ Returns a new AttributeConstraint checking for the
+ presence of a particular attribute on an object.
+
+
+
+
+ Returns a new AttributeConstraint checking for the
+ presence of a particular attribute on an object.
+
+
+
+
+ Returns a new CollectionContainsConstraint checking for the
+ presence of a particular object in the collection.
+
+
+
+
+ Returns a ConstraintExpression that negates any
+ following constraint.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them succeed.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if at least one of them succeeds.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them fail.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Length property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Count property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the Message property of the object being tested.
+
+
+
+
+ Returns a new ConstraintExpression, which will apply the following
+ constraint to the InnerException property of the object being tested.
+
+
+
+
+ Interface implemented by a user fixture in order to
+ validate any expected exceptions. It is only called
+ for test methods marked with the ExpectedException
+ attribute.
+
+
+
+
+ Method to handle an expected exception
+
+ The exception to be handled
+
+
+
+ Helper class with properties and methods that supply
+ a number of constraints used in Asserts.
+
+
+
+
+ Returns a constraint that tests two items for equality
+
+
+
+
+ Returns a constraint that tests that two references are the same object
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is greater than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the
+ actual value is less than or equal to the suppled argument
+
+
+
+
+ Returns a constraint that tests whether the actual
+ value is of the exact type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual
+ value is of the exact type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is of the type supplied as an argument or a derived type.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is assignable from the type supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is a collection containing the same elements as the
+ collection supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the actual value
+ is a subset of the collection supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value matches the Regex pattern supplied as an argument.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same as an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same path or under an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the path provided
+ is the same path or under an expected path after canonicalization.
+
+
+
+
+ Returns a constraint that tests whether the actual value falls
+ within a specified range.
+
+
+
+
+ Returns a ConstraintExpression that negates any
+ following constraint.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them succeed.
+
+
+
+
+ Returns a constraint that tests for null
+
+
+
+
+ Returns a constraint that tests for True
+
+
+
+
+ Returns a constraint that tests for False
+
+
+
+
+ Returns a constraint that tests for NaN
+
+
+
+
+ Returns a constraint that tests for empty
+
+
+
+
+ Returns a constraint that tests whether a collection
+ contains all unique items.
+
+
+
+
+ Returns a constraint that tests whether an object graph is serializable in binary format.
+
+
+
+
+ Returns a constraint that tests whether an object graph is serializable in xml format.
+
+
+
+
+ Returns a constraint that tests whether a collection is ordered
+
+
+
+
+ The Iz class is a synonym for Is intended for use in VB,
+ which regards Is as a keyword.
+
+
+
+
+ The List class is a helper class with properties and methods
+ that supply a number of constraints used with lists and collections.
+
+
+
+
+ List.Map returns a ListMapper, which can be used to map
+ the original collection to another collection.
+
+
+
+
+
+
+ ListMapper is used to transform a collection used as an actual argument
+ producing another collection to be used in the assertion.
+
+
+
+
+ Construct a ListMapper based on a collection
+
+ The collection to be transformed
+
+
+
+ Produces a collection containing all the values of a property
+
+ The collection of property values
+
+
+
+
+ Randomizer returns a set of random values in a repeatable
+ way, to allow re-running of tests if necessary.
+
+
+
+
+ Get a randomizer for a particular member, returning
+ one that has already been created if it exists.
+ This ensures that the same values are generated
+ each time the tests are reloaded.
+
+
+
+
+ Get a randomizer for a particular parameter, returning
+ one that has already been created if it exists.
+ This ensures that the same values are generated
+ each time the tests are reloaded.
+
+
+
+
+ Construct a randomizer using a random seed
+
+
+
+
+ Construct a randomizer using a specified seed
+
+
+
+
+ Return an array of random doubles between 0.0 and 1.0.
+
+
+
+
+
+
+ Return an array of random doubles with values in a specified range.
+
+
+
+
+ Return an array of random ints with values in a specified range.
+
+
+
+
+ Get a random seed for use in creating a randomizer.
+
+
+
+
+ The SpecialValue enum is used to represent TestCase arguments
+ that cannot be used as arguments to an Attribute.
+
+
+
+
+ Null represents a null value, which cannot be used as an
+ argument to an attriute under .NET 1.x
+
+
+
+
+ Basic Asserts on strings.
+
+
+
+
+ The Equals method throws an AssertionException. This is done
+ to make sure there is no mistake by calling this function.
+
+
+
+
+
+
+ override the default ReferenceEquals to throw an AssertionException. This
+ implementation makes sure there is no mistake in calling this function
+ as part of Assert.
+
+
+
+
+
+
+ Asserts that a string is found within another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string is found within another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+
+
+
+ Asserts that a string is found within another string.
+
+ The expected string
+ The string to be examined
+
+
+
+ Asserts that a string is not found within another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string is found within another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+
+
+
+ Asserts that a string is found within another string.
+
+ The expected string
+ The string to be examined
+
+
+
+ Asserts that a string starts with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string starts with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+
+
+
+ Asserts that a string starts with another string.
+
+ The expected string
+ The string to be examined
+
+
+
+ Asserts that a string does not start with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string does not start with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+
+
+
+ Asserts that a string does not start with another string.
+
+ The expected string
+ The string to be examined
+
+
+
+ Asserts that a string ends with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string ends with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+
+
+
+ Asserts that a string ends with another string.
+
+ The expected string
+ The string to be examined
+
+
+
+ Asserts that a string does not end with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string does not end with another string.
+
+ The expected string
+ The string to be examined
+ The message to display in case of failure
+
+
+
+ Asserts that a string does not end with another string.
+
+ The expected string
+ The string to be examined
+
+
+
+ Asserts that two strings are equal, without regard to case.
+
+ The expected string
+ The actual string
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that two strings are equal, without regard to case.
+
+ The expected string
+ The actual string
+ The message to display in case of failure
+
+
+
+ Asserts that two strings are equal, without regard to case.
+
+ The expected string
+ The actual string
+
+
+
+ Asserts that two strings are not equal, without regard to case.
+
+ The expected string
+ The actual string
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that two strings are Notequal, without regard to case.
+
+ The expected string
+ The actual string
+ The message to display in case of failure
+
+
+
+ Asserts that two strings are not equal, without regard to case.
+
+ The expected string
+ The actual string
+
+
+
+ Asserts that a string matches an expected regular expression pattern.
+
+ The regex pattern to be matched
+ The actual string
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string matches an expected regular expression pattern.
+
+ The regex pattern to be matched
+ The actual string
+ The message to display in case of failure
+
+
+
+ Asserts that a string matches an expected regular expression pattern.
+
+ The regex pattern to be matched
+ The actual string
+
+
+
+ Asserts that a string does not match an expected regular expression pattern.
+
+ The regex pattern to be used
+ The actual string
+ The message to display in case of failure
+ Arguments used in formatting the message
+
+
+
+ Asserts that a string does not match an expected regular expression pattern.
+
+ The regex pattern to be used
+ The actual string
+ The message to display in case of failure
+
+
+
+ Asserts that a string does not match an expected regular expression pattern.
+
+ The regex pattern to be used
+ The actual string
+
+
+
+ The TestCaseData class represents a set of arguments
+ and other parameter info to be used for a parameterized
+ test case. It provides a number of instance modifiers
+ for use in initializing the test case.
+
+ Note: Instance modifiers are getters that return
+ the same instance after modifying it's state.
+
+
+
+
+ The argument list to be provided to the test
+
+
+
+
+ The expected result to be returned
+
+
+
+
+ The expected exception Type
+
+
+
+
+ The FullName of the expected exception
+
+
+
+
+ The name to be used for the test
+
+
+
+
+ The description of the test
+
+
+
+
+ A dictionary of properties, used to add information
+ to tests without requiring the class to change.
+
+
+
+
+ If true, indicates that the test case is to be ignored
+
+
+
+
+ The reason for ignoring a test case
+
+
+
+
+ Initializes a new instance of the class.
+
+ The arguments.
+
+
+
+ Initializes a new instance of the class.
+
+ The argument.
+
+
+
+ Initializes a new instance of the class.
+
+ The first argument.
+ The second argument.
+
+
+
+ Initializes a new instance of the class.
+
+ The first argument.
+ The second argument.
+ The third argument.
+
+
+
+ Sets the expected result for the test
+
+ The expected result
+ A modified TestCaseData
+
+
+
+ Sets the expected exception type for the test
+
+ Type of the expected exception.
+ The modified TestCaseData instance
+
+
+
+ Sets the expected exception type for the test
+
+ FullName of the expected exception.
+ The modified TestCaseData instance
+
+
+
+ Sets the name of the test case
+
+ The modified TestCaseData instance
+
+
+
+ Sets the description for the test case
+ being constructed.
+
+ The description.
+ The modified TestCaseData instance.
+
+
+
+ Applies a category to the test
+
+
+
+
+
+
+ Applies a named property to the test
+
+
+
+
+
+
+
+ Applies a named property to the test
+
+
+
+
+
+
+
+ Applies a named property to the test
+
+
+
+
+
+
+
+ Ignores this TestCase.
+
+
+
+
+
+ Ignores this TestCase, specifying the reason.
+
+ The reason.
+
+
+
+
+ Gets the argument list to be provided to the test
+
+
+
+
+ Gets the expected result
+
+
+
+
+ Gets the expected exception Type
+
+
+
+
+ Gets the FullName of the expected exception
+
+
+
+
+ Gets the name to be used for the test
+
+
+
+
+ Gets the description of the test
+
+
+
+
+ Gets a value indicating whether this is ignored.
+
+ true if ignored; otherwise, false.
+
+
+
+ Gets the ignore reason.
+
+ The ignore reason.
+
+
+
+ Gets a list of categories associated with this test.
+
+
+
+
+ Gets the property dictionary for this test
+
+
+
+
+ Provide the context information of the current test
+
+
+
+
+ Constructs a TestContext using the provided context dictionary
+
+ A context dictionary
+
+
+
+ Get the current test context. This is created
+ as needed. The user may save the context for
+ use within a test, but it should not be used
+ outside the test for which it is created.
+
+
+
+
+ Gets a TestAdapter representing the currently executing test in this context.
+
+
+
+
+ Gets a ResultAdapter representing the current result for the test
+ executing in this context.
+
+
+
+
+ Gets the current directory for this TestContext
+
+
+
+
+ TestAdapter adapts a Test for consumption by
+ the user test code.
+
+
+
+
+ Constructs a TestAdapter for this context
+
+ The context dictionary
+
+
+
+ The name of the test.
+
+
+
+
+ The FullName of the test
+
+
+
+
+ The properties of the test.
+
+
+
+
+ ResultAdapter adapts a TestResult for consumption by
+ the user test code.
+
+
+
+
+ Construct a ResultAdapter for a context
+
+ The context holding the result
+
+
+
+ The TestState of current test. This maps to the ResultState
+ used in nunit.core and is subject to change in the future.
+
+
+
+
+ The TestStatus of current test. This enum will be used
+ in future versions of NUnit and so is to be preferred
+ to the TestState value.
+
+
+
+
+ The ResultState enum indicates the result of running a test
+
+
+
+
+ The result is inconclusive
+
+
+
+
+ The test was not runnable.
+
+
+
+
+ The test has been skipped.
+
+
+
+
+ The test has been ignored.
+
+
+
+
+ The test succeeded
+
+
+
+
+ The test failed
+
+
+
+
+ The test encountered an unexpected exception
+
+
+
+
+ The test was cancelled by the user
+
+
+
+
+ The TestStatus enum indicates the result of running a test
+
+
+
+
+ The test was inconclusive
+
+
+
+
+ The test has skipped
+
+
+
+
+ The test succeeded
+
+
+
+
+ The test failed
+
+
+
+
+ Helper class with static methods used to supply constraints
+ that operate on strings.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value contains the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value starts with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value ends with the substring supplied as an argument.
+
+
+
+
+ Returns a constraint that succeeds if the actual
+ value matches the Regex pattern supplied as an argument.
+
+
+
+
+ Returns a constraint that fails if the actual
+ value matches the pattern supplied as an argument.
+
+
+
+
+ Returns a ConstraintExpression, which will apply
+ the following constraint to all members of a collection,
+ succeeding if all of them succeed.
+
+
+
+
+ TextMessageWriter writes constraint descriptions and messages
+ in displayable form as a text stream. It tailors the display
+ of individual message components to form the standard message
+ format of NUnit assertion failure messages.
+
+
+
+
+ Prefix used for the expected value line of a message
+
+
+
+
+ Prefix used for the actual value line of a message
+
+
+
+
+ Length of a message prefix
+
+
+
+
+ Construct a TextMessageWriter
+
+
+
+
+ Construct a TextMessageWriter, specifying a user message
+ and optional formatting arguments.
+
+
+
+
+
+
+ Method to write single line message with optional args, usually
+ written to precede the general failure message, at a givel
+ indentation level.
+
+ The indentation level of the message
+ The message to be written
+ Any arguments used in formatting the message
+
+
+
+ Display Expected and Actual lines for a constraint. This
+ is called by MessageWriter's default implementation of
+ WriteMessageTo and provides the generic two-line display.
+
+ The constraint that failed
+
+
+
+ Display Expected and Actual lines for given values. This
+ method may be called by constraints that need more control over
+ the display of actual and expected values than is provided
+ by the default implementation.
+
+ The expected value
+ The actual value causing the failure
+
+
+
+ Display Expected and Actual lines for given values, including
+ a tolerance value on the expected line.
+
+ The expected value
+ The actual value causing the failure
+ The tolerance within which the test was made
+
+
+
+ Display the expected and actual string values on separate lines.
+ If the mismatch parameter is >=0, an additional line is displayed
+ line containing a caret that points to the mismatch point.
+
+ The expected string value
+ The actual string value
+ The point at which the strings don't match or -1
+ If true, case is ignored in string comparisons
+ If true, clip the strings to fit the max line length
+
+
+
+ Writes the text for a connector.
+
+ The connector.
+
+
+
+ Writes the text for a predicate.
+
+ The predicate.
+
+
+
+ Write the text for a modifier.
+
+ The modifier.
+
+
+
+ Writes the text for an expected value.
+
+ The expected value.
+
+
+
+ Writes the text for an actual value.
+
+ The actual value.
+
+
+
+ Writes the text for a generalized value.
+
+ The value.
+
+
+
+ Writes the text for a collection value,
+ starting at a particular point, to a max length
+
+ The collection containing elements to write.
+ The starting point of the elements to write
+ The maximum number of elements to write
+
+
+
+ Write the generic 'Expected' line for a constraint
+
+ The constraint that failed
+
+
+
+ Write the generic 'Expected' line for a given value
+
+ The expected value
+
+
+
+ Write the generic 'Expected' line for a given value
+ and tolerance.
+
+ The expected value
+ The tolerance within which the test was made
+
+
+
+ Write the generic 'Actual' line for a constraint
+
+ The constraint for which the actual value is to be written
+
+
+
+ Write the generic 'Actual' line for a given value
+
+ The actual value causing a failure
+
+
+
+ Gets or sets the maximum line length for this writer
+
+
+
+
+ Helper class with properties and methods that supply
+ constraints that operate on exceptions.
+
+
+
+
+ Creates a constraint specifying the exact type of exception expected
+
+
+
+
+ Creates a constraint specifying the exact type of exception expected
+
+
+
+
+ Creates a constraint specifying the type of exception expected
+
+
+
+
+ Creates a constraint specifying the type of exception expected
+
+
+
+
+ Creates a constraint specifying an expected exception
+
+
+
+
+ Creates a constraint specifying an exception with a given InnerException
+
+
+
+
+ Creates a constraint specifying an expected TargetInvocationException
+
+
+
+
+ Creates a constraint specifying an expected TargetInvocationException
+
+
+
+
+ Creates a constraint specifying an expected TargetInvocationException
+
+
+
+
+ Creates a constraint specifying that no exception is thrown
+
+
+
+
diff --git a/lib/NUnit/lib/nunit.mocks.dll b/lib/NUnit/lib/nunit.mocks.dll
new file mode 100644
index 0000000000..6ee2c1cc20
Binary files /dev/null and b/lib/NUnit/lib/nunit.mocks.dll differ
diff --git a/lib/NUnit/lib/pnunit.framework.dll b/lib/NUnit/lib/pnunit.framework.dll
new file mode 100644
index 0000000000..6c105d70f9
Binary files /dev/null and b/lib/NUnit/lib/pnunit.framework.dll differ
diff --git a/lib/nunit-license.txt b/lib/NUnit/license.txt
similarity index 89%
rename from lib/nunit-license.txt
rename to lib/NUnit/license.txt
index 4beb762c93..ab91df4496 100644
--- a/lib/nunit-license.txt
+++ b/lib/NUnit/license.txt
@@ -1,15 +1,15 @@
-Copyright 2002-2007 Charlie Poole
-Copyright 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov
-Copyright 2000-2002 Philip A. Craig
-
-This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
-
-Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
-
-1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment (see the following) in the product documentation is required.
-
-Portions Copyright 2002-2007 Charlie Poole or Copyright 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov or Copyright 2000-2002 Philip A. Craig
-
-2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
-
-3. This notice may not be removed or altered from any source distribution.
+Copyright 2002-2008 Charlie Poole
+Copyright 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov
+Copyright 2000-2002 Philip A. Craig
+
+This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
+
+Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:
+
+1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment (see the following) in the product documentation is required.
+
+Portions Copyright 2002-2008 Charlie Poole or Copyright 2002-2004 James W. Newkirk, Michael C. Two, Alexei A. Vorontsov or Copyright 2000-2002 Philip A. Craig
+
+2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
+
+3. This notice may not be removed or altered from any source distribution.
diff --git a/lib/NUnit/tools/NUnitTests.VisualState.xml b/lib/NUnit/tools/NUnitTests.VisualState.xml
new file mode 100644
index 0000000000..603cda770e
--- /dev/null
+++ b/lib/NUnit/tools/NUnitTests.VisualState.xml
@@ -0,0 +1,124 @@
+
+
+ [0-1000]D:\Dev\NUnit\nunit-2.5\work\build\net\2.0\release\NUnitTests.nunit
+ [0-1000]D:\Dev\NUnit\nunit-2.5\work\build\net\2.0\release\NUnitTests.nunit
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit 2.2.8.0/NUnitTests.config b/lib/NUnit/tools/NUnitTests.config
similarity index 62%
rename from lib/NUnit 2.2.8.0/NUnitTests.config
rename to lib/NUnit/tools/NUnitTests.config
index 4e6cfce9e5..9487c07d26 100644
--- a/lib/NUnit 2.2.8.0/NUnitTests.config
+++ b/lib/NUnit/tools/NUnitTests.config
@@ -1,76 +1,85 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/NUnit/tools/NUnitTests.nunit b/lib/NUnit/tools/NUnitTests.nunit
new file mode 100644
index 0000000000..bb80dd6492
--- /dev/null
+++ b/lib/NUnit/tools/NUnitTests.nunit
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/NUnit/tools/TestResult.xml b/lib/NUnit/tools/TestResult.xml
new file mode 100644
index 0000000000..058d42bf88
--- /dev/null
+++ b/lib/NUnit/tools/TestResult.xml
@@ -0,0 +1,5971 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/agent.conf b/lib/NUnit/tools/agent.conf
new file mode 100644
index 0000000000..b4cf5509e7
--- /dev/null
+++ b/lib/NUnit/tools/agent.conf
@@ -0,0 +1,4 @@
+
+ 8080
+ .
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/agent.log.conf b/lib/NUnit/tools/agent.log.conf
new file mode 100644
index 0000000000..d340cad1e9
--- /dev/null
+++ b/lib/NUnit/tools/agent.log.conf
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/NUnit/tools/launcher.log.conf b/lib/NUnit/tools/launcher.log.conf
new file mode 100644
index 0000000000..d340cad1e9
--- /dev/null
+++ b/lib/NUnit/tools/launcher.log.conf
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/NUnit/tools/lib/Failure.png b/lib/NUnit/tools/lib/Failure.png
new file mode 100644
index 0000000000..2e400b276f
Binary files /dev/null and b/lib/NUnit/tools/lib/Failure.png differ
diff --git a/lib/NUnit/tools/lib/Ignored.png b/lib/NUnit/tools/lib/Ignored.png
new file mode 100644
index 0000000000..478efbf00b
Binary files /dev/null and b/lib/NUnit/tools/lib/Ignored.png differ
diff --git a/lib/NUnit/tools/lib/Inconclusive.png b/lib/NUnit/tools/lib/Inconclusive.png
new file mode 100644
index 0000000000..4807b7cedb
Binary files /dev/null and b/lib/NUnit/tools/lib/Inconclusive.png differ
diff --git a/lib/NUnit/tools/lib/Skipped.png b/lib/NUnit/tools/lib/Skipped.png
new file mode 100644
index 0000000000..7c9fc64e38
Binary files /dev/null and b/lib/NUnit/tools/lib/Skipped.png differ
diff --git a/lib/NUnit/tools/lib/Success.png b/lib/NUnit/tools/lib/Success.png
new file mode 100644
index 0000000000..2a301508c6
Binary files /dev/null and b/lib/NUnit/tools/lib/Success.png differ
diff --git a/lib/NUnit/tools/lib/fit.dll b/lib/NUnit/tools/lib/fit.dll
new file mode 100644
index 0000000000..40bbef0e29
Binary files /dev/null and b/lib/NUnit/tools/lib/fit.dll differ
diff --git a/lib/NUnit/tools/lib/log4net.dll b/lib/NUnit/tools/lib/log4net.dll
new file mode 100644
index 0000000000..20a2e1c47d
Binary files /dev/null and b/lib/NUnit/tools/lib/log4net.dll differ
diff --git a/lib/NUnit/tools/lib/nunit-console-runner.dll b/lib/NUnit/tools/lib/nunit-console-runner.dll
new file mode 100644
index 0000000000..1709ce7bd2
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit-console-runner.dll differ
diff --git a/lib/NUnit/tools/lib/nunit-gui-runner.dll b/lib/NUnit/tools/lib/nunit-gui-runner.dll
new file mode 100644
index 0000000000..35efa737c3
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit-gui-runner.dll differ
diff --git a/lib/NUnit/tools/lib/nunit.core.dll b/lib/NUnit/tools/lib/nunit.core.dll
new file mode 100644
index 0000000000..a1dd69866d
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit.core.dll differ
diff --git a/lib/NUnit/tools/lib/nunit.core.interfaces.dll b/lib/NUnit/tools/lib/nunit.core.interfaces.dll
new file mode 100644
index 0000000000..0ac8788205
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit.core.interfaces.dll differ
diff --git a/lib/NUnit/tools/lib/nunit.fixtures.dll b/lib/NUnit/tools/lib/nunit.fixtures.dll
new file mode 100644
index 0000000000..8fd1932d75
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit.fixtures.dll differ
diff --git a/lib/NUnit/tools/lib/nunit.uiexception.dll b/lib/NUnit/tools/lib/nunit.uiexception.dll
new file mode 100644
index 0000000000..610c1700ed
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit.uiexception.dll differ
diff --git a/lib/NUnit/tools/lib/nunit.uikit.dll b/lib/NUnit/tools/lib/nunit.uikit.dll
new file mode 100644
index 0000000000..9087db2d16
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit.uikit.dll differ
diff --git a/lib/NUnit/tools/lib/nunit.util.dll b/lib/NUnit/tools/lib/nunit.util.dll
new file mode 100644
index 0000000000..0b315c2106
Binary files /dev/null and b/lib/NUnit/tools/lib/nunit.util.dll differ
diff --git a/lib/NUnit/tools/nunit-agent-x86.exe b/lib/NUnit/tools/nunit-agent-x86.exe
new file mode 100644
index 0000000000..ebcee1be24
Binary files /dev/null and b/lib/NUnit/tools/nunit-agent-x86.exe differ
diff --git a/lib/NUnit 2.2.8.0/nunit-console.v4.0.config b/lib/NUnit/tools/nunit-agent-x86.exe.config
similarity index 58%
rename from lib/NUnit 2.2.8.0/nunit-console.v4.0.config
rename to lib/NUnit/tools/nunit-agent-x86.exe.config
index 999eed1c61..84c2906d6e 100644
--- a/lib/NUnit 2.2.8.0/nunit-console.v4.0.config
+++ b/lib/NUnit/tools/nunit-agent-x86.exe.config
@@ -1,102 +1,69 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/nunit-agent.exe b/lib/NUnit/tools/nunit-agent.exe
new file mode 100644
index 0000000000..ec41f32382
Binary files /dev/null and b/lib/NUnit/tools/nunit-agent.exe differ
diff --git a/lib/NUnit 2.2.8.0/mock-assembly.dll.config b/lib/NUnit/tools/nunit-agent.exe.config
similarity index 56%
rename from lib/NUnit 2.2.8.0/mock-assembly.dll.config
rename to lib/NUnit/tools/nunit-agent.exe.config
index 22f0349409..84c2906d6e 100644
--- a/lib/NUnit 2.2.8.0/mock-assembly.dll.config
+++ b/lib/NUnit/tools/nunit-agent.exe.config
@@ -1,60 +1,69 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/nunit-console-x86.exe b/lib/NUnit/tools/nunit-console-x86.exe
new file mode 100644
index 0000000000..e08ac9c81d
Binary files /dev/null and b/lib/NUnit/tools/nunit-console-x86.exe differ
diff --git a/lib/NUnit/tools/nunit-console-x86.exe.config b/lib/NUnit/tools/nunit-console-x86.exe.config
new file mode 100644
index 0000000000..ce92b5b41f
--- /dev/null
+++ b/lib/NUnit/tools/nunit-console-x86.exe.config
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/nunit-console.exe b/lib/NUnit/tools/nunit-console.exe
new file mode 100644
index 0000000000..1544a9d831
Binary files /dev/null and b/lib/NUnit/tools/nunit-console.exe differ
diff --git a/lib/NUnit/tools/nunit-console.exe.config b/lib/NUnit/tools/nunit-console.exe.config
new file mode 100644
index 0000000000..30453c9b85
--- /dev/null
+++ b/lib/NUnit/tools/nunit-console.exe.config
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/nunit-x86.exe b/lib/NUnit/tools/nunit-x86.exe
new file mode 100644
index 0000000000..fd342c070a
Binary files /dev/null and b/lib/NUnit/tools/nunit-x86.exe differ
diff --git a/lib/NUnit/tools/nunit-x86.exe.config b/lib/NUnit/tools/nunit-x86.exe.config
new file mode 100644
index 0000000000..6c0320e871
--- /dev/null
+++ b/lib/NUnit/tools/nunit-x86.exe.config
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/nunit.exe b/lib/NUnit/tools/nunit.exe
new file mode 100644
index 0000000000..ad8b08af38
Binary files /dev/null and b/lib/NUnit/tools/nunit.exe differ
diff --git a/lib/NUnit/tools/nunit.exe.config b/lib/NUnit/tools/nunit.exe.config
new file mode 100644
index 0000000000..6c0320e871
--- /dev/null
+++ b/lib/NUnit/tools/nunit.exe.config
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/nunit.framework.dll b/lib/NUnit/tools/nunit.framework.dll
new file mode 100644
index 0000000000..6856e51ef0
Binary files /dev/null and b/lib/NUnit/tools/nunit.framework.dll differ
diff --git a/lib/NUnit/tools/pnunit-agent.exe b/lib/NUnit/tools/pnunit-agent.exe
new file mode 100644
index 0000000000..7a555e16c9
Binary files /dev/null and b/lib/NUnit/tools/pnunit-agent.exe differ
diff --git a/lib/NUnit 2.2.8.0/nunit-console.v2.0.config b/lib/NUnit/tools/pnunit-agent.exe.config
similarity index 60%
rename from lib/NUnit 2.2.8.0/nunit-console.v2.0.config
rename to lib/NUnit/tools/pnunit-agent.exe.config
index f01f07d020..5ed5f7b72c 100644
--- a/lib/NUnit 2.2.8.0/nunit-console.v2.0.config
+++ b/lib/NUnit/tools/pnunit-agent.exe.config
@@ -1,102 +1,77 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/pnunit-launcher.exe b/lib/NUnit/tools/pnunit-launcher.exe
new file mode 100644
index 0000000000..c70e58ef13
Binary files /dev/null and b/lib/NUnit/tools/pnunit-launcher.exe differ
diff --git a/lib/NUnit 2.2.8.0/nunit-console.v3.5.config b/lib/NUnit/tools/pnunit-launcher.exe.config
similarity index 60%
rename from lib/NUnit 2.2.8.0/nunit-console.v3.5.config
rename to lib/NUnit/tools/pnunit-launcher.exe.config
index f01f07d020..5ed5f7b72c 100644
--- a/lib/NUnit 2.2.8.0/nunit-console.v3.5.config
+++ b/lib/NUnit/tools/pnunit-launcher.exe.config
@@ -1,102 +1,77 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/NUnit/tools/pnunit.framework.dll b/lib/NUnit/tools/pnunit.framework.dll
new file mode 100644
index 0000000000..6c105d70f9
Binary files /dev/null and b/lib/NUnit/tools/pnunit.framework.dll differ
diff --git a/lib/NUnit/tools/pnunit.tests.dll b/lib/NUnit/tools/pnunit.tests.dll
new file mode 100644
index 0000000000..dce018acda
Binary files /dev/null and b/lib/NUnit/tools/pnunit.tests.dll differ
diff --git a/lib/NUnit/tools/runFile.exe b/lib/NUnit/tools/runFile.exe
new file mode 100644
index 0000000000..a794458669
Binary files /dev/null and b/lib/NUnit/tools/runFile.exe differ
diff --git a/lib/NUnit/tools/runFile.exe.config b/lib/NUnit/tools/runFile.exe.config
new file mode 100644
index 0000000000..35909b4ced
--- /dev/null
+++ b/lib/NUnit/tools/runFile.exe.config
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lib/NUnit/tools/runpnunit.bat b/lib/NUnit/tools/runpnunit.bat
new file mode 100644
index 0000000000..6efc8b442b
--- /dev/null
+++ b/lib/NUnit/tools/runpnunit.bat
@@ -0,0 +1,2 @@
+start pnunit-agent agent.conf
+pnunit-launcher test.conf
\ No newline at end of file
diff --git a/lib/NUnit/tools/test.conf b/lib/NUnit/tools/test.conf
new file mode 100644
index 0000000000..a35e7184da
--- /dev/null
+++ b/lib/NUnit/tools/test.conf
@@ -0,0 +1,24 @@
+
+
+
+
+ Testing
+
+
+ Testing
+ pnunit.tests.dll
+ TestLibraries.Testing.EqualTo19
+ localhost:8080
+
+ ..\server
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/Rhino.Mocks.dll b/lib/Rhino.Mocks.dll
deleted file mode 100644
index 5ebbe56876..0000000000
Binary files a/lib/Rhino.Mocks.dll and /dev/null differ
diff --git a/lib/Rhino.Mocks.xml b/lib/Rhino.Mocks.xml
deleted file mode 100644
index f36b92f133..0000000000
--- a/lib/Rhino.Mocks.xml
+++ /dev/null
@@ -1,4849 +0,0 @@
-
-
-
- Rhino.Mocks
-
-
-
-
- Interface for constraints
-
-
-
-
- determains if the object pass the constraints
-
-
-
-
- And operator for constraints
-
-
-
-
- Not operator for constraints
-
-
-
-
- Or operator for constraints
-
-
-
-
- Allow overriding of || or &&
-
-
-
-
-
-
- Allow overriding of || or &&
-
-
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Initializes a new constraint object.
-
- The expected object, The actual object is passed in as a parameter to the method
-
-
-
- Evaluate this constraint.
-
- The actual object that was passed in the method call to the mock.
- True when the constraint is met, else false.
-
-
-
- Checks if the properties of the object
- are the same as the properies of the object.
-
- The expected object
- The actual object
- True when both objects have the same values, else False.
-
-
-
-
-
-
-
-
- This is the real heart of the beast.
-
-
-
- Used by CheckReferenceType to check all properties of the reference type.
-
- The expected object
- The actual object
- True when both objects have the same values, else False.
-
-
-
- Used by CheckReferenceType to check all fields of the reference type.
-
- The expected object
- The actual object
- True when both objects have the same values, else False.
-
-
-
- Checks the items of both collections
-
- The expected collection
-
- True if both collections contain the same items in the same order.
-
-
-
- Builds a propertyname from the Stack _properties like 'Order.Product.Price'
- to be used in the error message.
-
- A nested property name.
-
-
-
- Rhino.Mocks uses this property to generate an error message.
-
-
- A message telling the tester why the constraint failed.
-
-
-
-
- Constrain that the public field has a specified value
-
-
-
-
- Constrain that the public field matches another constraint.
-
-
-
-
- Creates a new instance.
-
- Name of the public field.
- Constraint to place on the public field value.
-
-
-
- Creates a new instance, specifying a disambiguating
- for the public field.
-
- The type that declares the public field, used to disambiguate between public fields.
- Name of the public field.
- Constraint to place on the public field value.
-
-
-
- Determines if the object passes the constraint.
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Creates a new instance.
-
- Name of the public field.
- Expected value.
-
-
-
- Creates a new instance, specifying a disambiguating
- for the public field.
-
- The type that declares the public field, used to disambiguate between public fields.
- Name of the public field.
- Expected value.
-
-
-
- Constrain that the property has a specified value
-
-
-
-
- Constrain that the property matches another constraint.
-
-
-
-
- Creates a new instance.
-
- Name of the property.
- Constraint to place on the property value.
-
-
-
- Creates a new instance, specifying a disambiguating
- for the property.
-
- The type that declares the property, used to disambiguate between properties.
- Name of the property.
- Constraint to place on the property value.
-
-
-
- Determines if the object passes the constraint.
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Creates a new instance.
-
- Name of the property.
- Expected value.
-
-
-
- Creates a new instance, specifying a disambiguating
- for the property.
-
- The type that declares the property, used to disambiguate between properties.
- Name of the property.
- Expected value.
-
-
-
- Constrain that the parameter must be of the specified type
-
-
-
-
- Creates a new instance.
-
- Type.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constraint that determines whether an object is the same object as another.
-
-
-
-
- Creates a new instance.
-
- Obj.
-
-
-
- Determines if the object passes the constraints.
-
-
-
-
- Gets the message for this constraint.
-
-
-
-
- Evaluate a parameter using constraints
-
-
-
-
- Create new instance
-
-
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constrain that the list contains the same items as the parameter list
-
-
-
-
- Creates a new instance.
-
- In list.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constrain that the parameter is one of the items in the list
-
-
-
-
- Creates a new instance.
-
- In list.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constrain that the object is inside the parameter list
-
-
-
-
- Creates a new instance.
-
- In list.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Applies another AbstractConstraint to the collection count.
-
-
-
-
- Creates a new instance.
-
- The constraint that should be applied to the collection count.
-
-
-
- Determines if the parameter conforms to this constraint.
-
-
-
-
- Gets the message for this constraint.
-
-
-
-
- Applies another AbstractConstraint to a specific list element.
-
-
-
-
- Creates a new instance.
-
- The zero-based index of the list element.
- The constraint that should be applied to the list element.
-
-
-
- Determines if the parameter conforms to this constraint.
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constrains that all elements are in the parameter list
-
-
-
-
- Initializes a new instance of the class.
-
- The these.
-
-
-
- determains if the object pass the constraints
-
-
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Combines two constraints, constraint pass if either is fine.
-
-
-
-
- Creates a new instance.
-
- C1.
- C2.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Negate a constraint
-
-
-
-
- Creates a new instance.
-
- C1.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Combines two constraints
-
-
-
-
-
- Creates a new instance.
-
- C1.
- C2.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constrain the argument to validate according to regex pattern
-
-
-
-
- Creates a new instance.
-
- Pattern.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constraint that evaluate whatever an argument contains the specified string.
-
-
-
-
- Creates a new instance.
-
- Inner string.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constraint that evaluate whatever an argument ends with the specified string
-
-
-
-
- Creates a new instance.
-
- End.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constraint that evaluate whatever an argument start with the specified string
-
-
-
-
- Creates a new instance.
-
- Start.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constraint that evaluate whatever an object equals another
-
-
-
-
- Creates a new instance.
-
- Obj.
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constraint that always returns true
-
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Constraint that evaluate whatever a comparable is greater than another
-
-
-
-
- Creates a new instance.
-
-
-
-
- determains if the object pass the constraints
-
-
-
-
- Gets the message for this constraint
-
-
-
-
-
- Central location for constraints
-
-
-
-
- Evaluate a greater than constraint for .
-
- The object the parameter should be greater than
-
-
-
- Evaluate a less than constraint for .
-
- The object the parameter should be less than
-
-
-
- Evaluate a less than or equal constraint for .
-
- The object the parameter should be less than or equal to
-
-
-
- Evaluate a greater than or equal constraint for .
-
- The object the parameter should be greater than or equal to
-
-
-
- Evaluate an equal constraint for .
-
- The object the parameter should equal to
-
-
-
- Evaluate a not equal constraint for .
-
- The object the parameter should not equal to
-
-
-
- Evaluate a same as constraint.
-
- The object the parameter should the same as.
-
-
-
- Evaluate a not same as constraint.
-
- The object the parameter should not be the same as.
-
-
-
- A constraints that accept anything
-
-
-
-
-
- A constraint that accept only nulls
-
-
-
-
-
- A constraint that accept only non null values
-
-
-
-
-
- A constraint that accept only value of the specified type
-
-
-
-
- A constraint that accept only value of the specified type
-
-
-
-
- Evaluate a parameter using a predicate
-
- The predicate to use
-
-
-
- Provides access to the constraintes defined in the class to be used in context
- with the syntax.
-
- The type of the argument
-
-
-
- Evaluate a greater than constraint for .
-
- The object the parameter should be greater than
-
-
-
- Evaluate a less than constraint for .
-
- The object the parameter should be less than
-
-
-
- Evaluate a less than or equal constraint for .
-
- The object the parameter should be less than or equal to
-
-
-
- Evaluate a greater than or equal constraint for .
-
- The object the parameter should be greater than or equal to
-
-
-
- Evaluate an equal constraint for .
-
- The object the parameter should equal to
-
-
-
- Evaluate a not equal constraint for .
-
- The object the parameter should not equal to
-
-
-
- Evaluate a same as constraint.
-
- The object the parameter should the same as.
-
-
-
- Evaluate a not same as constraint.
-
- The object the parameter should not be the same as.
-
-
-
- Throws NotSupportedException. Don't use Equals to define constraints. Use Equal instead.
-
-
-
-
-
-
- Serves as a hash function for a particular type.
-
-
- A hash code for the current .
-
-
-
-
- A constraints that accept anything
-
-
-
-
-
- A constraint that accept only nulls
-
-
-
-
-
- A constraint that accept only non null values
-
-
-
-
-
- A constraint that accept only value of the specified type.
- The check is performed on the type that has been defined
- as the argument type.
-
-
-
-
- Central location for constraints about lists and collections
-
-
-
-
- Determines whether the specified obj is in the paramter.
- The parameter must be IEnumerable.
-
- Obj.
-
-
-
-
- Determains whatever the parameter is in the collection.
-
-
-
-
- Determains that the parameter collection is identical to the specified collection
-
-
-
-
- Determines that the parameter collection has the specified number of elements.
-
- The constraint that should be applied to the collection count.
-
-
-
- Determines that an element of the parameter collections conforms to another AbstractConstraint.
-
- The zero-based index of the list element.
- The constraint which should be applied to the list element.
-
-
-
- Determines that all elements of the specified collection are in the the parameter collection
-
- The collection to compare against
- The constraint which should be applied to the list parameter.
-
-
-
- Provides access to the constraintes defined in the class to be used in context
- with the syntax.
-
-
-
-
- Determines whether the specified object is in the paramter.
- The parameter must be IEnumerable.
-
- Obj.
-
-
-
-
- Determains whatever the parameter is in the collection.
-
-
-
-
- Determains that the parameter collection is identical to the specified collection
-
-
-
-
- Determines that the parameter collection has the specified number of elements.
-
- The constraint that should be applied to the collection count.
-
-
-
- Determines that an element of the parameter collections conforms to another AbstractConstraint.
-
- The zero-based index of the list element.
- The constraint which should be applied to the list element.
-
-
-
- Determines that all elements of the specified collection are in the the parameter collection
-
- The collection to compare against
- The constraint which should be applied to the list parameter.
-
-
-
- Throws NotSupportedException. Don't use Equals to define constraints. Use Equal instead.
-
-
-
-
-
-
- Serves as a hash function for a particular type.
-
-
- A hash code for the current .
-
-
-
-
- Provides a dummy field to pass as out or ref argument.
-
-
-
-
-
- Dummy field to satisfy the compiler. Used for out and ref arguments.
-
-
-
-
- Central location for constraints for object's properties
-
-
-
-
- Constrains the parameter to have property with the specified value
-
- Name of the property.
- Expected value.
-
-
-
-
- Constrains the parameter to have property with the specified value.
-
- The type that declares the property, used to disambiguate between properties.
- Name of the property.
- Expected value.
-
-
-
-
- Constrains the parameter to have a property satisfying a specified constraint.
-
- Name of the property.
- Constraint for the property.
-
-
-
- Constrains the parameter to have a property satisfying a specified constraint.
-
- The type that declares the property, used to disambiguate between properties.
- Name of the property.
- Constraint for the property.
-
-
-
- Determines whether the parameter has the specified property and that it is null.
-
- Name of the property.
-
-
-
-
- Determines whether the parameter has the specified property and that it is null.
-
- The type that declares the property, used to disambiguate between properties.
- Name of the property.
-
-
-
-
- Determines whether the parameter has the specified property and that it is not null.
-
- Name of the property.
-
-
-
-
- Determines whether the parameter has the specified property and that it is not null.
-
- The type that declares the property, used to disambiguate between properties.
- Name of the property.
-
-
-
-
- constraints the parameter to have the exact same property values as the expected object.
-
- An object, of the same type as the parameter, whose properties are set with the expected values.
- An instance of the constraint that will do the actual check.
-
- The parameter's public property values and public field values will be matched against the expected object's
- public property values and public field values. The first mismatch will be reported and no further matching is done.
- The matching is recursive for any property or field that has properties or fields of it's own.
- Collections are supported through IEnumerable, which means the constraint will check if the actual and expected
- collection contain the same values in the same order, where the values contained by the collection can have properties
- and fields of their own that will be checked as well because of the recursive nature of this constraint.
-
-
-
-
- Central location for constraints for object's public fields
-
-
-
-
- Constrains the parameter to have a public field with the specified value
-
- Name of the public field.
- Expected value.
-
-
-
-
- Constrains the parameter to have a public field with the specified value.
-
- The type that declares the public field, used to disambiguate between public fields.
- Name of the public field.
- Expected value.
-
-
-
-
- Constrains the parameter to have a public field satisfying a specified constraint.
-
- Name of the public field.
- Constraint for the public field.
-
-
-
- Constrains the parameter to have a public field satisfying a specified constraint.
-
- The type that declares the public field, used to disambiguate between public fields.
- Name of the public field.
- Constraint for the public field.
-
-
-
- Determines whether the parameter has the specified public field and that it is null.
-
- Name of the public field.
-
-
-
-
- Determines whether the parameter has the specified public field and that it is null.
-
- The type that declares the public field, used to disambiguate between public fields.
- Name of the public field.
-
-
-
-
- Determines whether the parameter has the specified public field and that it is not null.
-
- Name of the public field.
-
-
-
-
- Determines whether the parameter has the specified public field and that it is not null.
-
- The type that declares the public field, used to disambiguate between public fields.
- Name of the public field.
-
-
-
-
- Central location for all text related constraints
-
-
-
-
- Constrain the argument to starts with the specified string
-
-
-
-
- Constrain the argument to end with the specified string
-
-
-
-
- Constrain the argument to contain the specified string
-
-
-
-
- Constrain the argument to validate according to regex pattern
-
-
-
-
- Provides access to the constraintes defined in the class to be used in context
- with the syntax.
-
-
-
-
- Constrain the argument to starts with the specified string
-
-
-
-
-
- Constrain the argument to end with the specified string
-
-
-
-
- Constrain the argument to contain the specified string
-
-
-
-
- Constrain the argument to validate according to regex pattern
-
-
-
-
- Throws NotSupportedException. Don't use Equals to define constraints. Use Equal instead.
-
-
-
-
-
-
- Serves as a hash function for a particular type.
-
-
- A hash code for the current .
-
-
-
-
- An expectaton violation was detected.
-
-
-
-
- Creates a new instance.
-
- Message.
-
-
-
- Serialization constructor
-
-
-
-
- Signals that an object was call on a mock repostiroy which doesn't
- belong to this mock repository or not a mock
-
-
-
-
- Creates a new instance.
-
- Message.
-
-
-
- Serialization constructor
-
-
-
-
- Abstract class that holds common information for
- expectations.
-
-
-
-
- Interface to validate that a method call is correct.
-
-
-
-
- Validate the arguments for the method.
- This method can be called numerous times, so be careful about side effects
-
- The arguments with which the method was called
-
-
-
- Add an actual method call to this expectation
-
-
-
-
- Returns the return value or throw the exception and setup any output / ref parameters
- that has been set.
-
-
-
-
- Allow to set the return value in the future, if it was already set.
-
-
-
-
- Gets the error message.
-
-
-
-
-
- Range of expected calls
-
-
-
-
- Number of call actually made for this method
-
-
-
-
- If this expectation is still waiting for calls.
-
-
-
-
- The return value for a method matching this expectation
-
-
-
-
- Gets or sets the exception to throw on a method matching this expectation.
-
-
-
-
- Gets a value indicating whether this instance's action is staisfied.
- A staisfied instance means that there are no more requirements from
- this method. A method with non void return value must register either
- a return value or an exception to throw.
-
-
-
-
- Gets the method this expectation is for.
-
-
-
-
- Gets or sets what special condtions there are for this method
- repeating.
-
-
-
-
- Gets a value indicating whether this expectation was satisfied
-
-
-
-
- Specify whatever this expectation has a return value set
- You can't check ReturnValue for this because a valid return value include null.
-
-
-
-
- An action to execute when the method is matched.
-
-
-
-
- Set the out / ref parameters for the method call.
- The indexing is zero based and ignores any non out/ref parameter.
- It is possible not to pass all the parameters. This method can be called only once.
-
-
-
-
- Documentation Message
-
-
-
-
- Gets the invocation for this expectation
-
- The invocation.
-
-
-
- Number of actuall calls made that passed this expectation
-
-
-
-
- Range of expected calls that should pass this expectation.
-
-
-
-
- The return value for a method matching this expectation
-
-
-
-
- The exception to throw on a method matching this expectation.
-
-
-
-
- The method this expectation is for.
-
-
-
-
- The return value for this method was set
-
-
-
-
- Whether this method will repeat
- unlimited number of times.
-
-
-
-
- A delegate that will be run when the
- expectation is matched.
-
-
-
-
- The arguments that matched this expectation.
-
-
-
-
- Documentation message
-
-
-
-
- The method originalInvocation
-
-
-
-
- Get the hash code
-
-
-
-
- Add an actual actualMethodCall call to this expectation
-
-
-
-
- Allow to set the return value in the future, if it was already set.
-
-
-
-
- Returns the return value or throw the exception and setup output / ref parameters
-
-
-
-
- Validate the arguments for the method on the child methods
-
- The arguments with which the method was called
-
-
-
- Creates a new instance.
-
- The originalInvocation for this method, required because it contains the generic type infromation
-
-
-
- Creates a new instance.
-
- Expectation.
-
-
-
- Validate the arguments for the method on the child methods
-
- The arguments with which the method was called
-
-
-
- Determines if this object equal to obj
-
-
-
-
- The error message for these arguments
-
-
-
-
- Asserts that the delegate has the same parameters as the expectation's method call
-
-
-
-
- Setter for the outpur / ref parameters for this expecataion.
- Can only be set once.
-
-
-
-
- Specify whatever this expectation has a return value set
- You can't check ReturnValue for this because a valid return value include null.
-
-
-
-
- Gets the method this expectation is for.
-
-
-
-
- Gets the originalInvocation for this expectation
-
- The originalInvocation.
-
-
-
- Gets or sets what special condtions there are for this method
-
-
-
-
- Range of expected calls
-
-
-
-
- Number of call actually made for this method
-
-
-
-
- If this expectation is still waiting for calls.
-
-
-
-
- Gets a value indicating whether this expectation was satisfied
-
-
-
-
- The return value for a method matching this expectation
-
-
-
-
- An action to execute when the method is matched.
-
-
-
-
- Gets or sets the exception to throw on a method matching this expectation.
-
-
-
-
- Gets a value indicating whether this instance's action is staisfied.
- A staisfied instance means that there are no more requirements from
- this method. A method with non void return value must register either
- a return value or an exception to throw or an action to execute.
-
-
-
-
- Documentation message
-
-
-
-
- Gets the error message.
-
-
-
-
-
- Expectation that matchs any arguments for the method.
-
-
-
-
- Creates a new instance.
-
- Invocation for this expectation
-
-
-
- Creates a new instance.
-
- Expectation.
-
-
-
- Validate the arguments for the method.
-
- The arguments with which the method was called
-
-
-
- Determines if the object equal to expectation
-
-
-
-
- Get the hash code
-
-
-
-
- Gets the error message.
-
-
-
-
-
- Summary description for ArgsEqualExpectation.
-
-
-
-
- Creates a new instance.
-
- Expected args.
- The invocation for this expectation
-
-
-
- Validate the arguments for the method.
-
- The arguments with which the method was called
-
-
-
- Determines if the object equal to expectation
-
-
-
-
- Get the hash code
-
-
-
-
- Gets the error message.
-
-
-
-
-
- Get the expected args.
-
-
-
-
- Call a specified callback to verify the expectation
-
-
-
-
- Creates a new instance.
-
- Expectation.
- Callback.
-
-
-
- Creates a new instance.
-
- Invocation for this expectation
- Callback.
-
-
-
- Validate the arguments for the method on the child methods
-
- The arguments with which the method was called
-
-
-
- Determines if the object equal to expectation
-
-
-
-
- Get the hash code
-
-
-
-
- Gets the error message.
-
-
-
-
-
- Expect the method's arguments to match the contraints
-
-
-
-
- Creates a new instance.
-
- Invocation for this expectation
- Constraints.
-
-
-
- Creates a new instance.
-
- Expectation.
- Constraints.
-
-
-
- Validate the arguments for the method.
-
- The arguments with which the method was called
-
-
-
- Determines if the object equal to expectation
-
-
-
-
- Get the hash code
-
-
-
-
- Gets the error message.
-
-
-
-
-
- ExpectationsList
-
-
-
-
- Dictionary
-
-
-
-
- Dictionary class
-
-
-
-
- Create a new instance of ProxyStateDictionary
-
-
-
-
- Operation on a remoting proxy
-
-
- It is not possible to directly communicate to a real proxy via transparent proxy.
- Transparent proxy impersonates a user type and only methods of that user type are callable.
- The only methods that are guaranteed to exist on any transparent proxy are methods defined
- in Object: namely ToString(), GetHashCode(), and Equals()).
-
- These three methods are the only way to tell the real proxy to do something.
- Equals() is the most suitable of all, since it accepts an arbitrary object parameter.
- The RemotingProxy code is built so that if it is compared to an IRemotingProxyOperation,
- transparentProxy.Equals(operation) will call operation.Process(realProxy).
- This way we can retrieve a real proxy from transparent proxy and perform
- arbitrary operation on it.
-
-
-
-
- Implementation of IInvocation based on remoting proxy
-
- Some methods are marked NotSupported since they either don't make sense
- for remoting proxies, or they are never called by Rhino Mocks
-
-
-
- Generates remoting proxies and provides utility functions
-
-
-
-
- Create the proxy using remoting
-
-
-
-
- Check whether an object is a transparent proxy with a RemotingProxy behind it
-
- Object to check
- true if the object is a transparent proxy with a RemotingProxy instance behind it, false otherwise
- We use Equals() method to communicate with the real proxy behind the object.
- See IRemotingProxyOperation for more details
-
-
-
- Retrieve a mocked object from a transparent proxy
-
- Transparent proxy with a RemotingProxy instance behind it
- Mocked object associated with the proxy
- We use Equals() method to communicate with the real proxy behind the object.
- See IRemotingProxyOperation for more details
-
-
-
- Allows to call a method and immediatly get it's options.
-
-
-
-
- Interface to allows to call a method and immediatly get it's options.
-
-
-
-
- Get the method options for the call
-
- The method call should go here, the return value is ignored
-
-
-
- Creates a new instance.
-
-
-
-
- Get the method options for the call
-
- The method call should go here, the return value is ignored
-
-
-
- Allows to call a method and immediatly get it's options.
- Set the expected number for the call to Any()
-
-
-
-
- Creates a new instance.
-
- Proxy.
- Mocked instance.
-
-
-
- Get the method options for the call
-
- The method call should go here, the return value is ignored
-
-
-
- This class is reponsible for taking a delegate and creating a wrapper
- interface around it, so it can be mocked.
-
-
-
-
- The scope for all the delegate interfaces create by this mock repositroy.
-
-
-
-
- Gets a type with an "Invoke" method suitable for use as a target of the
- specified delegate type.
-
-
-
-
-
-
- Raise events for all subscribers for an event
-
-
-
-
- Raise events for all subscribers for an event
-
-
-
-
- Raise the event
-
-
-
-
- The most common form for the event handler signature
-
-
-
-
- Create an event raise for the specified event on this instance.
-
-
-
-
- Creates a new instance of EventRaiser
-
-
-
-
- Raise the event
-
-
-
-
- The most common signature for events
- Here to allow intellisense to make better guesses about how
- it should suggest parameters.
-
-
-
-
- Allows to define what would happen when a method
- is called.
-
-
-
-
- Allows to define what would happen when a method
- is called.
-
-
-
-
- Set the return value for the method.
-
- The object the method will return
- IRepeat that defines how many times the method will return this value
-
-
-
- Allow to override this return value in the future
-
- IRepeat that defines how many times the method will return this value
-
-
-
- Throws the specified exception when the method is called.
-
- Exception to throw
-
-
-
- Ignores the arguments for this method. Any argument will be matched
- againt this method.
-
-
-
-
- Add constraints for the method's arguments.
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Call the original method on the class, bypassing the mocking layers.
-
-
-
-
-
- Call the original method on the class, optionally bypassing the mocking layers.
-
-
-
-
-
- Use the property as a simple property, getting/setting the values without
- causing mock expectations.
-
-
-
-
- Get an event raiser for the last subscribed event.
-
-
-
-
- Set the parameter values for out and ref parameters.
- This is done using zero based indexing, and _ignoring_ any non out/ref parameter.
-
-
-
-
- Documentation message for the expectation
-
- Message
-
-
-
- Better syntax to define repeats.
-
-
-
-
- Allows to specify the number of time for method calls
-
-
-
-
- Repeat the method twice.
-
-
-
-
- Repeat the method once.
-
-
-
-
- Repeat the method at least once, then repeat as many time as it would like.
-
-
-
-
- Repeat the method any number of times.
- This has special affects in that this method would now ignore orderring.
-
-
-
-
- Set the range to repeat an action.
-
- Min.
- Max.
-
-
-
- Set the amount of times to repeat an action.
-
-
-
-
- This method must not appear in the replay state.
- This has special affects in that this method would now ignore orderring.
-
-
-
-
- Creates a new instance.
-
- the repository for this expectation
- the recorder for this proxy
- the proxy for this expectation
- Expectation.
- If the expectation still can be replaced by a Constraint call
-
-
-
- Add constraints for the method's arguments.
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Set the return value for the method.
-
- The object the method will return
- IRepeat that defines how many times the method will return this value
-
-
-
- Set the return value for the method, but allow to override this return value in the future
-
- IRepeat that defines how many times the method will return this value
-
-
-
- Throws the specified exception when the method is called.
-
- Exception to throw
-
-
-
- Ignores the arguments for this method. Any argument will be matched
- againt this method.
-
-
-
-
- Call the original method on the class, bypassing the mocking layers.
-
-
-
-
-
- Call the original method on the class, optionally bypassing the mocking layers
-
-
-
-
-
- Use the property as a simple property, getting/setting the values without
- causing mock expectations.
-
-
-
-
- Gets the event raiser for the last event
-
-
-
-
- Set the parameter values for out and ref parameters.
- This is done using zero based indexing, and _ignoring_ any non out/ref parameter.
-
-
-
-
- Repeat the method twice.
-
-
-
-
- Repeat the method once.
-
-
-
-
- Repeat the method at least once, then repeat as many time as it would like.
-
-
-
-
- This method must not appear in the replay state.
-
-
-
-
- Documentation message for the expectation
-
- Message
-
-
-
- Repeat the method any number of times.
-
-
-
-
- Set the range to repeat an action.
-
- Min.
- Max.
-
-
-
- Set the amount of times to repeat an action.
-
-
-
-
- Better syntax to define repeats.
-
-
-
-
- This class will provide hash code for hashtables without needing
- to call the GetHashCode() on the object, which may very well be mocked.
- This class has no state so it is a singelton to avoid creating a lot of objects
- that does the exact same thing. See flyweight patterns.
-
-
-
-
- Get the hash code for a proxy object without calling GetHashCode()
- on the object.
-
-
-
-
- Compares two instances of mocked objects
-
-
-
-
- Compare two mocked objects
-
-
-
-
- The next hash code value for a mock object.
- This is safe for multi threading.
-
-
-
-
- The sole instance of
-
-
-
-
- Doesn't log anything, just makes happy noises
-
-
-
-
- Log expectations - allows to see what is going on inside Rhino Mocks
-
-
-
-
- Logs the expectation as is was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the expectation as it was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the unexpected method call.
-
- The invocation.
- The message.
-
-
-
- Logs the expectation as is was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the expectation as it was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the unexpected method call.
-
- The invocation.
- The message.
-
-
-
- This is a dummy type that is used merely to give DynamicProxy the proxy instance that
- it needs to create IProxy's types.
-
-
-
-
- Interface to find the repository of a mocked object
-
-
-
-
- Return true if it should call the original method on the object
- instead of pass it to the message chain.
-
- The method to call
-
-
-
- Register a method to be called on the object directly
-
-
-
-
- Register a property on the object that will behave as a simple property
-
-
-
-
- Check if the method was registered as a property method.
-
-
-
-
- Do get/set on the property, according to need.
-
-
-
-
- Do add/remove on the event
-
-
-
-
- Get the subscribers of a spesific event
-
-
-
-
- Gets the declaring type of the method, taking into acccount the possible generic
- parameters that it was created with.
-
-
-
-
- Clears the state of the object, remove original calls, property behavior, subscribed events, etc.
-
-
-
-
- Get all the method calls arguments that were made against this object with the specificed
- method.
-
-
- Only method calls in replay mode are counted
-
-
-
-
- Records the method call
-
-
-
-
- The unique hash code of this mock, which is not related
- to the value of the GetHashCode() call on the object.
-
-
-
-
- Gets the repository.
-
-
-
-
- Gets the implemented types by this mocked object
-
- The implemented.
-
-
-
- Gets or sets the constructor arguments.
-
- The constructor arguments.
-
-
-
- Create a new instance of
-
-
-
-
- Return true if it should call the original method on the object
- instead of pass it to the message chain.
-
- The method to call
-
-
-
- Register a method to be called on the object directly
-
-
-
-
- Register a property on the object that will behave as a simple property
-
-
-
-
- Check if the method was registered as a property method.
-
-
-
-
- Do get/set on the property, according to need.
-
-
-
-
- Do add/remove on the event
-
-
-
-
- Get the subscribers of a spesific event
-
-
-
-
- Gets the declaring type of the method, taking into acccount the possible generic
- parameters that it was created with.
-
-
-
-
- Get all the method calls arguments that were made against this object with the specificed
- method.
-
-
-
-
- Only method calls in replay mode are counted
-
-
-
-
- Records the method call
-
-
-
-
-
-
- Clears the state of the object, remove original calls, property behavior, subscribed events, etc.
-
-
-
-
- The unique hash code of this proxy, which is not related
- to the value of the GetHashCode() call on the object.
-
-
-
-
- Gets the repository.
-
-
-
-
- Gets or sets the constructor arguments.
-
- The constructor arguments.
-
-
-
- Gets the implemented types by this mocked object
-
- The implemented.
-
-
-
- Range for expected method calls
-
-
-
-
- Creates a new instance.
-
- Min.
- Max.
-
-
-
- Return the string representation of this range.
-
-
-
-
- Gets or sets the min.
-
-
-
-
-
- Gets or sets the max.
-
-
-
-
-
- Records all the expectations for a mock and
- return a ReplayDynamicMockState when Replay()
- is called.
-
-
-
-
- Records all the expectations for a mock
-
-
-
-
- Different actions on this mock
-
-
-
-
- Add a method call for this state' mock.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Verify that this mock expectations have passed.
-
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Set the exception to throw when Verify is called.
- This is used to report exception that may have happened but where caught in the code.
- This way, they are reported anyway when Verify() is called.
-
-
-
-
- Gets the matching verify state for this state
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Set the exception to throw when Verify is called.
- This is used to report exception that may have happened but where caught in the code.
- This way, they are reported anyway when Verify() is called.
-
-
-
-
- Creates a new instance.
-
- Repository.
- The proxy that generates the method calls
-
-
-
- Add a method call for this state' mock.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
- Verify that this mock expectations have passed.
-
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Asserts the previous method is closed (had an expectation set on it so we can replay it correctly)
-
-
-
-
- Gets the last expectation.
-
-
-
-
- Gets the total method calls count.
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Gets the matching verify state for this state
-
-
-
-
- Creates a new instance.
-
- Repository.
- The proxy that generates the method calls
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Records all the expectations for a mock and
- return a ReplayPartialMockState when Replay()
- is called.
-
-
-
-
- Creates a new instance.
-
- Repository.
- The proxy that generates the method calls
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Options for special repeat option
-
-
-
-
- This method can be called only as many times as the IMethodOptions.Expect allows.
-
-
-
-
- This method should never be called
-
-
-
-
- This method can be call any number of times
-
-
-
-
- This method will call the original method
-
-
-
-
- This method will call the original method, bypassing the mocking layer
-
-
-
-
- This method will simulate simple property behavior
-
-
-
-
- Validate all expectations on a mock and ignores calls to
- any method that was not setup properly.
-
-
-
-
- Validate all expectations on a mock
-
-
-
-
- The repository for this state
-
-
-
-
- The proxy object for this state
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Creates a new instance.
-
- The previous state for this method
-
-
-
- Add a method call for this state' mock.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Add a method call for this state' mock.
- This allows derived method to cleanly get a the setupresult behavior while adding
- their own.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Set the exception to throw when Verify is called.
- This is used to report exception that may have happened but where caught in the code.
- This way, they are reported anyway when Verify() is called.
-
-
-
-
- Verify that this mock expectations have passed.
-
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Gets the matching verify state for this state
-
-
-
-
- Creates a new instance.
-
- The previous state for this method
-
-
-
- Add a method call for this state' mock.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Validate all expectations on a mock and ignores calls to
- any method that was not setup properly.
-
-
-
-
- Creates a new instance.
-
- The previous state for this method
-
-
-
- Add a method call for this state' mock.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Summary description for RhinoInterceptor.
-
-
-
-
- Creates a new instance.
-
-
-
-
- Intercept a method call and direct it to the repository.
-
-
-
-
- Behave like a stub, all properties and events acts normally, methods calls
- return default values by default (but can use expectations to set them up), etc.
-
-
-
-
- Initializes a new instance of the class.
-
- The proxy that generates the method calls
- Repository.
-
-
-
- We don't care much about expectations here, so we will remove the exepctation if
- it is not closed.
-
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
-
- Validate expectations on recorded methods, but in general completely ignoring them.
- Similar to except that it would return a
- when BackToRecord is called.
-
-
-
-
- Initializes a new instance of the class.
-
- The previous state for this method
-
-
-
- Add a method call for this state' mock.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Rudimetry implementation that simply logs methods calls as text.
-
-
-
-
- Initializes a new instance of the class.
-
- The writer.
-
-
-
- Logs the expectation as is was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the expectation as it was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the unexpected method call.
-
- The invocation.
- The message.
-
-
-
- Write rhino mocks log info to the trace
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class.
-
- if set to true [log recorded].
- if set to true [log replayed].
- if set to true [log unexpected].
-
-
-
- Logs the expectation as is was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the expectation as it was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the unexpected method call.
-
- The invocation.
- The message.
-
-
-
- Writes log information as stack traces about rhino mocks activity
-
-
-
-
- Allows to redirect output to a different location.
-
-
-
-
- Logs the expectation as is was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the expectation as it was recorded
-
- The invocation.
- The expectation.
-
-
-
- Logs the unexpected method call.
-
- The invocation.
- The message.
-
-
-
- Validate arguments for methods
-
-
-
-
- Validate that the passed argument is not null.
-
- The object to validate
- The name of the argument
-
- If the obj is null, an ArgumentNullException with the passed name
- is thrown.
-
-
-
-
- Validate that the arguments are equal.
-
- Expected args.
- Actual Args.
-
-
-
- Validate that the two argument are equals, including validation for
- when the arguments are collections, in which case it will validate their values.
-
-
-
-
- This method is safe for use even if any of the objects is a mocked object
- that override equals.
-
-
-
-
- Throw an object already verified when accessed
-
-
-
-
- Create a new instance of VerifiedMockState
-
- The previous mock state, used to get the initial record state
-
-
-
- Add a method call for this state' mock.
-
- The invocation for this method
- The method that was called
- The arguments this method was called with
-
-
-
- Verify that this mock expectations have passed.
-
-
-
-
- Verify that we can move to replay state and move
- to the reply state.
-
-
-
-
- Gets a mock state that match the original mock state of the object.
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Set the exception to throw when Verify is called.
- This is used to report exception that may have happened but where caught in the code.
- This way, they are reported anyway when Verify() is called.
-
-
-
-
- Gets the matching verify state for this state
-
-
-
-
- Get the options for the last method call
-
-
-
-
- Records the actions on all the mocks created by a repository.
-
-
-
-
- Records the specified call with the specified args on the mocked object.
-
-
-
-
- Get the expectation for this method on this object with this arguments
-
-
-
-
- This check the methods that were setup using the SetupResult.For()
- or LastCall.Repeat.Any() and that bypass the whole expectation model.
-
-
-
-
- Gets the all expectations for a mocked object and method combination,
- regardless of the expected arguments / callbacks / contraints.
-
- Mocked object.
- Method.
- List of all relevant expectation
-
-
-
- Gets the all expectations for proxy.
-
- Mocked object.
- List of all relevant expectation
-
-
-
- Removes all the repeatable expectations for proxy.
-
- Mocked object.
-
-
-
- Replaces the old expectation with the new expectation for the specified proxy/method pair.
- This replace ALL expectations that equal to old expectations.
-
- Proxy.
- Method.
- Old expectation.
- New expectation.
-
-
-
- Adds the recorder and turn it into the active recorder.
-
- Recorder.
-
-
-
- Moves to previous recorder.
-
-
-
-
- Gets the recorded expectation or null.
-
-
-
-
- Gets the next expected calls string.
-
-
-
-
- Moves to parent recorder.
-
-
-
-
- Set the expectation so it can repeat any number of times.
-
-
-
-
- Removes the expectation from the recorder
-
-
-
-
- Clear the replayer to call (and all its chain of replayers)
- This also removes it from the list of expectations, so it will never be considered again
-
-
-
-
- Get the expectation for this method on this object with this arguments
-
-
-
-
- Gets a value indicating whether this instance has expectations that weren't satisfied yet.
-
-
- true if this instance has expectations; otherwise, false.
-
-
-
-
- Marker interface used to indicate that this is a partial mock.
-
-
-
-
- Options for CallOriginalMethod
-
-
-
-
- No expectation is created, the method will be called directly
-
-
-
-
- Normal expectation is created, but when the method is later called, it will also call the original method
-
-
-
-
- Base class for method recorders, handle delegating to inner recorder if needed.
-
-
-
-
- List of the expected actions on for this recorder
- The legal values are:
- * Expectations
- * Method Recorders
-
-
-
-
- The current recorder.
-
-
-
-
- The current replayer;
-
-
-
-
- The parent recorder of this one, may be null.
-
-
-
-
- This contains a list of all the replayers that should be ignored
- for a spesific method call. A replayer gets into this list by calling
- ClearReplayerToCall() on its parent. This list is Clear()ed on each new invocation.
-
-
-
-
- All the repeatable methods calls.
-
-
-
-
- Counts the recursion depth of the current expectation search stack
-
-
-
-
- Creates a new instance.
-
-
-
-
- Creates a new instance.
-
- Parent recorder.
- Repeatable methods
-
-
-
- Records the specified call with the specified args on the mocked object.
-
-
-
-
- Get the expectation for this method on this object with this arguments
-
-
-
-
- Gets the all expectations for a mocked object and method combination,
- regardless of the expected arguments / callbacks / contraints.
-
- Mocked object.
- Method.
- List of all relevant expectation
-
-
-
- Gets the all expectations for proxy.
-
- Mocked object.
- List of all relevant expectation
-
-
-
- Replaces the old expectation with the new expectation for the specified proxy/method pair.
- This replace ALL expectations that equal to old expectations.
-
- Proxy.
- Method.
- Old expectation.
- New expectation.
-
-
-
- Remove the all repeatable expectations for proxy.
-
- Mocked object.
-
-
-
- Set the expectation so it can repeat any number of times.
-
-
-
-
- Removes the expectation from the recorder
-
-
-
-
- Adds the recorder and turn it into the active recorder.
-
- Recorder.
-
-
-
- Moves to previous recorder.
-
-
-
-
- Moves to parent recorder.
-
-
-
-
- Gets the recorded expectation or null.
-
-
-
-
- Clear the replayer to call (and all its chain of replayers).
- This also removes it from the list of expectations, so it will never be considered again
-
-
-
-
- Get the expectation for this method on this object with this arguments
-
-
-
-
- Gets the next expected calls string.
-
-
-
-
- Handles the real getting of the recorded expectation or null.
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Should this replayer be considered valid for this call?
-
-
-
-
- This check the methods that were setup using the SetupResult.For()
- or LastCall.Repeat.Any() and that bypass the whole expectation model.
-
-
-
-
- Gets a value indicating whether this instance has expectations that weren't satisfied yet.
-
-
- true if this instance has expectations; otherwise, false.
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Ordered collection of methods, methods must arrive in specified order
- in order to pass.
-
-
-
-
- Unordered collection of method records, any expectation that exist
- will be matched.
-
-
-
-
- The parent recorder we have redirected to.
- Useful for certain edge cases in orderring.
- See: FieldProblem_Entropy for the details.
-
-
-
-
- Creates a new instance.
-
- Parent recorder.
- Repeatable methods
-
-
-
- Creates a new instance.
-
-
-
-
- Records the specified call with the specified args on the mocked object.
-
- Mocked object.
- Method.
- Expectation.
-
-
-
- Get the expectation for this method on this object with this arguments
-
- Invocation for this method
- Mocked object.
- Method.
- Args.
- True is the call was recorded, false otherwise
-
-
-
- Gets the all expectations for a mocked object and method combination,
- regardless of the expected arguments / callbacks / contraints.
-
- Mocked object.
- Method.
- List of all relevant expectation
-
-
-
- Gets the all expectations for proxy.
-
- Mocked object.
- List of all relevant expectation
-
-
-
- Replaces the old expectation with the new expectation for the specified proxy/method pair.
- This replace ALL expectations that equal to old expectations.
-
- Proxy.
- Method.
- Old expectation.
- New expectation.
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Handles the real getting of the recorded expectation or null.
-
-
-
-
- Handle the real execution of this method for the derived class
-
-
-
-
- Gets the next expected calls string.
-
-
-
-
- Create an exception for an unexpected method call.
-
-
-
-
- Gets a value indicating whether this instance has expectations that weren't satisfied yet.
-
-
- true if this instance has expectations; otherwise, false.
-
-
-
-
- Creates a new instance.
-
- Parent recorder.
- Repetable methods
-
-
-
- Creates a new instance.
-
-
-
-
- Handles the real getting of the recorded expectation or null.
-
-
-
-
- Get the expectation for this method on this object with this arguments
-
-
-
-
- Gets the next expected calls string.
-
-
-
-
- Hold an expectation for a method call on an object
-
-
-
-
- Creates a new instance.
-
- Proxy.
- Method.
- Expectation.
-
-
-
- Determains if the object equal to this instance
-
- Obj.
-
-
-
-
- Gets the hash code.
-
-
-
-
-
- Gets the proxy.
-
-
-
-
-
- Gets the method.
-
-
-
-
-
- Gets the expectation.
-
-
-
-
-
- Holds a pair of mocked object and a method
- and allows to compare them against each other.
- This allows us to have a distinction between mockOne.MyMethod() and
- mockTwo.MyMethod()...
-
-
-
-
- Creates a new instance.
-
- Proxy.
- Method.
-
-
-
- Determains whatever obj equals to this instance.
- ProxyMethodPairs are equals when they point to the same /instance/ of
- an object, and to the same method.
-
- Obj.
-
-
-
-
- Gets the hash code.
-
-
-
-
-
- Gets the proxy.
-
-
-
-
-
- Gets the method.
-
-
-
-
-
- Change the recorder from ordered to unordered and vice versa
-
-
-
-
- Creates a new instance.
-
-
-
-
- Disposes this instance.
-
-
-
-
- Utility class for dealing with messing generics scenarios.
-
-
-
-
- There are issues with trying to get this to work correctly with open generic types, since this is an edge case,
- I am letting the runtime handle it.
-
-
-
-
- Gets the real type, including de-constructing and constructing the type of generic
- methods parameters.
-
- The type.
- The invocation.
-
-
-
-
- Because we need to support complex types here (simple generics were handled above) we
- need to be aware of the following scenarios:
- List[T] and List[Foo[T]]
-
-
-
-
- Utility class for working with method calls.
-
-
-
-
- Return the string representation of a method call and its arguments.
-
- The method
- The method arguments
- Invocation of the method, used to get the generics arguments
- Delegate to format the parameter
- The string representation of this method call
-
-
-
- Return the string representation of a method call and its arguments.
-
- The invocation of the method, used to get the generic parameters
- The method
- The method arguments
- The string representation of this method call
-
-
-
- Delegate to format the argument for the string representation of
- the method call.
-
-
-
-
- Utility to get the default value for a type
-
-
-
-
- The default value for a type.
- Null for reference types and void
- 0 for value types.
- First element for enums
- Note that we need to get the value even for opened generic types, such as those from
- generic methods.
-
- Type.
- The invocation.
- the default value
-
-
-
- Defines constraints and return values for arguments of a mock.
- Only use Arg inside a method call on a mock that is recording.
- Example:
- ExpectCall(
- mock.foo(
- Arg<int>.Is.GreaterThan(2),
- Arg<string>.Is.Anything
- ));
- Use Arg.Text for string specific constraints
- Use Arg<ListClass>.List for list specific constraints
-
-
-
-
-
- Register the predicate as a constraint for the current call.
-
- The predicate.
- default(T)
-
- Allow you to use code to create constraints
-
- demo.AssertWasCalled(x => x.Bar(Arg{string}.Matches(a => a.StartsWith("b") && a.Contains("ba"))));
-
-
-
-
-
- Define a complex constraint for this argument by passing several constraints
- combined with operators. (Use Is in simple cases.)
- Example: Arg<string>.Matches(Is.Equal("Hello") || Text.EndsWith("u"));
-
- Constraints using Is, Text and List
- Dummy to satisfy the compiler
-
-
-
- Define a Ref argument.
-
- Constraints for this argument
- value returned by the mock
-
-
-
-
- Define a out parameter. Use it together with the keyword out and use the
- Dummy field available by the return value.
- Example: mock.foo( out Arg<string>.Out("hello").Dummy );
-
-
-
-
-
-
- Define a simple constraint for this argument. (Use Matches in simple cases.)
- Example:
- Arg<int>.Is.Anthing
- Arg<string>.Is.Equal("hello")
-
-
-
-
- Define Constraints on list arguments.
-
-
-
-
- Use the Arg class (without generic) to define Text constraints
-
-
-
-
- Define constraints on text arguments.
-
-
-
-
- Used to manage the static state of the Arg<T> class"/>
-
-
-
-
- Resets the static state
-
-
-
-
- Returns return values for the out and ref parameters
- Note: the array returned has the size of the number of out and ref
- argument definitions
-
-
-
-
-
- Returns the constraints for all arguments.
- Out arguments have an Is.Anything constraint and are also in the list.
-
-
-
-
-
- What should BackToRecord clear
-
-
-
-
- Retain all expectations and behaviors and return to mock
-
-
-
-
- All expectations
-
-
-
-
- Event subscribers for this instance
-
-
-
-
- Methods that should be forwarded to the base class implementation
-
-
-
-
- Properties that should behave like properties
-
-
-
-
- Remove all the behavior of the object
-
-
-
-
- This class defines a lot of method signatures, which we will use
- to allow compatability on net-2.0
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- dummy
-
-
-
-
- Allows expectations to be set on methods that should never be called.
- For methods with void return value, you need to use LastCall or
- DoNotExpect.Call() with a delegate.
-
-
-
-
- Sets LastCall.Repeat.Never() on /any/ proxy on /any/ repository on the current thread.
- This method if not safe for multi threading scenarios.
-
-
-
-
- Accepts a delegate that will execute inside the method which
- LastCall.Repeat.Never() will be applied to.
- It is expected to be used with anonymous delegates / lambda expressions and only one
- method should be called.
-
-
- IService mockSrv = mocks.CreateMock(typeof(IService)) as IService;
- DoNotExpect.Call(delegate{ mockSrv.Stop(); });
- ...
-
-
-
-
- Allows to set expectation on methods that has return values.
- For methods with void return value, you need to use LastCall
-
-
-
-
- The method options for the last call on /any/ proxy on /any/ repository on the current thread.
- This method if not safe for multi threading scenarios, use .
-
-
-
-
- Accepts a delegate that will execute inside the method, and then return the resulting
- instance.
- It is expected to be used with anonymous delegates / lambda expressions and only one
- method should be called.
-
-
- IService mockSrv = mocks.CreateMock(typeof(IService)) as IService;
- Expect.Call(delegate{ mockSrv.Start(); }).Throw(new NetworkException());
- ...
-
-
-
-
- Get the method options for the last method call on the mockInstance.
-
-
-
-
- A delegate that can be used to get better syntax on Expect.Call(delegate { foo.DoSomething(); });
-
-
-
-
- Allows to set various options for the last method call on
- a specified object.
- If the method has a return value, it's recommended to use Expect
-
-
-
-
- Allows to get an interface to work on the last call.
-
- The mocked object
- Interface that allows to set options for the last method call on this object
-
-
-
- Set the return value for the method.
-
- The object the method will return
- IRepeat that defines how many times the method will return this value
-
-
-
- Set the return value for the method. This overload is needed for LastCall.Return(null)
-
- The object the method will return
- IRepeat that defines how many times the method will return this value
-
-
-
- Throws the specified exception when the method is called.
-
- Exception to throw
-
-
-
- Ignores the arguments for this method. Any argument will be matched
- againt this method.
-
-
-
-
- Add constraints for the method's arguments.
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Set a callback method for the last call
-
-
-
-
- Call the original method on the class, bypassing the mocking layers, for the last call.
-
-
-
-
- Call the original method on the class, optionally bypassing the mocking layers, for the last call.
-
-
-
-
- Set a delegate to be called when the expectation is matched.
- The delegate return value will be returned from the expectation.
-
-
-
-
- Gets an interface that will raise the last event when called.
-
-
-
-
- Set the parameter values for out and ref parameters.
- This is done using zero based indexing, and _ignoring_ any non out/ref parameter.
-
-
-
-
- Documentation message for the expectation
-
- Message
-
-
-
- Use the property as a simple property, getting/setting the values without
- causing mock expectations.
-
-
-
-
- Better syntax to define repeats.
-
-
-
-
- Accessor for the current mocker
-
-
-
-
- The current mocker
-
-
-
-
- Creates proxied instances of types.
-
-
- Adds optional new usage:
- using(mockRepository.Record()) {
- Expect.Call(mock.Method()).Return(retVal);
- }
- using(mockRepository.Playback()) {
- // Execute code
- }
- N.B. mockRepository.ReplayAll() and mockRepository.VerifyAll()
- calls are taken care of by Record/Playback
-
-
-
-
- This is a map of types to ProxyGenerators.
-
-
-
-
- This is used to record the last repository that has a method called on it.
-
-
-
-
- this is used to get to the last proxy on this repository.
-
-
-
-
- For mock delegates, maps the proxy instance from intercepted invocations
- back to the delegate that was originally returned to client code, if any.
-
-
-
-
- All the proxies in the mock repositories
-
-
-
-
- This is here because we can't put it in any of the recorders, since repeatable methods
- have no orderring, and if we try to handle them using the usual manner, we would get into
- wierd situations where repeatable method that was defined in an orderring block doesn't
- exists until we enter this block.
-
-
-
-
- Creates a new instance.
-
-
-
-
- Move the repository to ordered mode
-
-
-
-
- Move the repository to un-ordered mode
-
-
-
-
- Creates a mock for the specified type.
-
- Type.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a strict mock for the specified type.
-
- Type.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a remoting mock for the specified type.
-
- Type.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a strict remoting mock for the specified type.
-
- Type.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a remoting mock for the specified type.
-
-
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
-
- Creates a strict remoting mock for the specified type.
-
-
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
-
- Creates a mock from several types, with strict semantics.
- Only may be a class.
-
-
-
-
- Creates a strict mock from several types, with strict semantics.
- Only may be a class.
-
-
-
-
- Creates a mock from several types, with strict semantics.
- Only may be a class.
-
- The main type to mock.
- Extra interface types to mock.
- Arguments for the class' constructor, if mocking a concrete class.
-
-
-
- Creates a strict mock from several types, with strict semantics.
- Only may be a class.
-
- The main type to mock.
- Extra interface types to mock.
- Arguments for the class' constructor, if mocking a concrete class.
-
-
-
- Creates a mock from several types, with dynamic semantics.
- Only may be a class.
-
- The main type to mock.
- Extra interface types to mock.
-
-
-
- Creates a mock from several types, with dynamic semantics.
- Only may be a class.
-
- The main type to mock.
- Extra interface types to mock.
- Arguments for the class' constructor, if mocking a concrete class.
-
-
-
- Creates a dynamic mock for the specified type.
-
- Type.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a dynamic mock for the specified type.
-
- Type.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a dynamic mock for the specified type.
-
-
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
-
- Creates a mock object that defaults to calling the class methods.
-
- Type.
- Arguments for the class' constructor.
-
-
-
- Creates a mock object that defaults to calling the class methods.
-
- Type.
- Extra interface types to mock.
-
-
-
- Creates a mock object that defaults to calling the class methods.
-
- Type.
- Extra interface types to mock.
- Arguments for the class' constructor.
-
-
-
- Creates a mock object using remoting proxies
-
- Type to mock - must be MarshalByRefObject
- Mock object
- Proxy mock can mock non-virtual methods, but not static methods
- Creates the mock state for this proxy
-
-
-
- Cause the mock state to change to replay, any further call is compared to the
- ones that were called in the record state.
-
- the object to move to replay state
-
-
-
- Cause the mock state to change to replay, any further call is compared to the
- ones that were called in the record state.
-
- the object to move to replay state
-
-
-
-
- Move the mocked object back to record state.
- Will delete all current expectations!
-
-
-
-
- Move the mocked object back to record state.
- Optionally, can delete all current expectations, but allows more granularity about how
- it would behave with regard to the object state.
-
-
-
-
- Verify that all the expectations for this object were fulfilled.
-
- the object to verify the expectations for
-
-
-
- Get the method options for the last call on
- mockedInstance.
-
- The mock object
- Method options for the last call
-
-
-
- Maps an invocation proxy back to the mock object instance that was originally
- returned to client code which might have been a delegate to this proxy.
-
- The mock object proxy from the intercepted invocation
- The mock object
-
-
-
- This is provided to allow advance extention functionality, where Rhino Mocks standard
- functionality is not enough.
-
- The type to mock
- Delegate that create the first state of the mocked object (usualy the record state).
- Additional types to be implemented, this can be only interfaces
- optional arguments for the constructor
-
-
-
-
- Method: GetMockedObject
- Get an IProxy from a mocked object instance, or throws if the
- object is not a mock object.
-
-
-
-
- Method: GetMockedObjectOrNull
- Get an IProxy from a mocked object instance, or null if the
- object is not a mock object.
-
-
-
-
- Pops the recorder.
-
-
-
-
- Pushes the recorder.
-
- New recorder.
-
-
-
- All the mock objects in this repository will be moved
- to record state.
-
-
-
-
- All the mock objects in this repository will be moved
- to record state.
-
-
-
-
- Replay all the mocks from this repository
-
-
-
-
- Verify all the mocks from this repository
-
-
-
-
- Gets the proxy generator for a specific type. Having a single ProxyGenerator
- with multiple types linearly degrades the performance so this implementation
- keeps one ProxyGenerator per type.
-
-
-
-
- Set the exception to be thrown when verified is called.
-
-
-
-
- Creates a mock for the spesified type.
-
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a strict mock for the spesified type.
-
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a dynamic mock for the specified type.
-
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Creates a mock object from several types.
-
-
-
-
- Creates a strict mock object from several types.
-
-
-
-
- Create a mock object from several types with dynamic semantics.
-
-
-
-
- Create a mock object from several types with partial semantics.
-
-
-
-
- Create a mock object from several types with strict semantics.
-
- Extra interface types to mock.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Create a strict mock object from several types with strict semantics.
-
- Extra interface types to mock.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Create a mock object from several types with dynamic semantics.
-
- Extra interface types to mock.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Create a mock object from several types with partial semantics.
-
- Extra interface types to mock.
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Create a mock object with from a class that defaults to calling the class methods
-
- Arguments for the class' constructor, if mocking a concrete class
-
-
-
- Create a stub object, one that has properties and events ready for use, and
- can have methods called on it. It requires an explicit step in order to create
- an expectation for a stub.
-
- The arguments for constructor.
-
-
-
- Create a stub object, one that has properties and events ready for use, and
- can have methods called on it. It requires an explicit step in order to create
- an expectation for a stub.
-
- The type.
- The arguments for constructor.
-
-
-
-
- Generates a stub without mock repository
-
- The arguments for constructor.
-
-
-
-
- Generates the stub without mock repository
-
- The type.
- The arguments for constructor.
-
-
-
- Returns true if the passed mock is currently in replay mode.
-
- The mock to test.
- True if the mock is in replay mode, false otherwise.
-
-
-
- Generate a mock object without needing the mock repository
-
-
-
-
- Determines whether the specified proxy is a stub.
-
- The proxy.
-
-
-
-
-
-
-
-
-
-
-
-
-
- Gets the recorder.
-
-
-
-
-
- Gets the replayer for this repository.
-
-
-
-
-
- Gets the last proxy which had a method call.
-
-
-
-
- Delegate: CreateMockState
- This is used internally to cleanly handle the creation of different
- RecordMockStates.
-
-
-
-
- Used for [assembly: InternalsVisibleTo(RhinoMocks.StrongName)]
- Used for [assembly: InternalsVisibleTo(RhinoMocks.NormalName)]
-
-
-
-
- Strong name for the Dynamic Proxy assemblies. Used for InternalsVisibleTo specification.
-
-
-
-
- Normal name for dynamic proxy assemblies. Used for InternalsVisibleTo specification.
-
-
-
-
- Logs all method calls for methods
-
-
-
-
- Setup method calls to repeat any number of times.
-
-
-
-
- Get the method options and set the last method call to repeat
- any number of times.
- This also means that the method would transcend ordering
-
-
-
-
- Get the method options for the last method call on the mockInstance and set it
- to repeat any number of times.
- This also means that the method would transcend ordering
-
-
-
-
- Allows easier access to MockRepository, works closely with Mocker.Current to
- allow access to a context where the mock repository is automatially verified at
- the end of the code block.
-
-
-
-
- Initialize a code block where Mocker.Current is initialized.
- At the end of the code block, all the expectation will be verified.
- This overload will create a new MockRepository.
-
- The code that will be executed under the mock context
-
-
-
- Initialize a code block where Mocker.Current is initialized.
- At the end of the code block, all the expectation will be verified.
- This overload will create a new MockRepository.
-
- The mock repository to use, at the end of the code block, VerifyAll() will be called on the repository.
- The code that will be executed under the mock context
-
-
-
- Create a FluentMocker
-
- The mock repository to use.
-
-
-
- A method with no arguments and no return value that will be called under the mock context.
-
-
-
-
- FluentMocker implements some kind of fluent interface attempt
- for saying "With the Mocks [mocks], Expecting (in same order) [things] verify [that]."
-
-
-
-
- Interface to verify previously defined expectations
-
-
-
-
- Verifies if a piece of code
-
-
-
-
- Defines unordered expectations
-
- A delegate describing the expectations
- an IMockVerifier
-
-
-
- Defines ordered expectations
-
- A delegate describing the expectations
- an IMockVerifier
-
-
-
- Verifies previously defined expectations
-
-
-
-
diff --git a/lib/StatLight/StatLight.nupkg b/lib/StatLight/StatLight.nupkg
new file mode 100644
index 0000000000..dc6b468178
Binary files /dev/null and b/lib/StatLight/StatLight.nupkg differ
diff --git a/lib/StatLight/tools/Ionic.Zip.Reduced.dll b/lib/StatLight/tools/Ionic.Zip.Reduced.dll
new file mode 100644
index 0000000000..da074366df
Binary files /dev/null and b/lib/StatLight/tools/Ionic.Zip.Reduced.dll differ
diff --git a/lib/StatLight/tools/Microsoft.Silverlight.Testing.License.txt b/lib/StatLight/tools/Microsoft.Silverlight.Testing.License.txt
new file mode 100644
index 0000000000..46f9f58d1f
--- /dev/null
+++ b/lib/StatLight/tools/Microsoft.Silverlight.Testing.License.txt
@@ -0,0 +1,11 @@
+MSDN CODE GALLERY BINARY LICENSE
+
+You are free to install, use, copy and distribute any number of copies of the software, in object code form, provided that you retain:
+
+• all copyright, patent, trademark, and attribution notices that are present in the software,
+• this list of conditions, and
+• the following disclaimer in the documentation and/or other materials provided with the software.
+
+The software is licensed “as-is.” You bear the risk of using it. No express warranties, guarantees or conditions are provided. To the extent permitted under your local laws, the implied warranties of merchantability, fitness for a particular purpose and non-infringement are excluded.
+
+This license does not grant you any rights to use any other party’s name, logo, or trademarks. All rights not specifically granted herein are reserved.
\ No newline at end of file
diff --git a/lib/StatLight/tools/StatLight.Client.For.April2010.xap b/lib/StatLight/tools/StatLight.Client.For.April2010.xap
new file mode 100644
index 0000000000..7534d416a9
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.April2010.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.Feb2011.xap b/lib/StatLight/tools/StatLight.Client.For.Feb2011.xap
new file mode 100644
index 0000000000..57b71b2ebc
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.Feb2011.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.July2009.xap b/lib/StatLight/tools/StatLight.Client.For.July2009.xap
new file mode 100644
index 0000000000..63a37b5e41
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.July2009.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.June2011.xap b/lib/StatLight/tools/StatLight.Client.For.June2011.xap
new file mode 100644
index 0000000000..4330a09b48
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.June2011.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.March2010.xap b/lib/StatLight/tools/StatLight.Client.For.March2010.xap
new file mode 100644
index 0000000000..7314cb5852
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.March2010.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.May2010.xap b/lib/StatLight/tools/StatLight.Client.For.May2010.xap
new file mode 100644
index 0000000000..01ba00bbf2
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.May2010.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.November2009.xap b/lib/StatLight/tools/StatLight.Client.For.November2009.xap
new file mode 100644
index 0000000000..e9f4a7270b
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.November2009.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.October2009.xap b/lib/StatLight/tools/StatLight.Client.For.October2009.xap
new file mode 100644
index 0000000000..5b089c5639
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.October2009.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.UnitDrivenDecember2009.xap b/lib/StatLight/tools/StatLight.Client.For.UnitDrivenDecember2009.xap
new file mode 100644
index 0000000000..09a12f90cc
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.UnitDrivenDecember2009.xap differ
diff --git a/lib/StatLight/tools/StatLight.Client.For.XUnitContribApril2011.xap b/lib/StatLight/tools/StatLight.Client.For.XUnitContribApril2011.xap
new file mode 100644
index 0000000000..51fd64f66b
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Client.For.XUnitContribApril2011.xap differ
diff --git a/lib/StatLight/tools/StatLight.Core.dll b/lib/StatLight/tools/StatLight.Core.dll
new file mode 100644
index 0000000000..bf019b8cf0
Binary files /dev/null and b/lib/StatLight/tools/StatLight.Core.dll differ
diff --git a/lib/StatLight/tools/StatLight.EULA.txt b/lib/StatLight/tools/StatLight.EULA.txt
new file mode 100644
index 0000000000..fa0812875d
--- /dev/null
+++ b/lib/StatLight/tools/StatLight.EULA.txt
@@ -0,0 +1,3 @@
+See:
+
+http://statlight.codeplex.com/license
\ No newline at end of file
diff --git a/lib/StatLight/tools/StatLight.exe b/lib/StatLight/tools/StatLight.exe
new file mode 100644
index 0000000000..1f383a3f1e
Binary files /dev/null and b/lib/StatLight/tools/StatLight.exe differ
diff --git a/lib/System.Core/ExtensionAttribute.cs b/lib/System.Core/ExtensionAttribute.cs
deleted file mode 100644
index fcb186f3f2..0000000000
--- a/lib/System.Core/ExtensionAttribute.cs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-namespace System.Runtime.CompilerServices
-{
- /// Used for 2.0 compatibility
- [AttributeUsage(AttributeTargets.Method)]
- public sealed class ExtensionAttribute : Attribute { }
-}
diff --git a/lib/System.Core/System.Core.dll b/lib/System.Core/System.Core.dll
deleted file mode 100644
index d34141b3e8..0000000000
Binary files a/lib/System.Core/System.Core.dll and /dev/null differ
diff --git a/lib/System.Core/build.bat b/lib/System.Core/build.bat
deleted file mode 100644
index 13883e6174..0000000000
--- a/lib/System.Core/build.bat
+++ /dev/null
@@ -1 +0,0 @@
-c:\Windows\Microsoft.NET\Framework\v2.0.50727\csc /target:library /out:System.Core.dll /keyfile:..\..\keys\Google.ProtocolBuffers.snk ExtensionAttribute.cs
diff --git a/lib/rhino-license.txt b/lib/rhino-license.txt
deleted file mode 100644
index 1c8a46e470..0000000000
--- a/lib/rhino-license.txt
+++ /dev/null
@@ -1,25 +0,0 @@
-Copyright (c) 2005 - 2008 Ayende Rahien (ayende@ayende.com)
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
- * Neither the name of Ayende Rahien nor the names of its
- contributors may be used to endorse or promote products derived from this
- software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/src/ProtoDump/ProtoDump.csproj b/src/ProtoDump/ProtoDump.csproj
index 9e14573683..f07cdc0f82 100644
--- a/src/ProtoDump/ProtoDump.csproj
+++ b/src/ProtoDump/ProtoDump.csproj
@@ -1,97 +1,97 @@
-
-
-
- Debug
- AnyCPU
- 9.0.30729
- 2.0
- {D7282E99-2DC3-405B-946F-177DB2FD2AE2}
- Exe
- Properties
- Google.ProtocolBuffers.ProtoDump
- ProtoDump
- v2.0
- 512
-
-
-
-
- 3.5
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- false
- true
-
-
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- AllRules.ruleset
-
-
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
- AllRules.ruleset
-
-
-
-
-
-
-
-
-
-
-
- {6908BDCE-D925-43F3-94AC-A531E6DF2591}
- ProtocolBuffers
-
-
-
-
-
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
-
-
+
+
+
+ Debug
+ AnyCPU
+ 9.0.30729
+ 2.0
+ {D7282E99-2DC3-405B-946F-177DB2FD2AE2}
+ Exe
+ Properties
+ Google.ProtocolBuffers.ProtoDump
+ ProtoDump
+ v2.0
+ 512
+
+
+
+
+ 3.5
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 1.0.0.%2a
+ false
+ false
+ true
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+ AllRules.ruleset
+
+
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+ AllRules.ruleset
+
+
+
+
+
+
+
+
+
+
+
+ {6908BDCE-D925-43F3-94AC-A531E6DF2591}
+ ProtocolBuffers
+
+
+
+
+
+
+
+ False
+ .NET Framework 3.5 SP1 Client Profile
+ false
+
+
+ False
+ .NET Framework 3.5 SP1
+ true
+
+
+ False
+ Windows Installer 3.1
+ true
+
+
+
+ -->
\ No newline at end of file
diff --git a/src/ProtoGen.Test/ProtoGen.Test.csproj b/src/ProtoGen.Test/ProtoGen.Test.csproj
index d08cbb7349..a3883ccf47 100644
--- a/src/ProtoGen.Test/ProtoGen.Test.csproj
+++ b/src/ProtoGen.Test/ProtoGen.Test.csproj
@@ -1,124 +1,126 @@
-
-
-
- Debug
- AnyCPU
- 9.0.30729
- 2.0
- {C268DA4C-4004-47DA-AF23-44C983281A68}
- Library
- Properties
- Google.ProtocolBuffers.ProtoGen
- Google.ProtocolBuffers.ProtoGen.Test
- v2.0
- 512
- true
- ..\..\keys\Google.ProtocolBuffers.snk
-
-
-
-
- 3.5
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- false
- true
-
-
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- AllRules.ruleset
-
-
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
- AllRules.ruleset
-
-
-
- False
- ..\..\lib\NUnit 2.2.8.0\nunit.framework.dll
-
-
- False
- ..\..\lib\Rhino.Mocks.dll
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {6908BDCE-D925-43F3-94AC-A531E6DF2591}
- ProtocolBuffers
-
-
- {250ADE34-82FD-4BAE-86D5-985FBE589C4A}
- ProtoGen
-
-
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
-
- protoc.exe
- Always
-
-
- google\protobuf\csharp_options.proto
- Always
-
-
- google\protobuf\descriptor.proto
- Always
-
-
-
-
+
+
+
+ Debug
+ AnyCPU
+ 9.0.30729
+ 2.0
+ {C268DA4C-4004-47DA-AF23-44C983281A68}
+ Library
+ Properties
+ Google.ProtocolBuffers.ProtoGen
+ Google.ProtocolBuffers.ProtoGen.Test
+ v2.0
+ 512
+ true
+ ..\..\keys\Google.ProtocolBuffers.snk
+
+
+
+
+ 3.5
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 1.0.0.%2a
+ false
+ false
+ true
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+ AllRules.ruleset
+
+
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+ AllRules.ruleset
+
+
+
+ False
+ ..\..\lib\NUnit\lib\nunit.framework.dll
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {6908BDCE-D925-43F3-94AC-A531E6DF2591}
+ ProtocolBuffers
+
+
+ {250ADE34-82FD-4BAE-86D5-985FBE589C4A}
+ ProtoGen
+
+
+
+
+ False
+ .NET Framework 3.5 SP1 Client Profile
+ false
+
+
+ False
+ .NET Framework 3.5 SP1
+ true
+
+
+ False
+ Windows Installer 3.1
+ true
+
+
+ protoc.exe
+ Always
+
+
+ google\protobuf\csharp_options.proto
+ Always
+
+
+ google\protobuf\descriptor.proto
+ Always
+
+
+
+
+
+ Program
+ $(ProjectDir)..\..\lib\NUnit\tools\nunit-console.exe
+ /nologo /noshadow /labels /wait $(AssemblyName).dll
+ $(ProjectDir)$(OutputPath)
+
\ No newline at end of file
diff --git a/src/ProtoGen/ServiceInterfaceGenerator.cs b/src/ProtoGen/ServiceInterfaceGenerator.cs
index 041cffce4f..64b6d69be9 100644
--- a/src/ProtoGen/ServiceInterfaceGenerator.cs
+++ b/src/ProtoGen/ServiceInterfaceGenerator.cs
@@ -159,8 +159,7 @@ namespace Google.ProtocolBuffers.ProtoGen
writer.WriteLine("public {0}(pb::IRpcDispatch dispatch) : this(dispatch, true) {{", Descriptor.Name);
writer.WriteLine("}");
writer.WriteLine("public {0}(pb::IRpcDispatch dispatch, bool dispose) {{", Descriptor.Name);
- writer.WriteLine(
- " if (null == (this.dispatch = dispatch)) throw new global::System.ArgumentNullException();");
+ writer.WriteLine(" pb::ThrowHelper.ThrowIfNull(this.dispatch = dispatch, \"dispatch\");");
writer.WriteLine(" this.dispose = dispose && dispatch is global::System.IDisposable;");
writer.WriteLine("}");
writer.WriteLine();
@@ -209,8 +208,7 @@ namespace Google.ProtocolBuffers.ProtoGen
Descriptor.Name);
writer.WriteLine("}");
writer.WriteLine("public Dispatch(I{0} implementation, bool dispose) {{", Descriptor.Name);
- writer.WriteLine(
- " if (null == (this.implementation = implementation)) throw new global::System.ArgumentNullException();");
+ writer.WriteLine(" pb::ThrowHelper.ThrowIfNull(this.implementation = implementation, \"implementation\");");
writer.WriteLine(" this.dispose = dispose && implementation is global::System.IDisposable;");
writer.WriteLine("}");
writer.WriteLine();
@@ -235,9 +233,7 @@ namespace Google.ProtocolBuffers.ProtoGen
method.Name, NameHelpers.UnderscoresToPascalCase(method.Name),
GetClassName(method.InputType));
}
- writer.WriteLine(
- "default: throw new global::System.MissingMethodException(typeof(I{0}).FullName, methodName);",
- Descriptor.Name);
+ writer.WriteLine("default: throw pb::ThrowHelper.CreateMissingMethod(typeof(I{0}), methodName);", Descriptor.Name);
writer.Outdent();
writer.WriteLine("}"); //end switch
writer.Outdent();
@@ -272,8 +268,7 @@ namespace Google.ProtocolBuffers.ProtoGen
writer.WriteLine("public ServerStub(pb::IRpcDispatch implementation) : this(implementation, true) {");
writer.WriteLine("}");
writer.WriteLine("public ServerStub(pb::IRpcDispatch implementation, bool dispose) {");
- writer.WriteLine(
- " if (null == (this.implementation = implementation)) throw new global::System.ArgumentNullException();");
+ writer.WriteLine(" pb::ThrowHelper.ThrowIfNull(this.implementation = implementation, \"implementation\");");
writer.WriteLine(" this.dispose = dispose && implementation is global::System.IDisposable;");
writer.WriteLine("}");
writer.WriteLine();
@@ -296,9 +291,7 @@ namespace Google.ProtocolBuffers.ProtoGen
"case \"{0}\": return implementation.CallMethod(methodName, {1}.ParseFrom(input, registry), {2}.CreateBuilder());",
method.Name, GetClassName(method.InputType), GetClassName(method.OutputType));
}
- writer.WriteLine(
- "default: throw new global::System.MissingMethodException(typeof(I{0}).FullName, methodName);",
- Descriptor.Name);
+ writer.WriteLine("default: throw pb::ThrowHelper.CreateMissingMethod(typeof(I{0}), methodName);", Descriptor.Name);
writer.Outdent();
writer.WriteLine("}"); //end switch
writer.Outdent();
diff --git a/src/ProtoMunge/ProtoMunge.csproj b/src/ProtoMunge/ProtoMunge.csproj
index a04276cc99..a62fdcc2e7 100644
--- a/src/ProtoMunge/ProtoMunge.csproj
+++ b/src/ProtoMunge/ProtoMunge.csproj
@@ -1,97 +1,97 @@
-
-
-
- Debug
- AnyCPU
- 9.0.30729
- 2.0
- {8F09AF72-3327-4FA7-BC09-070B80221AB9}
- Exe
- Properties
- Google.ProtocolBuffers.ProtoMunge
- ProtoMunge
- v2.0
- 512
-
-
-
-
- 3.5
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- false
- true
-
-
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- AllRules.ruleset
-
-
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
- AllRules.ruleset
-
-
-
-
-
-
-
-
-
-
-
- {6908BDCE-D925-43F3-94AC-A531E6DF2591}
- ProtocolBuffers
-
-
-
-
-
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
-
-
+
+
+
+ Debug
+ AnyCPU
+ 9.0.30729
+ 2.0
+ {8F09AF72-3327-4FA7-BC09-070B80221AB9}
+ Exe
+ Properties
+ Google.ProtocolBuffers.ProtoMunge
+ ProtoMunge
+ v2.0
+ 512
+
+
+
+
+ 3.5
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 1.0.0.%2a
+ false
+ false
+ true
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+ AllRules.ruleset
+
+
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+ AllRules.ruleset
+
+
+
+
+
+
+
+
+
+
+
+ {6908BDCE-D925-43F3-94AC-A531E6DF2591}
+ ProtocolBuffers
+
+
+
+
+
+
+
+ False
+ .NET Framework 3.5 SP1 Client Profile
+ false
+
+
+ False
+ .NET Framework 3.5 SP1
+ true
+
+
+ False
+ Windows Installer 3.1
+ true
+
+
+
+ -->
\ No newline at end of file
diff --git a/src/ProtocolBuffers.Serialization/ProtocolBuffers.Serialization(Silverlight).csproj b/src/ProtocolBuffers.Serialization/ProtocolBuffers.Serialization(Silverlight).csproj
new file mode 100644
index 0000000000..5c05adb814
--- /dev/null
+++ b/src/ProtocolBuffers.Serialization/ProtocolBuffers.Serialization(Silverlight).csproj
@@ -0,0 +1,99 @@
+
+
+
+ Debug
+ AnyCPU
+ 9.0.30729
+ 2.0
+ {72B69A15-E28E-4738-A779-18D76C87D225}
+ Library
+ Properties
+ Google.ProtocolBuffers.Serialization
+ Google.ProtocolBuffers.Serialization
+ v2.0
+ 512
+ true
+ ..\..\keys\Google.ProtocolBuffers.snk
+ 3.5
+ {A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}
+ v3.5
+ false
+ true
+ true
+ v2.0
+
+
+ true
+ full
+ false
+ bin\Debug_Silverlight\
+ $(OutputPath)\$(AssemblyName).xml
+ 1591, 1570, 1571, 1572, 1573, 1574
+ DEBUG;TRACE;SILVERLIGHT
+ prompt
+ 4
+ true
+
+
+ pdbonly
+ true
+ bin\Release_Silverlight\
+ $(OutputPath)\$(AssemblyName).xml
+ 1591, 1570, 1571, 1572, 1573, 1574
+ TRACE;SILVERLIGHT
+ prompt
+ 4
+ true
+
+
+ NET20;$(DefineConstants)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {7E4E681E-5D09-43FB-8D9E-35A454730A85}
+ ProtocolBuffers%28Silverlight%29
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/ProtocolBuffers.Serialization/ProtocolBuffers.Serialization.csproj b/src/ProtocolBuffers.Serialization/ProtocolBuffers.Serialization.csproj
index 1b246f1fd4..6ac39241fa 100644
--- a/src/ProtocolBuffers.Serialization/ProtocolBuffers.Serialization.csproj
+++ b/src/ProtocolBuffers.Serialization/ProtocolBuffers.Serialization.csproj
@@ -14,28 +14,7 @@
512true..\..\keys\Google.ProtocolBuffers.snk
-
-
-
- 3.5
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- false
- true
- v2.0
- NET20;true
@@ -44,11 +23,10 @@
bin\Debug\$(OutputPath)\$(AssemblyName).xml1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;DEBUG;
+ DEBUG;TRACEprompt4true
- AllRules.rulesetpdbonly
@@ -56,36 +34,13 @@
bin\Release\$(OutputPath)\$(AssemblyName).xml1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;
+ TRACEprompt4true
- AllRules.ruleset
-
- true
- full
- false
- bin\Debug_Silverlight\
- $(OutputPath)\$(AssemblyName).xml
- 1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;DEBUG;SILVERLIGHT
- prompt
- 4
- true
- AllRules.ruleset
-
-
- pdbonly
- true
- bin\Release_Silverlight\
- $(OutputPath)\$(AssemblyName).xml
- 1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;SILVERLIGHT
- prompt
- 4
- true
- AllRules.ruleset
+
+ NET20;$(DefineConstants)
@@ -114,23 +69,6 @@
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
- {6908BDCE-D925-43F3-94AC-A531E6DF2591}
@@ -138,10 +76,7 @@
False
-
-
-
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/ProtocolBuffers.Serialization/ProtocolBuffersLite.Serialization.csproj b/src/ProtocolBuffers.Serialization/ProtocolBuffersLite.Serialization.csproj
index d9794fa082..0c4222d90d 100644
--- a/src/ProtocolBuffers.Serialization/ProtocolBuffersLite.Serialization.csproj
+++ b/src/ProtocolBuffers.Serialization/ProtocolBuffersLite.Serialization.csproj
@@ -14,28 +14,7 @@
512true..\..\keys\Google.ProtocolBuffers.snk
-
-
-
- 3.5
- publish\
- true
- Disk
- false
- Foreground
- 7
- Days
- false
- false
- true
- 0
- 1.0.0.%2a
- false
- false
- true
- v2.0
- NET20;true
@@ -44,11 +23,10 @@
bin\Debug\$(OutputPath)\$(AssemblyName).xml1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;DEBUG
+ DEBUG;TRACE;LITEprompt4true
- AllRules.rulesetpdbonly
@@ -56,36 +34,13 @@
bin\Release\$(OutputPath)\$(AssemblyName).xml1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;
+ TRACE;LITEprompt4true
- AllRules.ruleset
-
- true
- full
- false
- bin\Debug_Silverlight\
- $(OutputPath)\$(AssemblyName).xml
- 1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;DEBUG;SILVERLIGHT
- prompt
- 4
- true
- AllRules.ruleset
-
-
- pdbonly
- true
- bin\Release_Silverlight\
- $(OutputPath)\$(AssemblyName).xml
- 1591, 1570, 1571, 1572, 1573, 1574
- $(DefineConstants)TRACE;SILVERLIGHT
- prompt
- 4
- true
- AllRules.ruleset
+
+ NET20;$(DefineConstants)
@@ -114,23 +69,6 @@
-
-
- False
- .NET Framework 3.5 SP1 Client Profile
- false
-
-
- False
- .NET Framework 3.5 SP1
- true
-
-
- False
- Windows Installer 3.1
- true
-
- {6969BDCE-D925-43F3-94AC-A531E6DF2591}
@@ -138,10 +76,7 @@
False
-
-
-
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/ProtocolBuffers.Test/ProtocolBuffers.Test.csproj b/src/ProtocolBuffers.Test/ProtocolBuffers.Test.csproj
index 8000e7d204..2b270afdc4 100644
--- a/src/ProtocolBuffers.Test/ProtocolBuffers.Test.csproj
+++ b/src/ProtocolBuffers.Test/ProtocolBuffers.Test.csproj
@@ -58,13 +58,9 @@
true
-
+ False
- ..\..\lib\NUnit 2.2.8.0\nunit.framework.dll
-
-
- False
- ..\..\lib\Rhino.Mocks.dll
+ ..\..\lib\NUnit\lib\nunit.framework.dll
@@ -72,6 +68,9 @@
+
+ Microsoft.VisualStudio.TestTools.cs
+
@@ -162,8 +161,7 @@
-
-
+
+
+ Program
+ $(ProjectDir)..\..\lib\NUnit\tools\nunit-console.exe
+ /nologo /noshadow /labels /wait $(AssemblyName).dll
+ $(ProjectDir)$(OutputPath)
+
\ No newline at end of file
diff --git a/src/ProtocolBuffers.Test/ReflectionTester.cs b/src/ProtocolBuffers.Test/ReflectionTester.cs
index 5f323228b9..9565a167f0 100644
--- a/src/ProtocolBuffers.Test/ReflectionTester.cs
+++ b/src/ProtocolBuffers.Test/ReflectionTester.cs
@@ -37,7 +37,9 @@
using System;
using Google.ProtocolBuffers.Descriptors;
using Google.ProtocolBuffers.TestProtos;
-using NUnit.Framework;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+
+#pragma warning disable 618 // Disable warning about obsolete use miss-matched assert arguments
namespace Google.ProtocolBuffers
{
@@ -472,7 +474,7 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(101, message[f("optional_int32")]);
Assert.AreEqual(102L, message[f("optional_int64")]);
- Assert.AreEqual(103U, message[f("optional_uint32")]);
+ Assert.AreEqual(103u, message[f("optional_uint32")]);
Assert.AreEqual(104UL, message[f("optional_uint64")]);
Assert.AreEqual(105, message[f("optional_sint32")]);
Assert.AreEqual(106L, message[f("optional_sint64")]);
@@ -957,28 +959,30 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(2, message.GetRepeatedFieldCount(f("packed_double")));
Assert.AreEqual(2, message.GetRepeatedFieldCount(f("packed_bool")));
Assert.AreEqual(2, message.GetRepeatedFieldCount(f("packed_enum")));
+
Assert.AreEqual(601, message[f("packed_int32"), 0]);
Assert.AreEqual(602L, message[f("packed_int64"), 0]);
- Assert.AreEqual(603, message[f("packed_uint32"), 0]);
- Assert.AreEqual(604L, message[f("packed_uint64"), 0]);
+ Assert.AreEqual(603u, message[f("packed_uint32"), 0]);
+ Assert.AreEqual(604uL, message[f("packed_uint64"), 0]);
Assert.AreEqual(605, message[f("packed_sint32"), 0]);
Assert.AreEqual(606L, message[f("packed_sint64"), 0]);
- Assert.AreEqual(607, message[f("packed_fixed32"), 0]);
- Assert.AreEqual(608L, message[f("packed_fixed64"), 0]);
+ Assert.AreEqual(607u, message[f("packed_fixed32"), 0]);
+ Assert.AreEqual(608uL, message[f("packed_fixed64"), 0]);
Assert.AreEqual(609, message[f("packed_sfixed32"), 0]);
Assert.AreEqual(610L, message[f("packed_sfixed64"), 0]);
Assert.AreEqual(611F, message[f("packed_float"), 0]);
Assert.AreEqual(612D, message[f("packed_double"), 0]);
Assert.AreEqual(true, message[f("packed_bool"), 0]);
Assert.AreEqual(foreignBar, message[f("packed_enum"), 0]);
+
Assert.AreEqual(701, message[f("packed_int32"), 1]);
Assert.AreEqual(702L, message[f("packed_int64"), 1]);
- Assert.AreEqual(703, message[f("packed_uint32"), 1]);
- Assert.AreEqual(704L, message[f("packed_uint64"), 1]);
+ Assert.AreEqual(703u, message[f("packed_uint32"), 1]);
+ Assert.AreEqual(704uL, message[f("packed_uint64"), 1]);
Assert.AreEqual(705, message[f("packed_sint32"), 1]);
Assert.AreEqual(706L, message[f("packed_sint64"), 1]);
- Assert.AreEqual(707, message[f("packed_fixed32"), 1]);
- Assert.AreEqual(708L, message[f("packed_fixed64"), 1]);
+ Assert.AreEqual(707u, message[f("packed_fixed32"), 1]);
+ Assert.AreEqual(708uL, message[f("packed_fixed64"), 1]);
Assert.AreEqual(709, message[f("packed_sfixed32"), 1]);
Assert.AreEqual(710L, message[f("packed_sfixed64"), 1]);
Assert.AreEqual(711F, message[f("packed_float"), 1]);
diff --git a/src/ProtocolBuffers.Test/ReusableBuilderTest.cs b/src/ProtocolBuffers.Test/ReusableBuilderTest.cs
index d5755f6f6b..93129b2f1a 100644
--- a/src/ProtocolBuffers.Test/ReusableBuilderTest.cs
+++ b/src/ProtocolBuffers.Test/ReusableBuilderTest.cs
@@ -3,17 +3,17 @@ using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
using Google.ProtocolBuffers.Collections;
-using NUnit.Framework;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
using Google.ProtocolBuffers.TestProtos;
using Google.ProtocolBuffers.Serialization;
using UnitTest.Issues.TestProtos;
namespace Google.ProtocolBuffers
{
- [TestFixture]
+ [TestClass]
public class ReusableBuilderTest
{
- [Test, Description("Issue 28: Circular message dependencies result in null defaults for DefaultInstance")]
+ [TestMethod, System.ComponentModel.Description("Issue 28: Circular message dependencies result in null defaults for DefaultInstance")]
public void EnsureStaticCicularReference()
{
MyMessageAReferenceB ab = MyMessageAReferenceB.DefaultInstance;
@@ -24,7 +24,7 @@ namespace Google.ProtocolBuffers
Assert.IsNotNull(ba.Value);
}
- [Test]
+ [TestMethod]
public void TestModifyDefaultInstance()
{
//verify that the default instance has correctly been marked as read-only
@@ -33,7 +33,7 @@ namespace Google.ProtocolBuffers
Assert.IsTrue(list.IsReadOnly);
}
- [Test]
+ [TestMethod]
public void TestUnmodifiedDefaultInstance()
{
//Simply calling ToBuilder().Build() no longer creates a copy of the message
@@ -41,7 +41,7 @@ namespace Google.ProtocolBuffers
Assert.IsTrue(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void BuildMultipleWithoutChange()
{
//Calling Build() or BuildPartial() does not require a copy of the message
@@ -55,7 +55,7 @@ namespace Google.ProtocolBuffers
Assert.IsTrue(ReferenceEquals(first, builder.BuildPartial().ToBuilder().Build()));
}
- [Test]
+ [TestMethod]
public void MergeFromDefaultInstance()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -64,7 +64,7 @@ namespace Google.ProtocolBuffers
Assert.IsTrue(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void BuildNewBuilderIsDefaultInstance()
{
Assert.IsTrue(ReferenceEquals(TestAllTypes.DefaultInstance, new TestAllTypes.Builder().Build()));
@@ -74,7 +74,7 @@ namespace Google.ProtocolBuffers
TestAllTypes.CreateBuilder().SetOptionalBool(true).Build().ToBuilder().Clear().Build()));
}
- [Test]
+ [TestMethod]
public void BuildModifyAndRebuild()
{
TestAllTypes.Builder b1 = new TestAllTypes.Builder();
@@ -94,7 +94,7 @@ namespace Google.ProtocolBuffers
Assert.AreEqual("{\"optional_foreign_message\":{\"c\":7},\"repeated_int32\":[2,6],\"default_int32\":5}", Extensions.ToJson(m2));
}
- [Test]
+ [TestMethod]
public void CloneOnChangePrimitive()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -103,7 +103,7 @@ namespace Google.ProtocolBuffers
Assert.IsFalse(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void CloneOnAddRepeatedBool()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -112,7 +112,7 @@ namespace Google.ProtocolBuffers
Assert.IsFalse(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void CloneOnGetRepeatedBoolList()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -121,7 +121,7 @@ namespace Google.ProtocolBuffers
Assert.IsFalse(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void CloneOnChangeMessage()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -130,7 +130,7 @@ namespace Google.ProtocolBuffers
Assert.IsFalse(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void CloneOnClearMessage()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -139,7 +139,7 @@ namespace Google.ProtocolBuffers
Assert.IsFalse(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void CloneOnGetRepeatedForeignMessageList()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -148,7 +148,7 @@ namespace Google.ProtocolBuffers
Assert.IsFalse(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void CloneOnChangeEnumValue()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
@@ -157,7 +157,7 @@ namespace Google.ProtocolBuffers
Assert.IsFalse(ReferenceEquals(TestAllTypes.DefaultInstance, builder.Build()));
}
- [Test]
+ [TestMethod]
public void CloneOnGetRepeatedForeignEnumList()
{
TestAllTypes.Builder builder = TestAllTypes.DefaultInstance.ToBuilder();
diff --git a/src/ProtocolBuffers.Test/SerializableAttribute.cs b/src/ProtocolBuffers.Test/SerializableAttribute.cs
new file mode 100644
index 0000000000..04fcdcbadd
--- /dev/null
+++ b/src/ProtocolBuffers.Test/SerializableAttribute.cs
@@ -0,0 +1,12 @@
+#if SILVERLIGHT
+
+namespace System
+{
+ [AttributeUsage(AttributeTargets.Class)]
+ public class SerializableAttribute : Attribute
+ {
+ public SerializableAttribute () : base() { }
+ }
+}
+
+#endif
diff --git a/src/ProtocolBuffers.Test/SerializableTest.cs b/src/ProtocolBuffers.Test/SerializableTest.cs
index f1073c1e45..edf6ce491d 100644
--- a/src/ProtocolBuffers.Test/SerializableTest.cs
+++ b/src/ProtocolBuffers.Test/SerializableTest.cs
@@ -5,11 +5,11 @@ using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.Text;
using Google.ProtocolBuffers.TestProtos;
-using NUnit.Framework;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace Google.ProtocolBuffers
{
- [TestFixture]
+ [TestClass]
public class SerializableTest
{
///
@@ -18,7 +18,7 @@ namespace Google.ProtocolBuffers
public static readonly ISerializable CompileTimeCheckSerializableMessage = TestXmlMessage.DefaultInstance;
public static readonly ISerializable CompileTimeCheckSerializableBuilder = new TestXmlMessage.Builder();
- [Test]
+ [TestMethod]
public void TestPlainMessage()
{
TestXmlMessage message = TestXmlMessage.CreateBuilder()
@@ -51,7 +51,7 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(message, copy);
}
- [Test]
+ [TestMethod]
public void TestMessageWithExtensions()
{
TestXmlMessage message = TestXmlMessage.CreateBuilder()
@@ -96,7 +96,7 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(message, copy);
}
- [Test]
+ [TestMethod]
public void TestPlainBuilder()
{
TestXmlMessage.Builder builder = TestXmlMessage.CreateBuilder()
@@ -129,7 +129,7 @@ namespace Google.ProtocolBuffers
Assert.AreEqual(builder.Build(), copy.Build());
}
- [Test]
+ [TestMethod]
public void TestBuilderWithExtensions()
{
TestXmlMessage.Builder builder = TestXmlMessage.CreateBuilder()
diff --git a/src/ProtocolBuffers.Test/ServiceTest.cs b/src/ProtocolBuffers.Test/ServiceTest.cs
index dbfa10c939..ee28ca1c67 100644
--- a/src/ProtocolBuffers.Test/ServiceTest.cs
+++ b/src/ProtocolBuffers.Test/ServiceTest.cs
@@ -37,9 +37,7 @@
using System;
using Google.ProtocolBuffers.Descriptors;
using Google.ProtocolBuffers.TestProtos;
-using NUnit.Framework;
-using Rhino.Mocks;
-using Rhino.Mocks.Constraints;
+using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace Google.ProtocolBuffers
{
@@ -47,7 +45,7 @@ namespace Google.ProtocolBuffers
/// Tests for generated service classes.
/// TODO(jonskeet): Convert the mocking tests using Rhino.Mocks.
///
- [TestFixture]
+ [TestClass]
public class ServiceTest
{
private delegate void Action(T1 t1, T2 t2);
@@ -55,7 +53,7 @@ namespace Google.ProtocolBuffers
private static readonly MethodDescriptor FooDescriptor = TestGenericService.Descriptor.Methods[0];
private static readonly MethodDescriptor BarDescriptor = TestGenericService.Descriptor.Methods[1];
- [Test]
+ [TestMethod]
public void GetRequestPrototype()
{
TestGenericService service = new TestServiceImpl();
@@ -64,7 +62,7 @@ namespace Google.ProtocolBuffers
Assert.AreSame(service.GetRequestPrototype(BarDescriptor), BarRequest.DefaultInstance);
}
- [Test]
+ [TestMethod]
public void GetResponsePrototype()
{
TestGenericService service = new TestServiceImpl();
@@ -73,13 +71,12 @@ namespace Google.ProtocolBuffers
Assert.AreSame(service.GetResponsePrototype(BarDescriptor), BarResponse.DefaultInstance);
}
- [Test]
+ [TestMethod]
public void CallMethodFoo()
{
- MockRepository mocks = new MockRepository();
FooRequest fooRequest = FooRequest.CreateBuilder().Build();
FooResponse fooResponse = FooResponse.CreateBuilder().Build();
- IRpcController controller = mocks.StrictMock();
+ IRpcController controller = new RpcTestController();
bool fooCalled = false;
@@ -97,60 +94,18 @@ namespace Google.ProtocolBuffers
doneHandlerCalled = true;
});
- using (mocks.Record())
- {
- // No mock interactions to record
- }
-
service.CallMethod(FooDescriptor, controller, fooRequest, doneHandler);
Assert.IsTrue(doneHandlerCalled);
Assert.IsTrue(fooCalled);
- mocks.VerifyAll();
- }
-
- private delegate void CallFooDelegate(MethodDescriptor descriptor, IRpcController controller,
- IMessage request, IMessage response, Action doneHandler);
-
- ///
- /// Tests the generated stub handling of Foo. By this stage we're reasonably confident
- /// that the choice between Foo and Bar is arbitrary, hence the lack of a corresponding Bar
- /// test.
- ///
- [Test]
- [Ignore("Crashes Mono - needs further investigation")]
- public void GeneratedStubFooCall()
- {
- FooRequest fooRequest = FooRequest.CreateBuilder().Build();
- MockRepository mocks = new MockRepository();
- IRpcChannel mockChannel = mocks.StrictMock();
- IRpcController mockController = mocks.StrictMock();
- TestGenericService service = TestGenericService.CreateStub(mockChannel);
- Action doneHandler = mocks.StrictMock>();
-
- using (mocks.Record())
- {
- // Nasty way of mocking out "the channel calls the done handler".
- Expect.Call(() => mockChannel.CallMethod(null, null, null, null, null))
- .IgnoreArguments()
- .Constraints(Is.Same(FooDescriptor), Is.Same(mockController), Is.Same(fooRequest),
- Is.Same(FooResponse.DefaultInstance), Is.Anything())
- .Do((CallFooDelegate) ((p1, p2, p3, response, done) => done(response)));
- doneHandler(FooResponse.DefaultInstance);
- }
-
- service.Foo(mockController, fooRequest, doneHandler);
-
- mocks.VerifyAll();
}
- [Test]
+ [TestMethod]
public void CallMethodBar()
{
- MockRepository mocks = new MockRepository();
BarRequest barRequest = BarRequest.CreateBuilder().Build();
BarResponse barResponse = BarResponse.CreateBuilder().Build();
- IRpcController controller = mocks.StrictMock();
+ IRpcController controller = new RpcTestController();
bool barCalled = false;
@@ -168,19 +123,109 @@ namespace Google.ProtocolBuffers
doneHandlerCalled = true;
});
- using (mocks.Record())
- {
- // No mock interactions to record
- }
-
service.CallMethod(BarDescriptor, controller, barRequest, doneHandler);
Assert.IsTrue(doneHandlerCalled);
Assert.IsTrue(barCalled);
- mocks.VerifyAll();
}
+ [TestMethod]
+ public void GeneratedStubFooCall()
+ {
+ IRpcChannel channel = new RpcTestChannel();
+ IRpcController controller = new RpcTestController();
+ TestGenericService service = TestGenericService.CreateStub(channel);
+ FooResponse fooResponse = null;
+ Action doneHandler = r => fooResponse = r;
+
+ service.Foo(controller, FooRequest.DefaultInstance, doneHandler);
+
+ Assert.IsNotNull(fooResponse);
+ Assert.IsFalse(controller.Failed);
+ }
+
+ [TestMethod]
+ public void GeneratedStubBarCallFails()
+ {
+ IRpcChannel channel = new RpcTestChannel();
+ IRpcController controller = new RpcTestController();
+ TestGenericService service = TestGenericService.CreateStub(channel);
+ BarResponse barResponse = null;
+ Action doneHandler = r => barResponse = r;
+
+ service.Bar(controller, BarRequest.DefaultInstance, doneHandler);
+ Assert.IsNull(barResponse);
+ Assert.IsTrue(controller.Failed);
+ }
+
+ #region RpcTestController
+ private class RpcTestController : IRpcController
+ {
+ public string TestFailedReason { get; set; }
+ public bool TestCancelled { get; set; }
+ public Action