Click here to Skip to main content
15,881,755 members
Articles / Programming Languages / C# 4.0

A Money type for the CLR

Rate me:
Please Sign up or sign in to vote.
4.90/5 (62 votes)
18 Mar 2013Ms-PL14 min read 193.7K   2.5K   138  
A convenient, high-performance money structure for the CLR which handles arithmetic operations, currency types, formatting, and careful distribution and rounding without loss.
<?xml version="1.0"?>
<doc>
    <assembly>
        <name>xunitext</name>
    </assembly>
    <members>
        <member name="T:XunitExt.Assertions">
            <summary>
            A wrapper for Assert which is used by <see cref="T:XunitExt.TestClass"/>.
            </summary>
        </member>
        <member name="M:XunitExt.Assertions.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.ContainsException">Thrown when the object is not present in the collection</exception>
        </member>
        <member name="M:XunitExt.Assertions.Contains``1(``0,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})">
            <summary>
            Verifies that a collection contains a given object, using a 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.ContainsException">Thrown when the object is not present in the collection</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.ContainsException">Thrown when the sub-string is not present inside the string</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.ContainsException">Thrown when the sub-string is not present inside the string</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.DoesNotContainException">Thrown when the object is present inside the container</exception>
        </member>
        <member name="M:XunitExt.Assertions.DoesNotContain``1(``0,System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IComparer{``0})">
            <summary>
            Verifies that a collection does not contain a given object, using a 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.DoesNotContainException">Thrown when the object is present inside the container</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.DoesNotContainException">Thrown when the sub-string is present inside the string</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.DoesNotContainException">Thrown when the sub-string is present inside the given string</exception>
        </member>
        <member name="M:XunitExt.Assertions.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:XunitExt.Assertions.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.EmptyException">Thrown when the collection is not empty</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.EqualException">Thrown when the objects are not equal</exception>
        </member>
        <member name="M:XunitExt.Assertions.Equal``1(``0,``0,System.Collections.Generic.IComparer{``0})">
            <summary>
            Verifies that two objects are equal, using a custom 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.EqualException">Thrown when the objects are not equal</exception>
        </member>
        <member name="M:XunitExt.Assertions.Equals(System.Object)">
            <summary>Do not call this method. Call Assert.Equal() instead.</summary>
        </member>
        <member name="M:XunitExt.Assertions.False(System.Boolean)">
            <summary>
            Verifies that the condition is false.
            </summary>
            <param name="condition">The condition to be tested</param>
            <exception cref="T:Xunit.FalseException">Thrown if the condition is not false</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.FalseException">Thrown if the condition is not false</exception>
        </member>
        <member name="M:XunitExt.Assertions.GetHashCode">
            <summary>
            Serves as a hash function for a particular type.
            </summary>
            <returns>A hash code for the current <see cref="T:System.Object"/>.</returns>
        </member>
        <member name="M:XunitExt.Assertions.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.InRangeException">Thrown when the value is not in the given range</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.InRangeException">Thrown when the value is not in the given range</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.IsTypeException">Thrown when the object is the given type</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.IsTypeException">Thrown when the object is the given type</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.IsTypeException">Thrown when the object is not the given type</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.IsTypeException">Thrown when the object is not the given type</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.NotEmptyException">Thrown when the collection is empty</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.NotEqualException">Thrown when the objects are equal</exception>
        </member>
        <member name="M:XunitExt.Assertions.NotEqual``1(``0,``0,System.Collections.Generic.IComparer{``0})">
            <summary>
            Verifies that two objects are not equal, using a custom 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.NotEqualException">Thrown when the objects are equal</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.NotInRangeException">Thrown when the value is in the given range</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.NotInRangeException">Thrown when the value is in the given range</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.NotNullException">Thrown when the object is not null</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.NotSameException">Thrown when the objects are the same instance</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.NullException">Thrown when the object reference is not null</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.SameException">Thrown when the objects are not the same instance</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.ThrowsException">Thrown when an exception was not thrown, or when an exception of the incorrect type is thrown</exception>
        </member>
        <member name="M:XunitExt.Assertions.Throws``1(System.String,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="userMessage">The message to be shown if the test fails</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.ThrowsException">Thrown when an exception was not thrown, or when an exception of the incorrect type is thrown</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.ThrowsException">Thrown when an exception was not thrown, or when an exception of the incorrect type is thrown</exception>
        </member>
        <member name="M:XunitExt.Assertions.True(System.Boolean)">
            <summary>
            Verifies that an expression is true.
            </summary>
            <param name="condition">The condition to be inspected</param>
            <exception cref="T:Xunit.TrueException">Thrown when the condition is false</exception>
        </member>
        <member name="M:XunitExt.Assertions.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.TrueException">Thrown when the condition is false</exception>
        </member>
        <member name="T:XunitExt.TestClass">
            <summary>
            A class which can be derived from for test classes, which bring an overridable version
            of Assert (using the <see cref="T:XunitExt.Assertions"/> class.
            </summary>
        </member>
        <member name="P:XunitExt.TestClass.Assert">
            <summary>
            Gets a class which provides assertions.
            </summary>
        </member>
        <member name="T:XunitExt.AssumeIdentityAttribute">
            <summary>
            Apply this attribute to your test method to replace the 
            <see cref="P:System.Threading.Thread.CurrentPrincipal"/> with another role.
            </summary>
        </member>
        <member name="M:XunitExt.AssumeIdentityAttribute.#ctor(System.String)">
            <summary>
            Replaces the identity of the current thread with <paramref name="name"/>.
            </summary>
            <param name="name">The role's name</param>
        </member>
        <member name="M:XunitExt.AssumeIdentityAttribute.After(System.Reflection.MethodInfo)">
            <summary>
            Restores the original <see cref="P:System.Threading.Thread.CurrentPrincipal"/>.
            </summary>
            <param name="methodUnderTest">The method under test</param>
        </member>
        <member name="M:XunitExt.AssumeIdentityAttribute.Before(System.Reflection.MethodInfo)">
            <summary>
            Stores the current <see cref="P:System.Threading.Thread.CurrentPrincipal"/> and replaces it with
            a new role identified in constructor.
            </summary>
            <param name="methodUnderTest">The method under test</param>
        </member>
        <member name="T:XunitExt.AutoRollbackAttribute">
            <summary>
            Apply this attribute to your test method to automatically create a
            <see cref="T:System.Transactions.TransactionScope"/> that is rolled back when the test is
            finished.
            </summary>
        </member>
        <member name="M:XunitExt.AutoRollbackAttribute.After(System.Reflection.MethodInfo)">
            <summary>
            Rolls back the transaction.
            </summary>
        </member>
        <member name="M:XunitExt.AutoRollbackAttribute.Before(System.Reflection.MethodInfo)">
            <summary>
            Creates the transaction.
            </summary>
        </member>
        <member name="P:XunitExt.AutoRollbackAttribute.IsolationLevel">
            <summary>
            Gets or sets the isolation level of the transaction.
            Default value is <see cref="P:XunitExt.AutoRollbackAttribute.IsolationLevel"/>.Unspecified.
            </summary>
        </member>
        <member name="P:XunitExt.AutoRollbackAttribute.ScopeOption">
            <summary>
            Gets or sets the scope option for the transaction.
            Default value is <see cref="T:System.Transactions.TransactionScopeOption"/>.Required.
            </summary>
        </member>
        <member name="P:XunitExt.AutoRollbackAttribute.TimeoutInMS">
            <summary>
            Gets or sets the timeout of the transaction, in milliseconds.
            By default, the transaction will not timeout.
            </summary>
        </member>
        <member name="T:XunitExt.DataAttribute">
            <summary>
            Abstract attribute which represents a data source for a data theory.
            Data source providers derive from this attribute and implement GetData
            to return the data for the theory.
            </summary>
        </member>
        <member name="M:XunitExt.DataAttribute.GetData(System.Reflection.MethodInfo,System.Type[])">
            <summary>
            Returns the data to be used to test the theory.
            </summary>
            <remarks>
            The <paramref name="parameterTypes"/> parameter is provided so that the
            test data can be converted to the destination parameter type when necessary.
            Generally, data should NOT be automatically converted, UNLESS the source data
            format does not have rich types (for example, all numbers in Excel spreadsheets
            are returned as <see cref="T:System.Double"/> even if they are integers). Derivers of
            this class should NOT throw exceptions for mismatched types or mismatched number
            of parameters; the test framework will throw these exceptions at the correct
            time.
            </remarks>
            <param name="methodUnderTest">The method that is being tested</param>
            <param name="parameterTypes">The types of the parameters for the test method</param>
            <returns>The theory data</returns>
        </member>
        <member name="T:XunitExt.DataAdapterDataAttribute">
            <summary>
            Represents an implementation of <see cref="T:XunitExt.DataAttribute"/> which uses an
            instance of <see cref="T:System.Data.IDataAdapter"/> to get the data for a <see cref="T:XunitExt.TheoryAttribute"/>
            decorated test method.
            </summary>
        </member>
        <member name="M:XunitExt.DataAdapterDataAttribute.GetData(System.Reflection.MethodInfo,System.Type[])">
            <inheritdoc/>
        </member>
        <member name="M:XunitExt.DataAdapterDataAttribute.ConvertParameter(System.Object,System.Type)">
            <summary>
            Converts a parameter to its destination parameter type, if necessary.
            </summary>
            <param name="parameter">The parameter value</param>
            <param name="parameterType">The destination parameter type (null if not known)</param>
            <returns>The converted parameter value</returns>
        </member>
        <member name="P:XunitExt.DataAdapterDataAttribute.DataAdapter">
            <summary>
            Gets the data adapter to be used to retrieve the test data.
            </summary>
        </member>
        <member name="T:XunitExt.InlineDataAttribute">
            <summary>
            Provides a data source for a data theory, with the data coming from inline values.
            </summary>
        </member>
        <member name="M:XunitExt.InlineDataAttribute.#ctor(System.Object[])">
            <summary>
            Initializes a new instance of the <see cref="T:XunitExt.InlineDataAttribute"/> class.
            </summary>
            <param name="dataValues">The data values to pass to the theory</param>
        </member>
        <member name="M:XunitExt.InlineDataAttribute.GetData(System.Reflection.MethodInfo,System.Type[])">
            <summary>
            Returns the data to be used to test the theory.
            </summary>
            <param name="methodUnderTest">The method that is being tested</param>
            <param name="parameterTypes">The types of the parameters for the test method</param>
            <returns>The theory data, in table form</returns>
        </member>
        <member name="T:XunitExt.OleDbDataAttribute">
            <summary>
            Provides a data source for a data theory, with the data coming from an OLEDB connection.
            </summary>
        </member>
        <member name="M:XunitExt.OleDbDataAttribute.#ctor(System.String,System.String)">
            <summary>
            Creates a new instance of <see cref="T:XunitExt.OleDbDataAttribute"/>.
            </summary>
            <param name="connectionString">The OLEDB connection string to the data</param>
            <param name="selectStatement">The SELECT statement used to return the data for the theory</param>
        </member>
        <member name="P:XunitExt.OleDbDataAttribute.DataAdapter">
            <inheritdoc/>
        </member>
        <member name="T:XunitExt.PropertyDataAttribute">
            <summary>
            Provides a data source for a data theory, with the data coming from a public static property on the test class.
            The property must return IEnumerable&lt;object[]&gt; with the test data.
            </summary>
        </member>
        <member name="M:XunitExt.PropertyDataAttribute.#ctor(System.String)">
            <summary>
            Creates a new instance of <see cref="T:XunitExt.PropertyDataAttribute"/>/
            </summary>
            <param name="propertyName">The name of the public static property on the test class that will provide the test data</param>
        </member>
        <member name="M:XunitExt.PropertyDataAttribute.GetData(System.Reflection.MethodInfo,System.Type[])">
            <summary>
            Returns the data to be used to test the theory.
            </summary>
            <param name="methodUnderTest">The method that is being tested</param>
            <param name="parameterTypes">The types of the parameters for the test method</param>
            <returns>The theory data, in table form</returns>
        </member>
        <member name="T:XunitExt.SqlServerDataAttribute">
            <summary>
            Provides a data source for a data theory, with the data coming a Microsoft SQL Server.
            </summary>
        </member>
        <member name="M:XunitExt.SqlServerDataAttribute.#ctor(System.String,System.String,System.String)">
            <summary>
            Creates a new instance of <see cref="T:XunitExt.SqlServerDataAttribute"/>, using a trusted connection.
            </summary>
            <param name="serverName">The server name of the Microsoft SQL Server</param>
            <param name="databaseName">The database name</param>
            <param name="selectStatement">The SQL SELECT statement to return the data for the data theory</param>
        </member>
        <member name="M:XunitExt.SqlServerDataAttribute.#ctor(System.String,System.String,System.String,System.String,System.String)">
            <summary>
            Creates a new instance of <see cref="T:XunitExt.SqlServerDataAttribute"/>, using the provided username and password.
            </summary>
            <param name="serverName">The server name of the Microsoft SQL Server</param>
            <param name="databaseName">The database name</param>
            <param name="username">The username for the server</param>
            <param name="password">The password for the server</param>
            <param name="selectStatement">The SQL SELECT statement to return the data for the data theory</param>
        </member>
        <member name="T:XunitExt.ExcelDataAttribute">
            <summary>
            Provides a data source for a data theory, with the data coming a Microsoft Excel (.xls) spreadsheet.
            </summary>
        </member>
        <member name="M:XunitExt.ExcelDataAttribute.#ctor(System.String,System.String)">
            <summary>
            Creates a new instance of <see cref="T:XunitExt.ExcelDataAttribute"/>.
            </summary>
            <param name="filename">The filename of the XLS spreadsheet file; if the filename provided
            is relative, then it is relative to the location of xunit.extensions.dll.</param>
            <param name="selectStatement">The SELECT statement that returns the data for the theory</param>
        </member>
        <member name="M:XunitExt.ExcelDataAttribute.ConvertParameter(System.Object,System.Type)">
            <inheritdoc/>
        </member>
        <member name="T:XunitExt.Clock">
            <summary>
            A wrapper around the static operations on <see cref="T:System.DateTime"/> which allows time
            to be frozen using the <see cref="T:XunitExt.FreezeClockAttribute"/>. The clock begins in the
            thawed state; that is, calls to <see cref="P:XunitExt.Clock.Now"/>, <see cref="P:XunitExt.Clock.Today"/>, and
            <see cref="P:XunitExt.Clock.UtcNow"/> return current (non-frozen) values.
            </summary>
        </member>
        <member name="M:XunitExt.Clock.Freeze">
            <summary>
            Freezes the clock with the current time.
            Until <see cref="M:XunitExt.Clock.Thaw"/> is called, all calls to <see cref="P:XunitExt.Clock.Now"/>, <see cref="P:XunitExt.Clock.Today"/>, and
            <see cref="P:XunitExt.Clock.UtcNow"/> will return the exact same values.
            </summary>
        </member>
        <member name="M:XunitExt.Clock.FreezeLocal(System.DateTime)">
            <summary>
            Freezes the clock with the given date and time, considered to be local time.
            Until <see cref="M:XunitExt.Clock.Thaw"/> is called, all calls to <see cref="P:XunitExt.Clock.Now"/>, <see cref="P:XunitExt.Clock.Today"/>, and
            <see cref="P:XunitExt.Clock.UtcNow"/> will return the exact same values.
            </summary>
            <param name="localDateTime">The local date and time to freeze to</param>
        </member>
        <member name="M:XunitExt.Clock.FreezeUtc(System.DateTime)">
            <summary>
            Freezes the clock with the given date and time, considered to be Coordinated Universal Time (UTC).
            Until <see cref="M:XunitExt.Clock.Thaw"/> is called, all calls to <see cref="P:XunitExt.Clock.Now"/>, <see cref="P:XunitExt.Clock.Today"/>, and
            <see cref="P:XunitExt.Clock.UtcNow"/> will return the exact same values.
            </summary>
            <param name="utcDateTime">The UTC date and time to freeze to</param>
        </member>
        <member name="M:XunitExt.Clock.Thaw">
            <summary>
            Thaws the clock so that <see cref="P:XunitExt.Clock.Now"/>, <see cref="P:XunitExt.Clock.Today"/>, and <see cref="P:XunitExt.Clock.UtcNow"/>
            return normal values.
            </summary>
        </member>
        <member name="P:XunitExt.Clock.Now">
            <summary>
            Gets a <see cref="T:System.DateTime"/> object that is set to the current date and time on this computer,
            expressed as the local time.
            </summary>
        </member>
        <member name="P:XunitExt.Clock.Today">
            <summary>
            Gets the current date.
            </summary>
        </member>
        <member name="P:XunitExt.Clock.UtcNow">
            <summary>
            Gets a <see cref="T:System.DateTime"/> object that is set to the current date and time on this computer,
            expressed as the Coordinated Universal Time (UTC).
            </summary>
        </member>
        <member name="T:XunitExt.FreezeClockAttribute">
            <summary>
            Apply this attribute to your test method to freeze the time represented by the
            <see cref="T:XunitExt.Clock"/> class.
            </summary>
        </member>
        <member name="M:XunitExt.FreezeClockAttribute.#ctor">
            <summary>
            Freeze the clock with the current date and time.
            </summary>
        </member>
        <member name="M:XunitExt.FreezeClockAttribute.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
            Freeze the clock with the given date, considered to be local time.
            </summary>
            <param name="year">The frozen year</param>
            <param name="month">The frozen month</param>
            <param name="day">The frozen day</param>
        </member>
        <member name="M:XunitExt.FreezeClockAttribute.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Freeze the clock with the given date and time, considered to be in local time.
            </summary>
            <param name="year">The frozen year</param>
            <param name="month">The frozen month</param>
            <param name="day">The frozen day</param>
            <param name="hour">The frozen hour</param>
            <param name="minute">The frozen minute</param>
            <param name="second">The frozen second</param>
        </member>
        <member name="M:XunitExt.FreezeClockAttribute.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.DateTimeKind)">
            <summary>
            Freeze the clock with the given date and time, with the given kind of time.
            </summary>
            <param name="year">The frozen year</param>
            <param name="month">The frozen month</param>
            <param name="day">The frozen day</param>
            <param name="hour">The frozen hour</param>
            <param name="minute">The frozen minute</param>
            <param name="second">The frozen second</param>
            <param name="kind">The frozen time kind</param>
        </member>
        <member name="M:XunitExt.FreezeClockAttribute.After(System.Reflection.MethodInfo)">
            <summary>
            Thaws the clock.
            </summary>
            <param name="methodUnderTest">The method under test</param>
        </member>
        <member name="M:XunitExt.FreezeClockAttribute.Before(System.Reflection.MethodInfo)">
            <summary>
            Freezes the clock.
            </summary>
            <param name="methodUnderTest">The method under test</param>
        </member>
        <member name="T:XunitExt.TheoryAttribute">
            <summary>
            Marks a test method as being a data theory. Data theories are tests which are fed
            various bits of data from a data source, mapping to parameters on the test method.
            If the data source contains multiple rows, then the test method is executed
            multiple times (once with each data row).
            </summary>
        </member>
        <member name="M:XunitExt.TheoryAttribute.EnumerateTestCommands(System.Reflection.MethodInfo)">
            <summary>
            Creates instances of <see cref="T:XunitExt.TheoryCommand"/> which represent individual intended
            invocations of the test method, one per data row in the data source.
            </summary>
            <param name="method">The method under test</param>
            <returns>An enumerator through the desired test method invocations</returns>
        </member>
        <member name="T:XunitExt.TheoryCommand">
            <summary>
            Represents a single invocation of a data theory test method.
            </summary>
        </member>
        <member name="M:XunitExt.TheoryCommand.#ctor(System.Reflection.MethodInfo,System.Object[])">
            <summary>
            Creates a new instance of <see cref="T:XunitExt.TheoryCommand"/>.
            </summary>
            <param name="testMethod">The method under test</param>
            <param name="parameters">The parameters to be passed to the test method</param>
        </member>
        <member name="M:XunitExt.TheoryCommand.Execute(System.Object)">
            <inheritdoc/>
        </member>
        <member name="P:XunitExt.TheoryCommand.Name">
            <inheritdoc/>
        </member>
        <member name="P:XunitExt.TheoryCommand.ShouldCreateInstance">
            <inheritdoc/>
        </member>
        <member name="P:XunitExt.TheoryCommand.Parameters">
            <summary>
            Gets the parameter values that are passed to the test method.
            </summary>
        </member>
        <member name="P:XunitExt.TheoryCommand.TestMethod">
            <summary>
            Gets the method under test.
            </summary>
        </member>
        <member name="T:XunitExt.TraceAttribute">
            <summary>
            Apply to a test method to trace the method begin and end.
            </summary>
        </member>
        <member name="M:XunitExt.TraceAttribute.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="M:XunitExt.TraceAttribute.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>
    </members>
</doc>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Microsoft Public License (Ms-PL)


Written By
Architect
United States United States
I'm a software engineer with 25 years of experience in areas from game and simulation development, enterprise development, systems management, machine learning, real-time and embedded systems development and geospaitial systems development.

You can find more of my work at http://www.codeplex.com and my articles at http://vectordotnet.blogspot.com/ and http://dotnoted.spaces.live.com.

Comments and Discussions