Commits

Douglas Mendizabal committed 9d142be

Money example.

Comments (0)

Files changed (15)

+#########################
+# Mercurial Ignore File
+#########################
+
+# Global syntax patterns
+syntax: glob
+
+# directories
+bin/
+obj/
+_ReSharper*/
+
+# files
+*.suo
+*.user
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "money", "money\money.csproj", "{94163D0B-C09F-4A1E-9E86-1E748F9837DE}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "moneyTests", "moneyTests\moneyTests.csproj", "{F1F91DAD-FE26-4D74-BEDE-01A3015B3DDB}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{94163D0B-C09F-4A1E-9E86-1E748F9837DE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{94163D0B-C09F-4A1E-9E86-1E748F9837DE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{94163D0B-C09F-4A1E-9E86-1E748F9837DE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{94163D0B-C09F-4A1E-9E86-1E748F9837DE}.Release|Any CPU.Build.0 = Release|Any CPU
+		{F1F91DAD-FE26-4D74-BEDE-01A3015B3DDB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{F1F91DAD-FE26-4D74-BEDE-01A3015B3DDB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{F1F91DAD-FE26-4D74-BEDE-01A3015B3DDB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{F1F91DAD-FE26-4D74-BEDE-01A3015B3DDB}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+EndGlobal

Part I/money/Dollar.cs

+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace money
+{
+    public class Dollar : Money
+    {
+        public Dollar(int amount, string currency) : base(amount, currency)
+        {
+        }
+    }
+}

Part I/money/Franc.cs

+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace money
+{
+    public class Franc : Money
+    {
+        public Franc(int amount, string currency):base(amount,currency)
+        {
+        }
+    }
+}

Part I/money/Money.cs

+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace money
+{
+    public class Money
+    {
+        protected internal int amount;
+        protected internal string currency;
+
+        public Money(int amount, string currency)
+        {
+            this.amount = amount;
+            this.currency = currency;
+        }
+
+        public override bool Equals(Object obj)
+        {
+            Money money = (Money)obj;
+            return this.amount == money.amount &&
+                this.currency == money.currency;
+        }
+
+        public static Money Dollar(int amount)
+        {
+            return new Money(amount, "USD");
+        }
+
+        public Money Times(int multiplier)
+        {
+            return new Money(amount * multiplier, currency);
+        }
+
+        public static Money Franc(int amount)
+        {
+            return new Money(amount, "CHF");
+        }
+
+        public string Currency()
+        {
+            return currency;
+        }
+
+        public Money Plus(Money addend)
+        {
+            return new Money(amount + addend.amount, currency);
+        }
+    }
+}

Part I/money/Properties/AssemblyInfo.cs

+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("money")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("money")]
+[assembly: AssemblyCopyright("Copyright ©  2011")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("f3ede899-86f1-4a70-ae75-9c1b7c90f80d")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers 
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

Part I/money/money.csproj

+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.30703</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{94163D0B-C09F-4A1E-9E86-1E748F9837DE}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>money</RootNamespace>
+    <AssemblyName>money</AssemblyName>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Money.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>

Part I/moneyTests/Properties/AssemblyInfo.cs

+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("moneyTests")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("moneyTests")]
+[assembly: AssemblyCopyright("Copyright ©  2011")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("d882eae0-197e-4847-852a-cbecbeb26b8f")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers 
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]

Part I/moneyTests/Tests.cs

+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using money;
+using Xunit;
+
+namespace moneyTests
+{
+    public class Tests
+    {
+        [Fact]
+        public void TestMultiplication()
+        {
+            Money five = Money.Dollar(5);
+            Assert.Equal(Money.Dollar(10), five.Times(2));
+            Assert.Equal(Money.Dollar(15), five.Times(3));
+        }
+
+        [Fact]
+        public void TestEquality()
+        {
+            Assert.True(Money.Dollar(5).Equals(Money.Dollar(5)));
+            Assert.False(Money.Dollar(5).Equals(Money.Dollar(6)));
+            Assert.True(Money.Franc(5).Equals(Money.Franc(5)));
+            Assert.False(Money.Franc(5).Equals(Money.Franc(6)));
+            Assert.False(Money.Dollar(5).Equals(Money.Franc(5)));
+        }
+
+        [Fact]
+        public void TestFrancMultiplication()
+        {
+            Money five = Money.Franc(5);
+            Assert.Equal(Money.Franc(10), five.Times(2));
+            Assert.Equal(Money.Franc(15), five.Times(3));
+        }
+
+        [Fact]
+        public void TestCurrency()
+        {
+            Assert.Equal("USD", Money.Dollar(1).Currency());
+            Assert.Equal("CHF", Money.Franc(1).Currency());
+        }
+
+        [Fact]
+        public void TestSimpleAddition()
+        {
+            Money sum = Money.Dollar(5).Plus(Money.Dollar(5));
+            Assert.True(Money.Dollar(10).Equals(sum));
+        }
+    }
+}

Part I/moneyTests/moneyTests.csproj

+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.30703</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{F1F91DAD-FE26-4D74-BEDE-01A3015B3DDB}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>moneyTests</RootNamespace>
+    <AssemblyName>moneyTests</AssemblyName>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+    <Reference Include="xunit">
+      <HintPath>..\packages\xunit.1.8.0.1545\lib\xunit.dll</HintPath>
+    </Reference>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Tests.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="packages.config" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\money\money.csproj">
+      <Project>{94163D0B-C09F-4A1E-9E86-1E748F9837DE}</Project>
+      <Name>money</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>

Part I/moneyTests/packages.config

+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+  <package id="xunit" version="1.8.0.1545" />
+</packages>

Part I/packages/repositories.config

+<?xml version="1.0" encoding="utf-8"?>
+<repositories>
+  <repository path="..\moneyTests\packages.config" />
+</repositories>

Part I/packages/xunit.1.8.0.1545/lib/xunit.dll

Binary file added.

Part I/packages/xunit.1.8.0.1545/lib/xunit.xml

+<?xml version="1.0"?>
+<doc>
+    <assembly>
+        <name>xunit</name>
+    </assembly>
+    <members>
+        <member name="T:Xunit.Assert">
+            <summary>
+            Contains various static methods that are used to verify that conditions are met during the
+            process of running tests.
+            </summary>
+        </member>
+        <member name="M:Xunit.Assert.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Assert"/> class.
+            </summary>
+        </member>
+        <member name="M:Xunit.Assert.Contains``1(``0,System.Collections.Generic.IEnumerable{``0})">
+            <summary>
+            Verifies that a collection contains a given object.
+            </summary>
+            <typeparam name="T">The type of the object to be verified</typeparam>
+            <param name="expected">The object expected to be in the collection</param>
+            <param name="collection">The collection to be inspected</param>
+            <exception cref="T:Xunit.Sdk.ContainsException">Thrown when the object is not present in the collection</exception>
+        </member>
+        <member name="M:Xunit.Assert.Contains``1(``0,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})">
+            <summary>
+            Verifies that a collection contains a given object, using an equality comparer.
+            </summary>
+            <typeparam name="T">The type of the object to be verified</typeparam>
+            <param name="expected">The object expected to be in the collection</param>
+            <param name="collection">The collection to be inspected</param>
+            <param name="comparer">The comparer used to equate objects in the collection with the expected object</param>
+            <exception cref="T:Xunit.Sdk.ContainsException">Thrown when the object is not present in the collection</exception>
+        </member>
+        <member name="M:Xunit.Assert.Contains(System.String,System.String)">
+            <summary>
+            Verifies that a string contains a given sub-string, using the current culture.
+            </summary>
+            <param name="expectedSubstring">The sub-string expected to be in the string</param>
+            <param name="actualString">The string to be inspected</param>
+            <exception cref="T:Xunit.Sdk.ContainsException">Thrown when the sub-string is not present inside the string</exception>
+        </member>
+        <member name="M:Xunit.Assert.Contains(System.String,System.String,System.StringComparison)">
+            <summary>
+            Verifies that a string contains a given sub-string, using the given comparison type.
+            </summary>
+            <param name="expectedSubstring">The sub-string expected to be in the string</param>
+            <param name="actualString">The string to be inspected</param>
+            <param name="comparisonType">The type of string comparison to perform</param>
+            <exception cref="T:Xunit.Sdk.ContainsException">Thrown when the sub-string is not present inside the string</exception>
+        </member>
+        <member name="M:Xunit.Assert.DoesNotContain``1(``0,System.Collections.Generic.IEnumerable{``0})">
+            <summary>
+            Verifies that a collection does not contain a given object.
+            </summary>
+            <typeparam name="T">The type of the object to be compared</typeparam>
+            <param name="expected">The object that is expected not to be in the collection</param>
+            <param name="collection">The collection to be inspected</param>
+            <exception cref="T:Xunit.Sdk.DoesNotContainException">Thrown when the object is present inside the container</exception>
+        </member>
+        <member name="M:Xunit.Assert.DoesNotContain``1(``0,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEqualityComparer{``0})">
+            <summary>
+            Verifies that a collection does not contain a given object, using an equality comparer.
+            </summary>
+            <typeparam name="T">The type of the object to be compared</typeparam>
+            <param name="expected">The object that is expected not to be in the collection</param>
+            <param name="collection">The collection to be inspected</param>
+            <param name="comparer">The comparer used to equate objects in the collection with the expected object</param>
+            <exception cref="T:Xunit.Sdk.DoesNotContainException">Thrown when the object is present inside the container</exception>
+        </member>
+        <member name="M:Xunit.Assert.DoesNotContain(System.String,System.String)">
+            <summary>
+            Verifies that a string does not contain a given sub-string, using the current culture.
+            </summary>
+            <param name="expectedSubstring">The sub-string which is expected not to be in the string</param>
+            <param name="actualString">The string to be inspected</param>
+            <exception cref="T:Xunit.Sdk.DoesNotContainException">Thrown when the sub-string is present inside the string</exception>
+        </member>
+        <member name="M:Xunit.Assert.DoesNotContain(System.String,System.String,System.StringComparison)">
+            <summary>
+            Verifies that a string does not contain a given sub-string, using the current culture.
+            </summary>
+            <param name="expectedSubstring">The sub-string which is expected not to be in the string</param>
+            <param name="actualString">The string to be inspected</param>
+            <param name="comparisonType">The type of string comparison to perform</param>
+            <exception cref="T:Xunit.Sdk.DoesNotContainException">Thrown when the sub-string is present inside the given string</exception>
+        </member>
+        <member name="M:Xunit.Assert.DoesNotThrow(Xunit.Assert.ThrowsDelegate)">
+            <summary>
+            Verifies that a block of code does not throw any exceptions.
+            </summary>
+            <param name="testCode">A delegate to the code to be tested</param>
+        </member>
+        <member name="M:Xunit.Assert.Empty(System.Collections.IEnumerable)">
+            <summary>
+            Verifies that a collection is empty.
+            </summary>
+            <param name="collection">The collection to be inspected</param>
+            <exception cref="T:System.ArgumentNullException">Thrown when the collection is null</exception>
+            <exception cref="T:Xunit.Sdk.EmptyException">Thrown when the collection is not empty</exception>
+        </member>
+        <member name="M:Xunit.Assert.Equal``1(``0,``0)">
+            <summary>
+            Verifies that two objects are equal, using a default comparer.
+            </summary>
+            <typeparam name="T">The type of the objects to be compared</typeparam>
+            <param name="expected">The expected value</param>
+            <param name="actual">The value to be compared against</param>
+            <exception cref="T:Xunit.Sdk.EqualException">Thrown when the objects are not equal</exception>
+        </member>
+        <member name="M:Xunit.Assert.Equal``1(``0,``0,System.Collections.Generic.IEqualityComparer{``0})">
+            <summary>
+            Verifies that two objects are equal, using a custom equatable comparer.
+            </summary>
+            <typeparam name="T">The type of the objects to be compared</typeparam>
+            <param name="expected">The expected value</param>
+            <param name="actual">The value to be compared against</param>
+            <param name="comparer">The comparer used to compare the two objects</param>
+            <exception cref="T:Xunit.Sdk.EqualException">Thrown when the objects are not equal</exception>
+        </member>
+        <member name="M:Xunit.Assert.Equal(System.Double,System.Double,System.Int32)">
+            <summary>
+            Verifies that two <see cref="T:System.Double"/> values are equal, within the number of decimal
+            places given by <paramref name="precision"/>.
+            </summary>
+            <param name="expected">The expected value</param>
+            <param name="actual">The value to be compared against</param>
+            <param name="precision">The number of decimal places (valid values: 0-15)</param>
+            <exception cref="T:Xunit.Sdk.EqualException">Thrown when the values are not equal</exception>
+        </member>
+        <member name="M:Xunit.Assert.Equal(System.Decimal,System.Decimal,System.Int32)">
+            <summary>
+            Verifies that two <see cref="T:System.Decimal"/> values are equal, within the number of decimal
+            places given by <paramref name="precision"/>.
+            </summary>
+            <param name="expected">The expected value</param>
+            <param name="actual">The value to be compared against</param>
+            <param name="precision">The number of decimal places (valid values: 0-15)</param>
+            <exception cref="T:Xunit.Sdk.EqualException">Thrown when the values are not equal</exception>
+        </member>
+        <member name="M:Xunit.Assert.Equals(System.Object,System.Object)">
+            <summary>Do not call this method.</summary>
+        </member>
+        <member name="M:Xunit.Assert.False(System.Boolean)">
+            <summary>
+            Verifies that the condition is false.
+            </summary>
+            <param name="condition">The condition to be tested</param>
+            <exception cref="T:Xunit.Sdk.FalseException">Thrown if the condition is not false</exception>
+        </member>
+        <member name="M:Xunit.Assert.False(System.Boolean,System.String)">
+            <summary>
+            Verifies that the condition is false.
+            </summary>
+            <param name="condition">The condition to be tested</param>
+            <param name="userMessage">The message to show when the condition is not false</param>
+            <exception cref="T:Xunit.Sdk.FalseException">Thrown if the condition is not false</exception>
+        </member>
+        <member name="M:Xunit.Assert.InRange``1(``0,``0,``0)">
+            <summary>
+            Verifies that a value is within a given range.
+            </summary>
+            <typeparam name="T">The type of the value to be compared</typeparam>
+            <param name="actual">The actual value to be evaluated</param>
+            <param name="low">The (inclusive) low value of the range</param>
+            <param name="high">The (inclusive) high value of the range</param>
+            <exception cref="T:Xunit.Sdk.InRangeException">Thrown when the value is not in the given range</exception>
+        </member>
+        <member name="M:Xunit.Assert.InRange``1(``0,``0,``0,System.Collections.Generic.IComparer{``0})">
+            <summary>
+            Verifies that a value is within a given range, using a comparer.
+            </summary>
+            <typeparam name="T">The type of the value to be compared</typeparam>
+            <param name="actual">The actual value to be evaluated</param>
+            <param name="low">The (inclusive) low value of the range</param>
+            <param name="high">The (inclusive) high value of the range</param>
+            <param name="comparer">The comparer used to evaluate the value's range</param>
+            <exception cref="T:Xunit.Sdk.InRangeException">Thrown when the value is not in the given range</exception>
+        </member>
+        <member name="M:Xunit.Assert.IsAssignableFrom``1(System.Object)">
+            <summary>
+            Verifies that an object is of the given type or a derived type.
+            </summary>
+            <typeparam name="T">The type the object should be</typeparam>
+            <param name="object">The object to be evaluated</param>
+            <returns>The object, casted to type T when successful</returns>
+            <exception cref="T:Xunit.Sdk.IsAssignableFromException">Thrown when the object is not the given type</exception>
+        </member>
+        <member name="M:Xunit.Assert.IsAssignableFrom(System.Type,System.Object)">
+            <summary>
+            Verifies that an object is of the given type or a derived type.
+            </summary>
+            <param name="expectedType">The type the object should be</param>
+            <param name="object">The object to be evaluated</param>
+            <exception cref="T:Xunit.Sdk.IsAssignableFromException">Thrown when the object is not the given type</exception>
+        </member>
+        <member name="M:Xunit.Assert.IsNotType``1(System.Object)">
+            <summary>
+            Verifies that an object is not exactly the given type.
+            </summary>
+            <typeparam name="T">The type the object should not be</typeparam>
+            <param name="object">The object to be evaluated</param>
+            <exception cref="T:Xunit.Sdk.IsNotTypeException">Thrown when the object is the given type</exception>
+        </member>
+        <member name="M:Xunit.Assert.IsNotType(System.Type,System.Object)">
+            <summary>
+            Verifies that an object is not exactly the given type.
+            </summary>
+            <param name="expectedType">The type the object should not be</param>
+            <param name="object">The object to be evaluated</param>
+            <exception cref="T:Xunit.Sdk.IsNotTypeException">Thrown when the object is the given type</exception>
+        </member>
+        <member name="M:Xunit.Assert.IsType``1(System.Object)">
+            <summary>
+            Verifies that an object is exactly the given type (and not a derived type).
+            </summary>
+            <typeparam name="T">The type the object should be</typeparam>
+            <param name="object">The object to be evaluated</param>
+            <returns>The object, casted to type T when successful</returns>
+            <exception cref="T:Xunit.Sdk.IsTypeException">Thrown when the object is not the given type</exception>
+        </member>
+        <member name="M:Xunit.Assert.IsType(System.Type,System.Object)">
+            <summary>
+            Verifies that an object is exactly the given type (and not a derived type).
+            </summary>
+            <param name="expectedType">The type the object should be</param>
+            <param name="object">The object to be evaluated</param>
+            <exception cref="T:Xunit.Sdk.IsTypeException">Thrown when the object is not the given type</exception>
+        </member>
+        <member name="M:Xunit.Assert.NotEmpty(System.Collections.IEnumerable)">
+            <summary>
+            Verifies that a collection is not empty.
+            </summary>
+            <param name="collection">The collection to be inspected</param>
+            <exception cref="T:System.ArgumentNullException">Thrown when a null collection is passed</exception>
+            <exception cref="T:Xunit.Sdk.NotEmptyException">Thrown when the collection is empty</exception>
+        </member>
+        <member name="M:Xunit.Assert.NotEqual``1(``0,``0)">
+            <summary>
+            Verifies that two objects are not equal, using a default comparer.
+            </summary>
+            <typeparam name="T">The type of the objects to be compared</typeparam>
+            <param name="expected">The expected object</param>
+            <param name="actual">The actual object</param>
+            <exception cref="T:Xunit.Sdk.NotEqualException">Thrown when the objects are equal</exception>
+        </member>
+        <member name="M:Xunit.Assert.NotEqual``1(``0,``0,System.Collections.Generic.IEqualityComparer{``0})">
+            <summary>
+            Verifies that two objects are not equal, using a custom equality comparer.
+            </summary>
+            <typeparam name="T">The type of the objects to be compared</typeparam>
+            <param name="expected">The expected object</param>
+            <param name="actual">The actual object</param>
+            <param name="comparer">The comparer used to examine the objects</param>
+            <exception cref="T:Xunit.Sdk.NotEqualException">Thrown when the objects are equal</exception>
+        </member>
+        <member name="M:Xunit.Assert.NotInRange``1(``0,``0,``0)">
+            <summary>
+            Verifies that a value is not within a given range, using the default comparer.
+            </summary>
+            <typeparam name="T">The type of the value to be compared</typeparam>
+            <param name="actual">The actual value to be evaluated</param>
+            <param name="low">The (inclusive) low value of the range</param>
+            <param name="high">The (inclusive) high value of the range</param>
+            <exception cref="T:Xunit.Sdk.NotInRangeException">Thrown when the value is in the given range</exception>
+        </member>
+        <member name="M:Xunit.Assert.NotInRange``1(``0,``0,``0,System.Collections.Generic.IComparer{``0})">
+            <summary>
+            Verifies that a value is not within a given range, using a comparer.
+            </summary>
+            <typeparam name="T">The type of the value to be compared</typeparam>
+            <param name="actual">The actual value to be evaluated</param>
+            <param name="low">The (inclusive) low value of the range</param>
+            <param name="high">The (inclusive) high value of the range</param>
+            <param name="comparer">The comparer used to evaluate the value's range</param>
+            <exception cref="T:Xunit.Sdk.NotInRangeException">Thrown when the value is in the given range</exception>
+        </member>
+        <member name="M:Xunit.Assert.NotNull(System.Object)">
+            <summary>
+            Verifies that an object reference is not null.
+            </summary>
+            <param name="object">The object to be validated</param>
+            <exception cref="T:Xunit.Sdk.NotNullException">Thrown when the object is not null</exception>
+        </member>
+        <member name="M:Xunit.Assert.NotSame(System.Object,System.Object)">
+            <summary>
+            Verifies that two objects are not the same instance.
+            </summary>
+            <param name="expected">The expected object instance</param>
+            <param name="actual">The actual object instance</param>
+            <exception cref="T:Xunit.Sdk.NotSameException">Thrown when the objects are the same instance</exception>
+        </member>
+        <member name="M:Xunit.Assert.Null(System.Object)">
+            <summary>
+            Verifies that an object reference is null.
+            </summary>
+            <param name="object">The object to be inspected</param>
+            <exception cref="T:Xunit.Sdk.NullException">Thrown when the object reference is not null</exception>
+        </member>
+        <member name="M:Xunit.Assert.PropertyChanged(System.ComponentModel.INotifyPropertyChanged,System.String,Xunit.Assert.PropertyChangedDelegate)">
+            <summary>
+            Verifies that the provided object raised INotifyPropertyChanged.PropertyChanged
+            as a result of executing the given test code.
+            </summary>
+            <param name="object">The object which should raise the notification</param>
+            <param name="propertyName">The property name for which the notification should be raised</param>
+            <param name="testCode">The test code which should cause the notification to be raised</param>
+            <exception cref="T:Xunit.Sdk.PropertyChangedException">Thrown when the notification is not raised</exception>
+        </member>
+        <member name="M:Xunit.Assert.Same(System.Object,System.Object)">
+            <summary>
+            Verifies that two objects are the same instance.
+            </summary>
+            <param name="expected">The expected object instance</param>
+            <param name="actual">The actual object instance</param>
+            <exception cref="T:Xunit.Sdk.SameException">Thrown when the objects are not the same instance</exception>
+        </member>
+        <member name="M:Xunit.Assert.Single(System.Collections.IEnumerable)">
+            <summary>
+            Verifies that the given collection contains only a single
+            element of the given type.
+            </summary>
+            <param name="collection">The collection.</param>
+            <returns>The single item in the collection.</returns>
+            <exception cref="T:Xunit.Sdk.SingleException">Thrown when the collection does not contain
+            exactly one element.</exception>
+        </member>
+        <member name="M:Xunit.Assert.Single(System.Collections.IEnumerable,System.Object)">
+            <summary>
+            Verifies that the given collection contains only a single
+            element of the given value. The collection may or may not
+            contain other values.
+            </summary>
+            <param name="collection">The collection.</param>
+            <param name="expected">The value to find in the collection.</param>
+            <returns>The single item in the collection.</returns>
+            <exception cref="T:Xunit.Sdk.SingleException">Thrown when the collection does not contain
+            exactly one element.</exception>
+        </member>
+        <member name="M:Xunit.Assert.Single``1(System.Collections.Generic.IEnumerable{``0})">
+            <summary>
+            Verifies that the given collection contains only a single
+            element of the given type.
+            </summary>
+            <typeparam name="T">The collection type.</typeparam>
+            <param name="collection">The collection.</param>
+            <returns>The single item in the collection.</returns>
+            <exception cref="T:Xunit.Sdk.SingleException">Thrown when the collection does not contain
+            exactly one element.</exception>
+        </member>
+        <member name="M:Xunit.Assert.Single``1(System.Collections.Generic.IEnumerable{``0},System.Predicate{``0})">
+            <summary>
+            Verifies that the given collection contains only a single
+            element of the given type which matches the given predicate. The
+            collection may or may not contain other values which do not
+            match the given predicate.
+            </summary>
+            <typeparam name="T">The collection type.</typeparam>
+            <param name="collection">The collection.</param>
+            <param name="predicate">The item matching predicate.</param>
+            <returns>The single item in the filtered collection.</returns>
+            <exception cref="T:Xunit.Sdk.SingleException">Thrown when the filtered collection does
+            not contain exactly one element.</exception>
+        </member>
+        <member name="M:Xunit.Assert.Throws``1(Xunit.Assert.ThrowsDelegate)">
+            <summary>
+            Verifies that the exact exception is thrown (and not a derived exception type).
+            </summary>
+            <typeparam name="T">The type of the exception expected to be thrown</typeparam>
+            <param name="testCode">A delegate to the code to be tested</param>
+            <returns>The exception that was thrown, when successful</returns>
+            <exception cref="T:Xunit.Sdk.ThrowsException">Thrown when an exception was not thrown, or when an exception of the incorrect type is thrown</exception>
+        </member>
+        <member name="M:Xunit.Assert.Throws``1(Xunit.Assert.ThrowsDelegateWithReturn)">
+            <summary>
+            Verifies that the exact exception is thrown (and not a derived exception type).
+            Generally used to test property accessors.
+            </summary>
+            <typeparam name="T">The type of the exception expected to be thrown</typeparam>
+            <param name="testCode">A delegate to the code to be tested</param>
+            <returns>The exception that was thrown, when successful</returns>
+            <exception cref="T:Xunit.Sdk.ThrowsException">Thrown when an exception was not thrown, or when an exception of the incorrect type is thrown</exception>
+        </member>
+        <member name="M:Xunit.Assert.Throws(System.Type,Xunit.Assert.ThrowsDelegate)">
+            <summary>
+            Verifies that the exact exception is thrown (and not a derived exception type).
+            </summary>
+            <param name="exceptionType">The type of the exception expected to be thrown</param>
+            <param name="testCode">A delegate to the code to be tested</param>
+            <returns>The exception that was thrown, when successful</returns>
+            <exception cref="T:Xunit.Sdk.ThrowsException">Thrown when an exception was not thrown, or when an exception of the incorrect type is thrown</exception>
+        </member>
+        <member name="M:Xunit.Assert.Throws(System.Type,Xunit.Assert.ThrowsDelegateWithReturn)">
+            <summary>
+            Verifies that the exact exception is thrown (and not a derived exception type).
+            Generally used to test property accessors.
+            </summary>
+            <param name="exceptionType">The type of the exception expected to be thrown</param>
+            <param name="testCode">A delegate to the code to be tested</param>
+            <returns>The exception that was thrown, when successful</returns>
+            <exception cref="T:Xunit.Sdk.ThrowsException">Thrown when an exception was not thrown, or when an exception of the incorrect type is thrown</exception>
+        </member>
+        <member name="M:Xunit.Assert.True(System.Boolean)">
+            <summary>
+            Verifies that an expression is true.
+            </summary>
+            <param name="condition">The condition to be inspected</param>
+            <exception cref="T:Xunit.Sdk.TrueException">Thrown when the condition is false</exception>
+        </member>
+        <member name="M:Xunit.Assert.True(System.Boolean,System.String)">
+            <summary>
+            Verifies that an expression is true.
+            </summary>
+            <param name="condition">The condition to be inspected</param>
+            <param name="userMessage">The message to be shown when the condition is false</param>
+            <exception cref="T:Xunit.Sdk.TrueException">Thrown when the condition is false</exception>
+        </member>
+        <member name="T:Xunit.Assert.PropertyChangedDelegate">
+            <summary>
+            Used by the PropertyChanged.
+            </summary>
+        </member>
+        <member name="T:Xunit.Assert.ThrowsDelegate">
+            <summary>
+            Used by the Throws and DoesNotThrow methods.
+            </summary>
+        </member>
+        <member name="T:Xunit.Assert.ThrowsDelegateWithReturn">
+            <summary>
+            Used by the Throws and DoesNotThrow methods.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.ExceptionAndOutputCaptureCommand">
+            <summary>
+            This command sets up the necessary trace listeners and standard
+            output/error listeners to capture Assert/Debug.Trace failures,
+            output to stdout/stderr, and Assert/Debug.Write text. It also
+            captures any exceptions that are thrown and packages them as
+            FailedResults, including the possibility that the configuration
+            file is messed up (which is exposed when we attempt to manipulate
+            the trace listener list).
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.DelegatingTestCommand">
+            <summary>
+            Base class used by commands which delegate to inner commands.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.ITestCommand">
+            <summary>
+            Interface which represents the ability to invoke of a test method.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ITestCommand.Execute(System.Object)">
+            <summary>
+            Executes the test method.
+            </summary>
+            <param name="testClass">The instance of the test class</param>
+            <returns>Returns information about the test run</returns>
+        </member>
+        <member name="M:Xunit.Sdk.ITestCommand.ToStartXml">
+            <summary>
+            Creates the start XML to be sent to the callback when the test is about to start
+            running.
+            </summary>
+            <returns>Return the <see cref="T:System.Xml.XmlNode"/> of the start node, or null if the test
+            is known that it will not be running.</returns>
+        </member>
+        <member name="P:Xunit.Sdk.ITestCommand.DisplayName">
+            <summary>
+            Gets the display name of the test method.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.ITestCommand.ShouldCreateInstance">
+            <summary>
+            Determines if the test runner infrastructure should create a new instance of the
+            test class before running the test.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.ITestCommand.Timeout">
+            <summary>
+            Determines if the test should be limited to running a specific amount of time
+            before automatically failing.
+            </summary>
+            <returns>The timeout value, in milliseconds; if zero, the test will not have
+            a timeout.</returns>
+        </member>
+        <member name="M:Xunit.Sdk.DelegatingTestCommand.#ctor(Xunit.Sdk.ITestCommand)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.DelegatingTestCommand"/> class.
+            </summary>
+            <param name="innerCommand">The inner command to delegate to.</param>
+        </member>
+        <member name="M:Xunit.Sdk.DelegatingTestCommand.Execute(System.Object)">
+            <inheritdoc/>
+        </member>
+        <member name="M:Xunit.Sdk.DelegatingTestCommand.ToStartXml">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.DelegatingTestCommand.InnerCommand">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.DelegatingTestCommand.DisplayName">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.DelegatingTestCommand.ShouldCreateInstance">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.DelegatingTestCommand.Timeout">
+            <inheritdoc/>
+        </member>
+        <member name="M:Xunit.Sdk.ExceptionAndOutputCaptureCommand.#ctor(Xunit.Sdk.ITestCommand,Xunit.Sdk.IMethodInfo)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.ExceptionAndOutputCaptureCommand"/>
+            class.
+            </summary>
+            <param name="innerCommand">The command that will be wrapped.</param>
+            <param name="method">The test method.</param>
+        </member>
+        <member name="M:Xunit.Sdk.ExceptionAndOutputCaptureCommand.Execute(System.Object)">
+            <inheritdoc/>
+        </member>
+        <member name="T:Xunit.Sdk.FactCommand">
+            <summary>
+            Represents an implementation of <see cref="T:Xunit.Sdk.ITestCommand"/> to be used with
+            tests which are decorated with the <see cref="T:Xunit.FactAttribute"/>.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.TestCommand">
+            <summary>
+            Represents an xUnit.net test command.
+            </summary>
+        </member>
+        <member name="F:Xunit.Sdk.TestCommand.testMethod">
+            <summary>
+            The method under test.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TestCommand.#ctor(Xunit.Sdk.IMethodInfo,System.String,System.Int32)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.TestCommand"/> class.
+            </summary>
+            <param name="method">The method under test.</param>
+            <param name="displayName">The display name of the test.</param>
+            <param name="timeout">The timeout, in milliseconds.</param>
+        </member>
+        <member name="M:Xunit.Sdk.TestCommand.Execute(System.Object)">
+            <inheritdoc/>
+        </member>
+        <member name="M:Xunit.Sdk.TestCommand.ToStartXml">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.TestCommand.DisplayName">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.TestCommand.MethodName">
+            <summary>
+            Gets the name of the method under test.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.TestCommand.ShouldCreateInstance">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.TestCommand.Timeout">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.TestCommand.TypeName">
+            <summary>
+            Gets the name of the type under test.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.FactCommand.#ctor(Xunit.Sdk.IMethodInfo)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.FactCommand"/> class.
+            </summary>
+            <param name="method">The test method.</param>
+        </member>
+        <member name="M:Xunit.Sdk.FactCommand.Execute(System.Object)">
+            <inheritdoc/>
+        </member>
+        <member name="T:Xunit.Sdk.AssertActualExpectedException">
+            <summary>
+            Base class for exceptions that have actual and expected values
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.AssertException">
+            <summary>
+            The base assert exception class
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.AssertException.#ctor">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.AssertException"/> class.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.AssertException.#ctor(System.String)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.AssertException"/> class.
+            </summary>
+            <param name="userMessage">The user message to be displayed</param>
+        </member>
+        <member name="M:Xunit.Sdk.AssertException.#ctor(System.String,System.Exception)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.AssertException"/> class.
+            </summary>
+            <param name="userMessage">The user message to be displayed</param>
+            <param name="innerException">The inner exception</param>
+        </member>
+        <member name="M:Xunit.Sdk.AssertException.#ctor(System.String,System.String)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.AssertException"/> class.
+            </summary>
+            <param name="userMessage">The user message to be displayed</param>
+            <param name="stackTrace">The stack trace to be displayed</param>
+        </member>
+        <member name="M:Xunit.Sdk.AssertException.FilterStackTrace(System.String)">
+            <summary>
+            Filters the stack trace to remove all lines that occur within the testing framework.
+            </summary>
+            <param name="stackTrace">The original stack trace</param>
+            <returns>The filtered stack trace</returns>
+        </member>
+        <member name="P:Xunit.Sdk.AssertException.StackTrace">
+            <summary>
+            Gets a string representation of the frames on the call stack at the time the current exception was thrown.
+            </summary>
+            <returns>A string that describes the contents of the call stack, with the most recent method call appearing first.</returns>
+        </member>
+        <member name="P:Xunit.Sdk.AssertException.UserMessage">
+            <summary>
+            Gets the user message
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.AssertActualExpectedException.#ctor(System.Object,System.Object,System.String)">
+            <summary>
+            Creates a new instance of the <see href="AssertActualExpectedException"/> class.
+            </summary>
+            <param name="expected">The expected value</param>
+            <param name="actual">The actual value</param>
+            <param name="userMessage">The user message to be shown</param>
+        </member>
+        <member name="M:Xunit.Sdk.AssertActualExpectedException.#ctor(System.Object,System.Object,System.String,System.Boolean)">
+            <summary>
+            Creates a new instance of the <see href="AssertActualExpectedException"/> class.
+            </summary>
+            <param name="expected">The expected value</param>
+            <param name="actual">The actual value</param>
+            <param name="userMessage">The user message to be shown</param>
+            <param name="skipPositionCheck">Set to true to skip the check for difference position</param>
+        </member>
+        <member name="P:Xunit.Sdk.AssertActualExpectedException.Actual">
+            <summary>
+            Gets the actual value.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.AssertActualExpectedException.Expected">
+            <summary>
+            Gets the expected value.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.AssertActualExpectedException.Message">
+            <summary>
+            Gets a message that describes the current exception. Includes the expected and actual values.
+            </summary>
+            <returns>The error message that explains the reason for the exception, or an empty string("").</returns>
+            <filterpriority>1</filterpriority>
+        </member>
+        <member name="T:Xunit.Sdk.ContainsException">
+            <summary>
+            Exception thrown when a collection unexpectedly does not contain the expected value.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ContainsException.#ctor(System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.ContainsException"/> class.
+            </summary>
+            <param name="expected">The expected object value</param>
+        </member>
+        <member name="M:Xunit.Sdk.ContainsException.#ctor(System.Object,System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.ContainsException"/> class.
+            </summary>
+            <param name="expected">The expected object value</param>
+            <param name="actual">The actual value</param>
+        </member>
+        <member name="T:Xunit.Sdk.ParameterCountMismatchException">
+            <summary>
+            Exception to be thrown from <see cref="M:Xunit.Sdk.IMethodInfo.Invoke(System.Object,System.Object[])"/> when the number of
+            parameter values does not the test method signature.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ParameterCountMismatchException.#ctor">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.ParameterCountMismatchException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.PropertyChangedException">
+            <summary>
+            Exception thrown when code unexpectedly fails change a property.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.PropertyChangedException.#ctor(System.String)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.ThrowsException"/> class. Call this constructor
+            when no exception was thrown.
+            </summary>
+            <param name="expectedType">The type of the exception that was expected</param>
+        </member>
+        <member name="T:Xunit.Sdk.SingleException">
+            <summary>
+            Exception thrown when the collection did not contain exactly one element.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.SingleException.#ctor(System.Int32)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.SingleException"/> class.
+            </summary>
+            <param name="count">The numbers of items in the collection.</param>
+        </member>
+        <member name="T:Xunit.Sdk.Executor">
+            <summary>
+            Internal class used for version-resilient test runners. DO NOT CALL DIRECTLY.
+            Version-resilient runners should link against xunit.runner.utility.dll and use
+            ExecutorWrapper instead.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.#ctor(System.String)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.InitializeLifetimeService">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.Executor.AssemblyTestCount">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.AssemblyTestCount.#ctor(Xunit.Sdk.Executor,System.Object)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.AssemblyTestCount.InitializeLifetimeService">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.Executor.EnumerateTests">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.EnumerateTests.#ctor(Xunit.Sdk.Executor,System.Object)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.EnumerateTests.InitializeLifetimeService">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.Executor.RunAssembly">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunAssembly.#ctor(Xunit.Sdk.Executor,System.Object)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunAssembly.InitializeLifetimeService">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.Executor.RunClass">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunClass.#ctor(Xunit.Sdk.Executor,System.String,System.Object)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunClass.InitializeLifetimeService">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.Executor.RunTest">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunTest.#ctor(Xunit.Sdk.Executor,System.String,System.String,System.Object)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunTest.InitializeLifetimeService">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.Executor.RunTests">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunTests.#ctor(Xunit.Sdk.Executor,System.String,System.Collections.Generic.List{System.String},System.Object)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Executor.RunTests.InitializeLifetimeService">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.IsAssignableFromException">
+            <summary>
+            Exception thrown when the value is unexpectedly not of the given type or a derived type.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.IsAssignableFromException.#ctor(System.Type,System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.IsTypeException"/> class.
+            </summary>
+            <param name="expected">The expected type</param>
+            <param name="actual">The actual object value</param>
+        </member>
+        <member name="T:Xunit.Record">
+            <summary>
+            Allows the user to record actions for a test.
+            </summary>
+        </member>
+        <member name="M:Xunit.Record.Exception(Xunit.Assert.ThrowsDelegate)">
+            <summary>
+            Records any exception which is thrown by the given code.
+            </summary>
+            <param name="code">The code which may thrown an exception.</param>
+            <returns>Returns the exception that was thrown by the code; null, otherwise.</returns>
+        </member>
+        <member name="M:Xunit.Record.Exception(Xunit.Assert.ThrowsDelegateWithReturn)">
+            <summary>
+            Records any exception which is thrown by the given code that has
+            a return value. Generally used for testing property accessors.
+            </summary>
+            <param name="code">The code which may thrown an exception.</param>
+            <returns>Returns the exception that was thrown by the code; null, otherwise.</returns>
+        </member>
+        <member name="T:Xunit.Sdk.AfterTestException">
+            <summary>
+            Exception that is thrown when one or more exceptions are thrown from
+            the After method of a <see cref="T:Xunit.BeforeAfterTestAttribute"/>.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.AfterTestException.#ctor(System.Collections.Generic.IEnumerable{System.Exception})">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.AfterTestException"/> class.
+            </summary>
+            <param name="exceptions">The exceptions.</param>
+        </member>
+        <member name="M:Xunit.Sdk.AfterTestException.#ctor(System.Exception[])">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.AfterTestException"/> class.
+            </summary>
+            <param name="exceptions">The exceptions.</param>
+        </member>
+        <member name="P:Xunit.Sdk.AfterTestException.AfterExceptions">
+            <summary>
+            Gets the list of exceptions thrown in the After method.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.AfterTestException.Message">
+            <summary>
+            Gets a message that describes the current exception.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.AfterTestException.StackTrace">
+            <summary>
+            Gets a string representation of the frames on the call stack at the time the current exception was thrown.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.BeforeAfterCommand">
+            <summary>
+            Implementation of <see cref="T:Xunit.Sdk.ITestCommand"/> which executes the
+            <see cref="T:Xunit.BeforeAfterTestAttribute"/> instances attached to a test method.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.BeforeAfterCommand.#ctor(Xunit.Sdk.ITestCommand,System.Reflection.MethodInfo)">
+            <summary>
+            Initializes a new instance of the <see cref="T:Xunit.Sdk.BeforeAfterCommand"/> class.
+            </summary>
+            <param name="innerCommand">The inner command.</param>
+            <param name="testMethod">The method.</param>
+        </member>
+        <member name="M:Xunit.Sdk.BeforeAfterCommand.Execute(System.Object)">
+            <summary>
+            Executes the test method.
+            </summary>
+            <param name="testClass">The instance of the test class</param>
+            <returns>Returns information about the test run</returns>
+        </member>
+        <member name="T:Xunit.Sdk.ExecutorCallback">
+            <summary>
+            This class supports the xUnit.net infrastructure and is not intended to be used
+            directly from your code.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ExecutorCallback.Wrap(System.Object)">
+            <summary>
+            This API supports the xUnit.net infrastructure and is not intended to be used
+            directly from your code.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ExecutorCallback.Notify(System.String)">
+            <summary>
+            This API supports the xUnit.net infrastructure and is not intended to be used
+            directly from your code.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ExecutorCallback.ShouldContinue">
+            <summary>
+            This API supports the xUnit.net infrastructure and is not intended to be used
+            directly from your code.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.Guard">
+            <summary>
+            Guard class, used for guard clauses and argument validation
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.Guard.ArgumentNotNull(System.String,System.Object)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Guard.ArgumentNotNullOrEmpty(System.String,System.Collections.IEnumerable)">
+            <summary/>
+        </member>
+        <member name="M:Xunit.Sdk.Guard.ArgumentValid(System.String,System.String,System.Boolean)">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.TestResult">
+            <summary>
+            Base class which contains XML manipulation helper methods
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.ITestResult">
+            <summary>
+            Interface that represents a single test result.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ITestResult.ToXml(System.Xml.XmlNode)">
+            <summary>
+            Converts the test result into XML that is consumed by the test runners.
+            </summary>
+            <param name="parentNode">The parent node.</param>
+            <returns>The newly created XML node.</returns>
+        </member>
+        <member name="P:Xunit.Sdk.ITestResult.ExecutionTime">
+            <summary>
+            The amount of time spent in execution
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TestResult.AddTime(System.Xml.XmlNode)">
+            <summary>
+            Adds the test execution time to the XML node.
+            </summary>
+            <param name="testNode">The XML node.</param>
+        </member>
+        <member name="M:Xunit.Sdk.TestResult.ToXml(System.Xml.XmlNode)">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.Sdk.TestResult.ExecutionTime">
+            <inheritdoc/>
+        </member>
+        <member name="T:Xunit.Sdk.ExceptionUtility">
+            <summary>
+            Utility methods for dealing with exceptions.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ExceptionUtility.GetMessage(System.Exception)">
+            <summary>
+            Gets the message for the exception, including any inner exception messages.
+            </summary>
+            <param name="ex">The exception</param>
+            <returns>The formatted message</returns>
+        </member>
+        <member name="M:Xunit.Sdk.ExceptionUtility.GetStackTrace(System.Exception)">
+            <summary>
+            Gets the stack trace for the exception, including any inner exceptions.
+            </summary>
+            <param name="ex">The exception</param>
+            <returns>The formatted stack trace</returns>
+        </member>
+        <member name="M:Xunit.Sdk.ExceptionUtility.RethrowWithNoStackTraceLoss(System.Exception)">
+            <summary>
+            Rethrows an exception object without losing the existing stack trace information
+            </summary>
+            <param name="ex">The exception to re-throw.</param>
+            <remarks>
+            For more information on this technique, see
+            http://www.dotnetjunkies.com/WebLog/chris.taylor/archive/2004/03/03/8353.aspx
+            </remarks>
+        </member>
+        <member name="T:Xunit.Sdk.MultiValueDictionary`2">
+            <summary>
+            A dictionary which contains multiple unique values for each key.
+            </summary>
+            <typeparam name="TKey">The type of the key.</typeparam>
+            <typeparam name="TValue">The type of the value.</typeparam>
+        </member>
+        <member name="M:Xunit.Sdk.MultiValueDictionary`2.AddValue(`0,`1)">
+            <summary>
+            Adds the value for the given key. If the key does not exist in the
+            dictionary yet, it will add it.
+            </summary>
+            <param name="key">The key.</param>
+            <param name="value">The value.</param>
+        </member>
+        <member name="M:Xunit.Sdk.MultiValueDictionary`2.Clear">
+            <summary>
+            Removes all keys and values from the dictionary.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.MultiValueDictionary`2.Contains(`0,`1)">
+            <summary>
+            Determines whether the dictionary contains to specified key and value.
+            </summary>
+            <param name="key">The key.</param>
+            <param name="value">The value.</param>
+        </member>
+        <member name="M:Xunit.Sdk.MultiValueDictionary`2.ForEach(Xunit.Sdk.MultiValueDictionary{`0,`1}.ForEachDelegate)">
+            <summary>
+            Calls the delegate once for each key/value pair in the dictionary.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.MultiValueDictionary`2.Remove(`0)">
+            <summary>
+            Removes the given key and all of its values.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.MultiValueDictionary`2.RemoveValue(`0,`1)">
+            <summary>
+            Removes the given value from the given key. If this was the
+            last value for the key, then the key is removed as well.
+            </summary>
+            <param name="key">The key.</param>
+            <param name="value">The value.</param>
+        </member>
+        <member name="P:Xunit.Sdk.MultiValueDictionary`2.Item(`0)">
+            <summary>
+            Gets the values for the given key.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.MultiValueDictionary`2.Count">
+            <summary>
+            Gets the count of the keys in the dictionary.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.MultiValueDictionary`2.Keys">
+            <summary>
+            Gets the keys.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.MultiValueDictionary`2.ForEachDelegate">
+            <summary/>
+        </member>
+        <member name="T:Xunit.Sdk.XmlUtility">
+            <summary>
+            XML utility methods
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.XmlUtility.AddAttribute(System.Xml.XmlNode,System.String,System.Object)">
+            <summary>
+            Adds an attribute to an XML node.
+            </summary>
+            <param name="node">The XML node.</param>
+            <param name="name">The attribute name.</param>
+            <param name="value">The attribute value.</param>
+        </member>
+        <member name="M:Xunit.Sdk.XmlUtility.AddElement(System.Xml.XmlNode,System.String)">
+            <summary>
+            Adds a child element to an XML node.
+            </summary>
+            <param name="parentNode">The parent XML node.</param>
+            <param name="name">The child element name.</param>
+            <returns>The new child XML element.</returns>
+        </member>
+        <member name="T:Xunit.Sdk.TraceAssertException">
+            <summary>
+            Exception that is thrown when a call to Debug.Assert() fails.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TraceAssertException.#ctor(System.String)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.TraceAssertException"/> class.
+            </summary>
+            <param name="assertMessage">The original assert message</param>
+        </member>
+        <member name="M:Xunit.Sdk.TraceAssertException.#ctor(System.String,System.String)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.TraceAssertException"/> class.
+            </summary>
+            <param name="assertMessage">The original assert message</param>
+            <param name="assertDetailedMessage">The original assert detailed message</param>
+        </member>
+        <member name="P:Xunit.Sdk.TraceAssertException.AssertDetailedMessage">
+            <summary>
+            Gets the original assert detailed message.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.TraceAssertException.AssertMessage">
+            <summary>
+            Gets the original assert message.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.TraceAssertException.Message">
+            <summary>
+            Gets a message that describes the current exception.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.DoesNotContainException">
+            <summary>
+            Exception thrown when a collection unexpectedly contains the expected value.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.DoesNotContainException.#ctor(System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.DoesNotContainException"/> class.
+            </summary>
+            <param name="expected">The expected object value</param>
+        </member>
+        <member name="T:Xunit.Sdk.DoesNotThrowException">
+            <summary>
+            Exception thrown when code unexpectedly throws an exception.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.DoesNotThrowException.#ctor(System.Exception)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.DoesNotThrowException"/> class.
+            </summary>
+            <param name="actual">Actual exception</param>
+        </member>
+        <member name="P:Xunit.Sdk.DoesNotThrowException.StackTrace">
+            <summary>
+            Gets a string representation of the frames on the call stack at the time the current exception was thrown.
+            </summary>
+            <returns>A string that describes the contents of the call stack, with the most recent method call appearing first.</returns>
+        </member>
+        <member name="T:Xunit.Sdk.EmptyException">
+            <summary>
+            Exception thrown when a collection is unexpectedly not empty.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.EmptyException.#ctor">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.EmptyException"/> class.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.EqualException">
+            <summary>
+            Exception thrown when two values are unexpectedly not equal.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.EqualException.#ctor(System.Object,System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.EqualException"/> class.
+            </summary>
+            <param name="expected">The expected object value</param>
+            <param name="actual">The actual object value</param>
+        </member>
+        <member name="M:Xunit.Sdk.EqualException.#ctor(System.Object,System.Object,System.Boolean)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.EqualException"/> class.
+            </summary>
+            <param name="expected">The expected object value</param>
+            <param name="actual">The actual object value</param>
+            <param name="skipPositionCheck">Set to true to skip the check for difference position</param>
+        </member>
+        <member name="T:Xunit.Sdk.FalseException">
+            <summary>
+            Exception thrown when a value is unexpectedly true.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.FalseException.#ctor(System.String)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.FalseException"/> class.
+            </summary>
+            <param name="userMessage">The user message to be display, or null for the default message</param>
+        </member>
+        <member name="T:Xunit.Sdk.InRangeException">
+            <summary>
+            Exception thrown when a value is unexpectedly not in the given range.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.InRangeException.#ctor(System.Object,System.Object,System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.InRangeException"/> class.
+            </summary>
+            <param name="actual">The actual object value</param>
+            <param name="low">The low value of the range</param>
+            <param name="high">The high value of the range</param>
+        </member>
+        <member name="P:Xunit.Sdk.InRangeException.Actual">
+            <summary>
+            Gets the actual object value
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.InRangeException.High">
+            <summary>
+            Gets the high value of the range
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.InRangeException.Low">
+            <summary>
+            Gets the low value of the range
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.InRangeException.Message">
+            <summary>
+            Gets a message that describes the current exception.
+            </summary>
+            <returns>The error message that explains the reason for the exception, or an empty string("").</returns>
+        </member>
+        <member name="T:Xunit.Sdk.IsNotTypeException">
+            <summary>
+            Exception thrown when the value is unexpectedly of the exact given type.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.IsNotTypeException.#ctor(System.Type,System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.IsNotTypeException"/> class.
+            </summary>
+            <param name="expected">The expected type</param>
+            <param name="actual">The actual object value</param>
+        </member>
+        <member name="T:Xunit.Sdk.IsTypeException">
+            <summary>
+            Exception thrown when the value is unexpectedly not of the exact given type.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.IsTypeException.#ctor(System.Type,System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.IsTypeException"/> class.
+            </summary>
+            <param name="expected">The expected type</param>
+            <param name="actual">The actual object value</param>
+        </member>
+        <member name="T:Xunit.IUseFixture`1">
+            <summary>
+            Used to decorate xUnit.net test classes that utilize fixture classes.
+            An instance of the fixture data is initialized just before the first
+            test in the class is run, and if it implements IDisposable, is disposed
+            after the last test in the class is run.
+            </summary>
+            <typeparam name="T">The type of the fixture</typeparam>
+        </member>
+        <member name="M:Xunit.IUseFixture`1.SetFixture(`0)">
+            <summary>
+            Called on the test class just before each test method is run,
+            passing the fixture data so that it can be used for the test.
+            All test runs share the same instance of fixture data.
+            </summary>
+            <param name="data">The fixture data</param>
+        </member>
+        <member name="T:Xunit.Sdk.NotInRangeException">
+            <summary>
+            Exception thrown when a value is unexpectedly in the given range.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.NotInRangeException.#ctor(System.Object,System.Object,System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.NotInRangeException"/> class.
+            </summary>
+            <param name="actual">The actual object value</param>
+            <param name="low">The low value of the range</param>
+            <param name="high">The high value of the range</param>
+        </member>
+        <member name="P:Xunit.Sdk.NotInRangeException.Actual">
+            <summary>
+            Gets the actual object value
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.NotInRangeException.High">
+            <summary>
+            Gets the high value of the range
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.NotInRangeException.Low">
+            <summary>
+            Gets the low value of the range
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.NotInRangeException.Message">
+            <summary>
+            Gets a message that describes the current exception.
+            </summary>
+            <returns>The error message that explains the reason for the exception, or an empty string("").</returns>
+        </member>
+        <member name="T:Xunit.BeforeAfterTestAttribute">
+            <summary>
+            Base attribute which indicates a test method interception (allows code to be run before and
+            after the test is run).
+            </summary>
+        </member>
+        <member name="M:Xunit.BeforeAfterTestAttribute.After(System.Reflection.MethodInfo)">
+            <summary>
+            This method is called after the test method is executed.
+            </summary>
+            <param name="methodUnderTest">The method under test</param>
+        </member>
+        <member name="M:Xunit.BeforeAfterTestAttribute.Before(System.Reflection.MethodInfo)">
+            <summary>
+            This method is called before the test method is executed.
+            </summary>
+            <param name="methodUnderTest">The method under test</param>
+        </member>
+        <member name="P:Xunit.BeforeAfterTestAttribute.TypeId">
+            <inheritdoc/>
+        </member>
+        <member name="T:Xunit.Sdk.NotEmptyException">
+            <summary>
+            Exception thrown when a collection is unexpectedly empty.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.NotEmptyException.#ctor">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.NotEmptyException"/> class.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.NotEqualException">
+            <summary>
+            Exception thrown when two values are unexpectedly equal.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.NotEqualException.#ctor">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.NotEqualException"/> class.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.NotNullException">
+            <summary>
+            Exception thrown when an object is unexpectedly null.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.NotNullException.#ctor">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.NotNullException"/> class.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.NotSameException">
+            <summary>
+            Exception thrown when two values are unexpected the same instance.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.NotSameException.#ctor">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.NotSameException"/> class.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.NullException">
+            <summary>
+            Exception thrown when an object reference is unexpectedly not null.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.NullException.#ctor(System.Object)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.NullException"/> class.
+            </summary>
+            <param name="actual"></param>
+        </member>
+        <member name="T:Xunit.Sdk.LifetimeCommand">
+            <summary>
+            Command that automatically creates the instance of the test class
+            and disposes it (if it implements <see cref="T:System.IDisposable"/>).
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.LifetimeCommand.#ctor(Xunit.Sdk.ITestCommand,Xunit.Sdk.IMethodInfo)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.LifetimeCommand"/> object.
+            </summary>
+            <param name="innerCommand">The command that is bring wrapped</param>
+            <param name="method">The method under test</param>
+        </member>
+        <member name="M:Xunit.Sdk.LifetimeCommand.Execute(System.Object)">
+            <summary>
+            Executes the test method. Creates a new instance of the class
+            under tests and passes it to the inner command. Also catches
+            any exceptions and converts them into <see cref="T:Xunit.Sdk.FailedResult"/>s.
+            </summary>
+            <param name="testClass">The instance of the test class</param>
+            <returns>Returns information about the test run</returns>
+        </member>
+        <member name="T:Xunit.Sdk.FixtureCommand">
+            <summary>
+            Command used to wrap a <see cref="T:Xunit.Sdk.ITestCommand"/> which has associated
+            fixture data.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.FixtureCommand.#ctor(Xunit.Sdk.ITestCommand,System.Collections.Generic.Dictionary{System.Reflection.MethodInfo,System.Object})">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.FixtureCommand"/> class.
+            </summary>
+            <param name="innerCommand">The inner command</param>
+            <param name="fixtures">The fixtures to be set on the test class</param>
+        </member>
+        <member name="M:Xunit.Sdk.FixtureCommand.Execute(System.Object)">
+            <summary>
+            Sets the fixtures on the test class by calling SetFixture, then
+            calls the inner command.
+            </summary>
+            <param name="testClass">The instance of the test class</param>
+            <returns>Returns information about the test run</returns>
+        </member>
+        <member name="T:Xunit.Sdk.TestTimer">
+            <summary>
+            A timer class used to figure out how long tests take to run. On most .NET implementations
+            this will use the <see cref="T:System.Diagnostics.Stopwatch"/> class because it's a high
+            resolution timer; however, on Silverlight/CoreCLR, it will use <see cref="T:System.DateTime"/>
+            (which will provide lower resolution results).
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TestTimer.#ctor">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.Sdk.TestTimer"/> class.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TestTimer.Start">
+            <summary>
+            Starts timing.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TestTimer.Stop">
+            <summary>
+            Stops timing.
+            </summary>
+        </member>
+        <member name="P:Xunit.Sdk.TestTimer.ElapsedMilliseconds">
+            <summary>
+            Gets how long the timer ran, in milliseconds. In order for this to be valid,
+            both <see cref="M:Xunit.Sdk.TestTimer.Start"/> and <see cref="M:Xunit.Sdk.TestTimer.Stop"/> must have been called.
+            </summary>
+        </member>
+        <member name="T:Xunit.TraitAttribute">
+            <summary>
+            Attribute used to decorate a test method with arbitrary name/value pairs ("traits").
+            </summary>
+        </member>
+        <member name="M:Xunit.TraitAttribute.#ctor(System.String,System.String)">
+            <summary>
+            Creates a new instance of the <see cref="T:Xunit.TraitAttribute"/> class.
+            </summary>
+            <param name="name">The trait name</param>
+            <param name="value">The trait value</param>
+        </member>
+        <member name="P:Xunit.TraitAttribute.Name">
+            <summary>
+            Gets the trait name.
+            </summary>
+        </member>
+        <member name="P:Xunit.TraitAttribute.TypeId">
+            <inheritdoc/>
+        </member>
+        <member name="P:Xunit.TraitAttribute.Value">
+            <summary>
+            Gets the trait value.
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.TestClassCommandRunner">
+            <summary>
+            Runner that executes an <see cref="T:Xunit.Sdk.ITestClassCommand"/> synchronously.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TestClassCommandRunner.Execute(Xunit.Sdk.ITestClassCommand,System.Collections.Generic.List{Xunit.Sdk.IMethodInfo},System.Predicate{Xunit.Sdk.ITestCommand},System.Predicate{Xunit.Sdk.ITestResult})">
+            <summary>
+            Execute the <see cref="T:Xunit.Sdk.ITestClassCommand"/>.
+            </summary>
+            <param name="testClassCommand">The test class command to execute</param>
+            <param name="methods">The methods to execute; if null or empty, all methods will be executed</param>
+            <param name="startCallback">The start run callback</param>
+            <param name="resultCallback">The end run result callback</param>
+            <returns>A <see cref="T:Xunit.Sdk.ClassResult"/> with the results of the test run</returns>
+        </member>
+        <member name="T:Xunit.Sdk.TestClassCommandFactory">
+            <summary>
+            Factory for <see cref="T:Xunit.Sdk.ITestClassCommand"/> objects, based on the type under test.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.TestClassCommandFactory.Make(System.Type)">
+            <summary>
+            Creates the test class command, which implements <see cref="T:Xunit.Sdk.ITestClassCommand"/>, for a given type.
+            </summary>
+            <param name="type">The type under test</param>
+            <returns>The test class command, if the class is a test class; null, otherwise</returns>
+        </member>
+        <member name="M:Xunit.Sdk.TestClassCommandFactory.Make(Xunit.Sdk.ITypeInfo)">
+            <summary>
+            Creates the test class command, which implements <see cref="T:Xunit.Sdk.ITestClassCommand"/>, for a given type.
+            </summary>
+            <param name="typeInfo">The type under test</param>
+            <returns>The test class command, if the class is a test class; null, otherwise</returns>
+        </member>
+        <member name="T:Xunit.Sdk.TestClassCommand">
+            <summary>
+            Represents an xUnit.net test class
+            </summary>
+        </member>
+        <member name="T:Xunit.Sdk.ITestClassCommand">
+            <summary>
+            Interface which describes the ability to executes all the tests in a test class.
+            </summary>
+        </member>
+        <member name="M:Xunit.Sdk.ITestClassCommand.ChooseNextTest(System.Collections.Generic.ICollection{Xunit.Sdk.IMethodInfo})">
+            <summary>
+            Allows the test class command to choose the next test to be run from the list of
+            tests that have not yet been run, thereby allowing it to choose the run order.
+            </summary>
+            <param name="testsLeftToRun">The tests remaining to be run</param>
+            <returns>The index of the test that should be run</returns>
+        </member>
+        <member name="M:Xunit.Sdk.ITestClassCommand.ClassFinish">
+            <summary>
+            Execute actions to be run after all the test methods of this test class are run.
+            </summary>
+            <returns>Returns the <see cref="T:System.Exception"/> thrown during execution, if any; null, otherwise</returns>
+        </member>
+        <member name="M:Xunit.Sdk.ITestClassCommand.ClassStart">
+            <summary>
+            Execute actions to be run before any of the test methods of this test class are run.
+            </summary>
+            <returns>Returns the <see cref="T:System.Exception"/> thrown during execution, if any; null, otherwise</returns>
+        </member>
+        <member name="M:Xunit.Sdk.ITestClassCommand.EnumerateTestCommands(Xunit.Sdk.IMethodInfo)">