diff --git a/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/DesignTimeBuild/.dtbcache.v2 b/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/DesignTimeBuild/.dtbcache.v2 index e1fd248..a9f78ff 100644 Binary files a/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/DesignTimeBuild/.dtbcache.v2 and b/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/DesignTimeBuild/.dtbcache.v2 differ diff --git a/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.futdcache.v2 b/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.futdcache.v2 index ea1c1b9..a1d5f26 100644 Binary files a/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.futdcache.v2 and b/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.futdcache.v2 differ diff --git a/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.suo b/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.suo index 34e4246..c452539 100644 Binary files a/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.suo and b/C#/C# Basic Udemy Seen/FirstProgram/.vs/FirstProgram/v17/.suo differ diff --git a/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.metadata.v7.bin b/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.metadata.v7.bin index ec68fc3..2f2afba 100644 Binary files a/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.metadata.v7.bin and b/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.metadata.v7.bin differ diff --git a/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.projects.v7.bin b/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.projects.v7.bin index ebcfb8c..b5c9950 100644 Binary files a/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.projects.v7.bin and b/C#/C# Basic Udemy Seen/FirstProgram/.vs/ProjectEvaluation/firstprogram.projects.v7.bin differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/09a1fb3e-fecc-47f9-817d-272bd094f786.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/09a1fb3e-fecc-47f9-817d-272bd094f786.vsidx deleted file mode 100644 index 5e4fec4..0000000 Binary files a/RestApiTests/.vs/RestApiTests/FileContentIndex/09a1fb3e-fecc-47f9-817d-272bd094f786.vsidx and /dev/null differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/0dd0d4af-804b-4bea-8396-fcb81864630d.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/0dd0d4af-804b-4bea-8396-fcb81864630d.vsidx new file mode 100644 index 0000000..152f4c2 Binary files /dev/null and b/RestApiTests/.vs/RestApiTests/FileContentIndex/0dd0d4af-804b-4bea-8396-fcb81864630d.vsidx differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/493496f1-baf3-460c-b419-f421f37bf19b.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/493496f1-baf3-460c-b419-f421f37bf19b.vsidx new file mode 100644 index 0000000..9dfbe69 Binary files /dev/null and b/RestApiTests/.vs/RestApiTests/FileContentIndex/493496f1-baf3-460c-b419-f421f37bf19b.vsidx differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/52a0d273-98a7-463e-a776-962d4318636a.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/52a0d273-98a7-463e-a776-962d4318636a.vsidx new file mode 100644 index 0000000..cd93c07 Binary files /dev/null and b/RestApiTests/.vs/RestApiTests/FileContentIndex/52a0d273-98a7-463e-a776-962d4318636a.vsidx differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/676ef151-af73-46b0-8d34-4b5b1dabce92.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/676ef151-af73-46b0-8d34-4b5b1dabce92.vsidx deleted file mode 100644 index 85ad1ef..0000000 Binary files a/RestApiTests/.vs/RestApiTests/FileContentIndex/676ef151-af73-46b0-8d34-4b5b1dabce92.vsidx and /dev/null differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/7d75a377-cad7-4fcb-b760-7578fb19ef62.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/7d75a377-cad7-4fcb-b760-7578fb19ef62.vsidx deleted file mode 100644 index 359cda9..0000000 Binary files a/RestApiTests/.vs/RestApiTests/FileContentIndex/7d75a377-cad7-4fcb-b760-7578fb19ef62.vsidx and /dev/null differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/a30129f5-2764-452c-b2f7-65b5824fe1b7.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/a30129f5-2764-452c-b2f7-65b5824fe1b7.vsidx deleted file mode 100644 index 491544b..0000000 Binary files a/RestApiTests/.vs/RestApiTests/FileContentIndex/a30129f5-2764-452c-b2f7-65b5824fe1b7.vsidx and /dev/null differ diff --git a/RestApiTests/.vs/RestApiTests/FileContentIndex/d97d4f6d-5e17-41ce-b104-28aca84363b1.vsidx b/RestApiTests/.vs/RestApiTests/FileContentIndex/d97d4f6d-5e17-41ce-b104-28aca84363b1.vsidx new file mode 100644 index 0000000..dfd29a9 Binary files /dev/null and b/RestApiTests/.vs/RestApiTests/FileContentIndex/d97d4f6d-5e17-41ce-b104-28aca84363b1.vsidx differ diff --git a/RestApiTests/.vs/RestApiTests/v17/.suo b/RestApiTests/.vs/RestApiTests/v17/.suo index 4ec6fa5..c9e4d97 100644 Binary files a/RestApiTests/.vs/RestApiTests/v17/.suo and b/RestApiTests/.vs/RestApiTests/v17/.suo differ diff --git a/RestApiTests/.vs/RestApiTests/v17/TestStore/0/000.testlog b/RestApiTests/.vs/RestApiTests/v17/TestStore/0/000.testlog index 558e866..53e3707 100644 Binary files a/RestApiTests/.vs/RestApiTests/v17/TestStore/0/000.testlog and b/RestApiTests/.vs/RestApiTests/v17/TestStore/0/000.testlog differ diff --git a/RestApiTests/RestApiTests/Models/Create/UsersCreateRequest.cs b/RestApiTests/RestApiTests/Models/Create/UsersCreateRequest.cs new file mode 100644 index 0000000..0fc0019 --- /dev/null +++ b/RestApiTests/RestApiTests/Models/Create/UsersCreateRequest.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace RestApiTests.Models.Create +{ + public class UsersCreateRequest + { + + public string name { get; set; } + public string job { get; set; } + + } +} diff --git a/RestApiTests/RestApiTests/Models/Create/UsersCreateResponse.cs b/RestApiTests/RestApiTests/Models/Create/UsersCreateResponse.cs new file mode 100644 index 0000000..e4c2b5b --- /dev/null +++ b/RestApiTests/RestApiTests/Models/Create/UsersCreateResponse.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace RestApiTests.Models.Create +{ + public class UsersCreateResponse + { + public string name { get; set; } + public string job { get; set; } + public string id { get; set; } + public DateTime createdAt { get; set; } + } +} diff --git a/RestApiTests/RestApiTests/RestApiTests.csproj b/RestApiTests/RestApiTests/RestApiTests.csproj index a37de77..65d514a 100644 --- a/RestApiTests/RestApiTests/RestApiTests.csproj +++ b/RestApiTests/RestApiTests/RestApiTests.csproj @@ -35,6 +35,9 @@ 4 + + ..\packages\FluentAssertions.6.12.0\lib\net47\FluentAssertions.dll + ..\packages\Microsoft.Bcl.AsyncInterfaces.7.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll @@ -51,6 +54,7 @@ ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll @@ -83,6 +87,8 @@ + + diff --git a/RestApiTests/RestApiTests/TestFixtures/UsersTests.cs b/RestApiTests/RestApiTests/TestFixtures/UsersTests.cs index b11364b..308443a 100644 --- a/RestApiTests/RestApiTests/TestFixtures/UsersTests.cs +++ b/RestApiTests/RestApiTests/TestFixtures/UsersTests.cs @@ -1,5 +1,7 @@ -using Newtonsoft.Json; +using FluentAssertions; +using Newtonsoft.Json; using NUnit.Framework; +using RestApiTests.Models.Create; using RestApiTests.Models.Users; using RestSharp; using System; @@ -12,7 +14,7 @@ namespace RestApiTests.TestFixtures { internal class UsersTests { - [Test] + [Test] // test zde spouštíme jako debug test (Aspon první fáze) public void GetUsers() { var endpoint = "https://reqres.in/api/users"; @@ -23,8 +25,40 @@ namespace RestApiTests.TestFixtures var response = client.Execute(request); var responseBody = JsonConvert.DeserializeObject(response.Content); + + // Verify (fluent package) + response.StatusCode.Should().Be(System.Net.HttpStatusCode.OK); + responseBody.page.Should().Be(1); + responseBody.data.Should().NotBeNullOrEmpty(); + } + [Test] + public void CreateUsers() + { + var endpoint = "https://reqres.in/api/users"; + var client = new RestClient(endpoint); + var request = new RestRequest(endpoint); + request.Method = Method.Post; + + var payload = new UsersCreateRequest + { + name = "John", + job = "Engineer" + }; + + request.AddJsonBody(payload); + + var response = client.Execute(request); + var responseBody = + JsonConvert.DeserializeObject(response.Content); + + // Verify (fluent package) + response.StatusCode.Should().Be(System.Net.HttpStatusCode.Created); + responseBody.id.Should().NotBeNullOrEmpty(); + + } + } } diff --git a/RestApiTests/RestApiTests/app.config b/RestApiTests/RestApiTests/app.config index 1696df6..e96eefc 100644 --- a/RestApiTests/RestApiTests/app.config +++ b/RestApiTests/RestApiTests/app.config @@ -6,6 +6,10 @@ + + + + \ No newline at end of file diff --git a/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.dll b/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.dll new file mode 100644 index 0000000..d8cf0d9 Binary files /dev/null and b/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.dll differ diff --git a/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.pdb b/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.pdb new file mode 100644 index 0000000..6c6f0ac Binary files /dev/null and b/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.pdb differ diff --git a/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.xml b/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.xml new file mode 100644 index 0000000..da4a30d --- /dev/null +++ b/RestApiTests/RestApiTests/bin/Debug/FluentAssertions.xml @@ -0,0 +1,17278 @@ + + + + FluentAssertions + + + + + Initializes a new instance of the class. + + + + + Constraint which can be returned from an assertion which matches a condition and which will allow + further matches to be performed on the matched condition as well as the parent constraint. + + The type of the original constraint that was matched + The type of the matched object which the parent constraint matched + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + Just a convenience property that returns the same value as . + + + + + Contains extension methods for custom assertions in unit tests. + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Provides methods for asserting the execution time of a method or property. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + is . + + + + Provides methods for asserting the execution time of an action. + + An action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Provides methods for asserting the execution time of an async action. + + An async action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection of the provided . + Should be used to assert that a method that uses the keyword throws a particular exception. + + The object that exposes the method or property. + A reference to the method or property to force enumeration of. + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current of . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + is . + + + + Returns a object + that can be used to assert the current . + + + + + + Returns a object that can be used to assert the current . + + + + + + Returns a object that can be used to assert the methods returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + + Returns a object that can be used to assert the properties returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current System.Func{Task{T}}. + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Starts monitoring for its events. + + The object for which to monitor the events. + + An optional delegate that returns the current date and time in UTC format. + Will revert to if no delegate was provided. + + is . + + + + Safely casts the specified object to the type specified through . + + + Has been introduced to allow casting objects without breaking the fluent API. + + The to cast to + + + + + + + + + + + + + + + + You are asserting the itself. Remove the Should() method directly following And. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Holds any global options that control the behavior of FluentAssertions. + + + + + Allows configuring the defaults used during a structural equivalency assertion. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + An action that is used to configure the defaults. + + is . + + + + Represents a mutable plan consisting of steps that are executed while asserting a (collection of) object(s) + is structurally equivalent to another (collection of) object(s). + + + Members on this property are not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Gets the default formatting options used by the formatters in Fluent Assertions. + + + Members on this property should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Please note that this assertion cannot identify whether the previous assertion was successful or not. + In case it was not successful and it is running within an active + there is no current result to compare with. + So, this extension will compare with the default value. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Remove all whitespace until we find a non-whitespace character + + + + + Only keep one whitespace character if more than one follow each other. + + + + + Represents a stateful parsing strategy that is used to help identify the "caller" to use in an assertion message. + + + The strategies will be instantiated at the beginning of a "caller identification" task, and will live until + the statement can be identified (and thus some are stateful). + + + + + Given a symbol, the parsing strategy should add/remove from the statement if needed, and then return + - InProgress if the symbol isn't relevant to the strategies (so other strategies can be tried) + - Handled if an action has been taken (and no other strategies should be used for this symbol) + - Done if the statement is complete, and thus further symbols should be read. + + + + + Returns true if strategy is in the middle of a context (ex: strategy read "/*" and is waiting for "*/" + + + + + Used to notify the strategy that we have reached the end of the line (very useful to detect the end of + a single line comment). + + + + + Tries to extract the name of the variable or invocation on which the assertion is executed. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in descending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is null or does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is a subset of the . + + An with the expected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains the specified item. + + The expectation item. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection contains at least one item that matches the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in any order. Elements are compared + using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection contains at least one element that is assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the given type. + + + Object type that should not be in collection + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item matching the specified . + + The predicate that will be used to find the matching items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection ends with the specified . + + + The element that is expected to appear at the end of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their method. + + A params array with the expected elements. + + + + Asserts that two collections contain the same items in the same order, where equality is determined using a + . + + + The collection to compare the subject with. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches the supplied amount. + + The expected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches a condition stated by the . + + A predicate that yields the number of items that is expected to be in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection is greater than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is greater than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection has the supplied at the + supplied . + + The index where the element is expected + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly precedes the . + + The element that should succeed . + The expected element that should precede . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly succeeds the . + + The element that should precede . + The element that should succeed . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection has the same number of elements as . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection shares one or more items with the specified . + + The with the expected shared items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + /// + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection not is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is not null and contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is not a subset of the . + + An with the unexpected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain the supplied item. + + The element that is not expected to be in the collection + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection does not contain any items that match the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection does not contain the supplied items. Elements are compared + using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and are consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and consecutively. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + The predicate when evaluated should not be null. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the elements that are not expected. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection does not match the supplied amount. + + The unexpected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection does not have the same number of elements as . + + The other collection with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not share any items with the specified . + + The to compare to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection only contains items that match a predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + The predicate to group the items by. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection contains only items which meet + the criteria provided by the inspector. + + + The element inspector, which inspects each element in turn. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + The order of the predicates does not need to match the order of the elements. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection starts with the specified . + + + The element that is expected to appear at the start of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to have all elements in the specified . + Elements are compared using their implementation. + + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current dictionary contains all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The expected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current dictionary not to contain all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The unexpected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the dictionary contains the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the dictionary contains the specified value. Values are compared using + their implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns an enumerable consisting of all items in the first collection also appearing in the second. + + Enumerable.Intersect is not suitable because it drops any repeated elements. + + + + Asserts that the current dictionary does not contain the specified value. + Values are compared using their implementation. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary contains the specified for the supplied + . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified for the + supplied . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Stores an element's value and index in the maximum matching problem. + + The type of the element value. + + + + The index of the element in the maximum matching problem. + + + + + The value of the element in the maximum matching problem. + + + + + The class defines input for the maximum matching problem. + The input is a list of predicates and a list of elements. + The goal of the problem is to find such mapping between predicates and elements that would maximize number of matches. + A predicate can be mapped with only one element. + An element can be mapped with only one predicate. + + The type of elements which must be matched with predicates. + + + + The class defines the solution (output) for the maximum matching problem. + See documentation of for more details. + + The type of elements which must be matched with predicates. + + + + The class encapsulates the algorithm + for solving the maximum matching problem (see ). + See https://en.wikipedia.org/wiki/Maximum_cardinality_matching for more details.
+ A simplified variation of the Ford-Fulkerson algorithm is used for solving the problem. + See https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm for more details. +
+
+ + + Solves the maximum matching problem; + + + + + To find a solution which contains the specified predicate and increases the total number of matches + we:
+ - Search for a free element which matches the specified predicate.
+ - Or take over an element which was previously matched with another predicate and repeat the procedure for the previously matched predicate.
+ - We are basically searching for a path in the graph of matches between predicates and elements which would start at the specified predicate + and end at an unmatched element.
+ - Breadth first search used to traverse the graph.
+
+
+ + + Stores a predicate's expression and index in the maximum matching problem. + + The type of the element values in the maximum matching problems. + + + + The index of the predicate in the maximum matching problem. + + + + + The expression of the predicate. + + + + + Determines whether the predicate matches the specified element. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Asserts that a collection of string is equivalent to another collection of strings. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least one string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that the collection does not contain any string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Initializes a new instance of the class. + + + + + Gets the value of the object referred to by the key. + + + + + Default implementation for for production use. + + + + + Defines the key for the configuration of the test framework to be assumed in FluentAssertions. + + + + + Gets the active configuration, + + + + + Gets or sets the mode on how Fluent Assertions will find custom implementations of + . + + + + + Gets or sets the assembly name to scan for custom value formatters in case + is set to . + + + + + Gets or sets the name of the test framework to use. + + + If no name is provided, Fluent Assertions + will try to detect it by scanning the currently loaded assemblies. If it can't find a suitable provider, + and the run-time platform supports it, it'll try to get it from the . + + + + + Converts an existing to a but normalizes the + so that comparisons of converted instances retain the UTC/local agnostic behavior. + + + + + Searches for the first different element in two sequences using specified + + The type of the elements of the sequence. + The type of the elements of the sequence. + The first sequence to compare. + The second sequence to compare. + Method that is used to compare 2 elements with the same index. + Index at which two sequences have elements that are not equal, or -1 if enumerables are equal + + + + Gets the of an returning a property. + + is . + + + + Gets a dotted path of property names representing the property expression, including the declaring type. + + + E.g. Parent.Child.Sibling.Name. + + is . + + + + Validates that the expression can be used to construct a . + + is . + + + + Workaround to make dotnet_code_quality.null_check_validation_methods work + https://github.com/dotnet/roslyn-analyzers/issues/3451#issuecomment-606690452 + + + + + Represents an abstract timer that is used to make some of this library's timing dependent functionality better testable. + + + + + Will block the current thread until a time delay has passed. + + The time span to wait before completing the returned task + + + + Creates a task that will complete after a time delay. + + The time span to wait before completing the returned task + + A task that represents the time delay. + + + + + Creates a timer to measure the time to complete some arbitrary executions. + + + + + Used to provide access to the underlying for an object that wraps an underlying + collection. + + Collection type. + + + + A smarter enumerator that can provide information about the relative location (current, first, last) + of the current item within the collection without unnecessarily iterating the collection. + + + + + Abstracts a stopwatch so we can control time in unit tests. + + + + + The time elapsed since the timer was created through . + + + + + Encapsulates a dotted candidate to a (nested) member of a type as well as the + declaring type of the deepest member. + + + + + Initializes a new instance of the class. + + is . + + + + Initializes a new instance of the class. + + is . + + + + Gets a value indicating whether the current object represents a child member of the + or that it is the parent of that candidate. + + + + + Determines whether the current path is the same as when ignoring any specific indexes. + + + + + Gets a value indicating whether the current path contains an indexer like `[1]` instead of `[]`. + + + + + Returns a copy of the current object as if it represented an un-indexed item in a collection. + + + + + Returns the name of the member the current path points to without its parent path. + + + + + Compares two segments of a . + Sets the equal with any numeric index qualifier. + All other comparisons are default string equality. + + + + + Compares two segments of a . + + Left part of the comparison. + Right part of the comparison. + True if segments are equal, false if not. + + + + A sum of all possible . It's needed to calculate what options were used when decorating with . + They are a subset of which can be checked on a type and therefore this mask has to be applied to check only for options. + + + + + Initializes a new instance of the class. + + is . + + + + Maintains the framework-specific services. + + + + + Factory for starting a timer on demand. + + + + + Finds the first index at which the does not match the + string anymore, accounting for the specified . + + + + + Gets the quoted three characters at the specified index of a string, including the index itself. + + + + + Replaces all numeric indices from a path like "property[0].nested" and returns "property[].nested" + + + + + Determines whether a string contains a specific index like `[0]` instead of just `[]`. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Joins a string with one or more other strings using a specified separator. + + + Any string that is empty (including the original string) is ignored. + + + + + Changes the first character of a string to uppercase. + + + + + Appends tab character at the beginning of each line in a string. + + + + + + Counts the number of times a substring appears within a string by using the specified . + + The string to search in. + The substring to search for. + The option to use for comparison. + + + + Determines whether two objects refer to the same + member. + + + + + Returns the interfaces that the implements that are concrete + versions of the . + + + + + Finds the property by a case-sensitive name. + + + Returns if no such property exists. + + + + + Finds the field by a case-sensitive name. + + + Returns if no such property exists. + + + + + Check if the type is declared as abstract. + + Type to be checked + + + + Check if the type is declared as sealed. + + Type to be checked + + + + Check if the type is declared as static. + + Type to be checked + + + + Check if the type has a human-readable name. + + false for compiler generated type names, otherwise true. + + + + If the type provided is a nullable type, gets the underlying type. Returns the type itself otherwise. + + + + + Helper class to get all the public and internal fields and properties from a type. + + + + + Defines the modes in which custom implementations of + are detected as configured through . + + + + + Detection is disabled. + + + + + Only custom value formatters exposed through the assembly set in + are detected. + + + + + All custom value formatters in any assembly loaded in the current will be detected. + + + + + Marks a method as an extension to Fluent Assertions that either uses the built-in assertions + internally, or directly uses the Execute.Assertion. + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The object that is being extended. + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The object that is being extended. + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection has the same number of elements as . + + The object that is being extended. + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of columns as + . + + The object that is being extended. + The other with the unexpected number of + elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataRow objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of rows as + . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of rows as + . + + The other with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataSet objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Contains an extension method for custom assertions in unit tests related to DataTable objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency. + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + + Testing of any property can be overridden using the callback. Exclude specific properties using + . + + + If or a related function is + used and the exclusion matches the subject , then the equivalency test will never + fail. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of columns. + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. This can be overridden + by using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table (which also excludes the related field data in + objects) using or a related function. + + + + You can use + and related functions to exclude properties on other related System.Data types. + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of tables. + + + + + Asserts that an instance of contains exactly the expected number of tables in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of contains a table with the expected name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has tables with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has tables with all of the supplied expected table names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. This can be overridden by using the overload that takes + . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. This setting applies to all types recursively tested + as part of the . + + + Exclude specific properties using . + Exclude specific tables within the data set using + or a related function. You can also indicate that columns should be excluded within the + objects recursively tested as part of the using + or a related function. The method + can be used to exclude columns across all objects in the that share + the same name. + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of rows and columns. + + + + + Asserts that an instance of contains exactly the expected number of rows in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. This can be overridden by + using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table using + or a related function -- this excludes both the objects in + and associated field data in objects within the . + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides access to configuration for equivalency assertions on System.Data types (, + , , , , + ). + + The System.Data type being tested for equivalency. + + + + Specifies that the subject and the expectation should not be considered non-equivalent if their exact data types do not match. + + + + + Specifies that when comparing , columns that are unmatched between the subject and the expectation should be ignored. + + + + + Specifies the that should be used when comparing . By default, rows are matched by their index in the collection. But, if the has a set, it is possible to use to indicate that rows should be matched by their primary key values, irrespective of their index within the collection. + + The to use when comparing between the subject and the expectation. + + + + Specifies that when comparing objects that are in the state, only the current field values should be compared. Original field values are excluded from comparison. This only affects comparisons where both the subject and the expectation are in the modified state. + + + + + Excludes members of the objects under test from comparison by means of a predicate that selects members based on objects describing them. + + A functor that returns true if the parameter refers to a member that should be excluded. + + + + Excludes a member of the objects under test from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes an entire table from comparison. When comparing objects, if a table is present by the supplied name, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + The value for for which tables within a should be ignored. + + + + Excludes tables from comparison using names in an set. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An of values for for which tables within a should be ignored. + + + + Excludes tables from comparison using an array of table names. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An array of values for for which tables within a should be ignored. + + + + Excludes a column from comparison by . The column to be excluded is matched by the name of its associated and its own . + + A object that specifies which column should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes a column from comparison by the name of its associated and its own . + + The value for for which columns should be ignored. + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Exclude an enumerable set of columns from comparison by . For each item in the enumeration, the column to be excluded is matched by the name of its associated and its own . + + An object that specifies which column(s) should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by . For each element in the array, the column to be excluded is matched by the name of its associated and its own . + + An array of objects that specify which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an enumerable set of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Indicates how objects from different objects should be matched + up for equivalency comparisons. + + + + + Indicates that objects should be matched up by their index within the + collection. This is the default. + + + + + Indicates that objects should be matched up by the values they have for + the table's . For this to work, the rows must be from + objects with exactly equivalent + configuration. + + + + + Contains an extension method for custom assertions in unit tests related to Enum objects. + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Represents a mutable collection of equivalency steps that can be reordered and/or amended with additional + custom equivalency steps. + + + + + Adds a new after any of the built-in steps, with the exception of the final + . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Adds a new right after the specified . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new before any of the built-in steps. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new just before the . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all instances of the specified from the current step. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes each and every built-in . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all custom s. + + + This method should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Gets the value of the subject object graph. + + + + + Gets the value of the expected object graph. + + + + + Gets the run-time type of the current expectation object. + + + + + Returns either the run-time or compile-time type of the expectation based on the options provided by the caller. + + + If the expectation is a nullable type, it should return the type of the wrapped object. + + + + + Collects the members that need to be converted by the . + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Indication of how cyclic references should be handled when validating equality of nested properties. + + + + + Cyclic references will be ignored. + + + + + Cyclic references will result in an exception. + + + + + The object overrides , so use that. + + + + + The object does not seem to override , so compare by members + + + + + Compare using , whether or not the object overrides it. + + + + + Compare the members, regardless of an override exists or not. + + + + + Represents the run-time type-specific behavior of a structural equivalency assertion. + + + + + Excludes the specified (nested) member from the structural equality check. + + + + + Selects a collection to define exclusions at. + Allows to navigate deeper by using . + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Causes the collection identified by to be compared in the order + in which the items appear in the expectation. + + + + + Causes the collection identified by to be compared ignoring the order + in which the items appear in the expectation. + + + + + Creates a new set of options based on the current instance which acts on a a collection of the . + + + + + Maps a (nested) property or field of type to + a (nested) property or field of using lambda expressions. + + A field or property expression indicating the (nested) member to map from. + A field or property expression indicating the (nested) member to map to. + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are ignored. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a (nested) property or field of the expectation to a (nested) property or field of the subject using a path string. + + + A field or property path indicating the (nested) member to map from in the format Parent.Child.Collection[].Member. + + + A field or property path indicating the (nested) member to map to in the format Parent.Child.Collection[].Member. + + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are not allowed + and must be written as "[]". If the types of the members are different, the usual logic applies depending or not + if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using lambda expressions. + + A field or property expression indicating the member to map from. + A field or property expression indicating the member to map to. + + Only direct members of and can be + mapped to each other. Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using member names. + + A field or property name indicating the member to map from. + A field or property name indicating the member to map to. + + Only direct members of and can be + mapped to each other, so no . or [] are allowed. + Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Represents the run-time type-agnostic behavior of a structural equivalency assertion. + + + + + Convenient implementation of that will only invoke + + + + + Implements , but only gets called when the expected type matches . + + + + + Provides information on a particular property during an assertion for structural equality of two object graphs. + + + + + Is responsible for validating the equivalency of a subject with another object. + + + + + Ensures that all the rules remove the collection index from the path before processing it further. + + + + + Keeps track of objects and their location within an object graph so that cyclic references can be detected + and handled upon. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + The behavior of a cyclic reference is determined by the parameter. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an object tracked by the including it's location within an object graph. + + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . + 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + A specialized type of that represents a field of an object in a structural equivalency assertion. + + + + + Allows deferred fetching of the subject ID. + + + + + Provides the required information for executing an equality assertion between a subject and an expectation. + + The type of the subject. + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + Gets the value of the + + + + + Gets the value of the expectation object that was matched with the subject using a . + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Provides the run-time details of the class. + + + + + Gets an ordered collection of selection rules that define what members (e.g. properties or fields) are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation properties. + + + + + Gets a value indicating whether or not the assertion must perform a deep comparison. + + + + + Gets a value indicating whether recursion is allowed to continue indefinitely. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By default, + ordering is irrelevant. + + + + + Contains the rules for what properties to run an auto-conversion. + + + + + Gets value indicating how the enums should be compared. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets a value indicating whether the runtime type of the expectation should be used rather than the declared type. + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets a value indicating whether members on the subject marked with [] + and should be treated as though they don't exist. + + + + + Gets a value indicating whether members on the expectation marked with [] + and should be excluded. + + + + + Gets a value indicating whether records should be compared by value instead of their members + + + + + Gets the currently configured tracer, or if no tracing was configured. + + + + + Determines the right strategy for evaluating the equality of objects of this type. + + + + + Defines a step in the process of comparing two object graphs for structural equivalency. + + + + + Executes an operation such as an equivalency assertion on the provided . + + + Should return if the subject matches the expectation or if no additional assertions + have to be executed. Should return otherwise. + + + May throw when preconditions are not met or if it detects mismatching data. + + + + + Provides information on a particular property or field during an assertion for structural equality of two object graphs. + + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + A formatted phrase and the placeholder values explaining why the assertion is needed. + + + + + Gets an object that can be used by the equivalency algorithm to provide a trace when the + option is used. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + + + Creates a context from the current object intended to assert the equivalency of a nested member. + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a deep clone of the current context. + + + + + Runs a deep recursive equivalency assertion on the provided . + + + + + Exposes information about an object's member + + + + + Gets the type that declares the current member. + + + + + Gets the type that was used to determine this member. + + + + + Gets the value of the member from the provided + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Gets a value indicating whether the member is browsable in the source code editor. This is controlled with + . + + + + + Represents a field or property in an object graph. + + + + + Gets the name of the current member. + + + + + Gets the type of this member. + + + + + Gets the type that declares the current member. + + + + + Gets the full path from the root object until and including the current node separated by dots. + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Represents a rule that defines how to map the selected members of the expectation object to the properties + of the subject. + + + + + Attempts to find a member on the subject that should be compared with the + during a structural equality. + + + Whether or not a match is required or optional is up to the specific rule. If no match is found and this is not an issue, + simply return . + + + The of the subject's member for which a match must be found. Can never + be . + + + The subject object for which a matching member must be returned. Can never be . + + + + + Returns the of the property with which to compare the subject with, or + if no match was found. + + + + + Represents a rule that defines which members of the expectation to include while comparing + two objects for structural equality. + + + + + Gets a value indicating whether this rule should override the default selection rules that include all members. + + + + + Adds or removes properties or fields to/from the collection of members that must be included while + comparing two objects for structural equality. + + + The node within the graph from which to select members. + + + A collection of members that was pre-populated by other selection rules. Can be empty. + Provides auxiliary information such as the configuration and such. + + The collection of members after applying this rule. Can contain less or more than was passed in. + + + + + Represents a node in the object graph that is being compared as part of a structural equivalency check. + This can be the root object, a collection item, a dictionary element, a property or a field. + + + + + The name of the variable on which a structural equivalency assertion is executed or + the default if reflection failed. + + + + + Gets the name of this node. + + + "Property2" + + + + + Gets the type of this node, e.g. the type of the field or property, or the type of the collection item. + + + + + Gets the type of the parent node, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the path from the root object UNTIL the current node, separated by dots or index/key brackets. + + + "Parent[0].Property2" + + + + + Gets the full path from the root object up to and including the name of the node. + + + "Parent[0]" + + + + + Gets a zero-based number representing the depth within the object graph + + + The root object has a depth of 0, the next nested object a depth of 1, etc. + See also this article + + + + + Gets the path including the description of the subject. + + + "property subject.Parent[0].Property2" + + + + + Gets a value indicating whether the current node is the root. + + + + + Gets a value indicating if the root of this graph is a collection. + + + + + Represents an object, dictionary key pair, collection item or member in an object graph. + + + + + Gets the type of the object + + + + + Gets the type of the parent, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the full path from the root object until the current node separated by dots. + + + + + Gets the compile-time type of the current object. If the current object is not the root object and the type is not , + then it returns the same as the property does. + + + + + Gets the run-time type of the current object. + + + + + Defines a rule that is used to determine whether the order of items in collections is relevant or not. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a member name and the target type. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a nested member path in the form of "Parent.NestedCollection[].Member" + + + + + Initializes a new instance of the class. + + is . + is empty. + is . + is empty. + + + + Requires the subject to have a member with the exact same name as the expectation has. + + + + + 2 + + + + Finds a member of the expectation with the exact same name, but doesn't require it. + + + + + 2 + + + + Provides contextual information to an . + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets either the compile-time or run-time type depending on the options provided by the caller. + + + + + Determines which members are included in the equivalency assertion + + + + + Supports recursively comparing two multi-dimensional arrays for equivalency using strict order for the array items + themselves. + + + + + The selected path starting at the first . + + + + + Selects a nested property to exclude. This ends the chain. + + + + + Adds the selected collection to the chain. + + + + + Collection of s. + + + + + Initializes a new collection of ordering rules. + + + + + Initializes a new collection of ordering rules based on an existing collection of ordering rules. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Determines whether the rules in this collection dictate strict ordering during the equivalency assertion on + the collection pointed to by . + + + + + Ordering rule that ensures that byte arrays are always compared in strict ordering since it would cause a + severe performance impact otherwise. + + + + + An ordering rule that basically states that the order of items in all collections is important. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Represents a rule for determining whether or not a certain collection within the object graph should be compared using + strict ordering. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + A specialized type of that represents a property of an object in a structural equivalency assertion. + + + + + Selection rule that adds all public fields of the expectation + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that adds all public properties of the expectation. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that removes a particular property from the structural comparison. + + + + + Selection rule that removes a particular member from the structural comparison based on a predicate. + + + + + 2 + + + + Selection rule that includes a particular property in the structural comparison. + + + + + Selection rule that includes a particular member in the structural comparison. + + + + + 2 + + + + Represents a selection context of a nested property + + + + + Represents the run-time behavior of a structural equivalency assertion. + + + + + Creates an instance of the equivalency assertions options based on defaults previously configured by the caller. + + + + + Gets an ordered collection of selection rules that define what members are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation members. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By + default, + ordering is irrelevant. + + + + + Gets value indicating whether the equality check will include nested collections and complex types. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Causes inclusion of only public properties of the subject as far as they are defined on the declared type. + + + This clears all previously registered selection rules. + + + + + Causes inclusion of only public properties of the subject based on its run-time type rather than its declared type. + + + This clears all previously registered selection rules. + + + + + Instructs the comparison to include public fields. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal fields. + + + + + Instructs the comparison to exclude fields. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to include public properties. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal properties. + + + + + Instructs the comparison to exclude properties. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to exclude non-browsable members in the expectation (members set to + ). It is not required that they be marked non-browsable in the subject. Use + to ignore non-browsable members in the subject. + + + + + Instructs the comparison to treat non-browsable members in the subject as though they do not exist. If you need to + ignore non-browsable members in the expectation, use . + + + + + Instructs the comparison to respect the expectation's runtime type. + + + + + Instructs the comparison to respect the expectation's declared type. + + + + + Excludes a (nested) property based on a predicate from the structural equality check. + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Tries to match the members of the expectation with equally named members on the subject. Ignores those + members that don't exist on the subject and previously registered matching rules. + + + + + Requires the subject to have members which are equally named to members on the expectation. + + + + + Overrides the comparison of subject and expectation to use provided + when the predicate is met. + + + The assertion to execute when the predicate is met. + + + + + Causes the structural equality comparison to recursively traverse the object graph and compare the fields and + properties of any nested objects and objects in collections. + + + This is the default behavior. You can override this using . + + + + + Stops the structural equality check from recursively comparing the members any nested objects. + + + If a property or field points to a complex type or collection, a simple call will + be done instead of recursively looking at the properties or fields of the nested object. + + + + + Causes the structural equality check to ignore any cyclic references. + + + By default, cyclic references within the object graph will cause an exception to be thrown. + + + + + Disables limitations on recursion depth when the structural equality check is configured to include nested objects + + + + + Clears all selection rules, including those that were added by default. + + + + + Clears all matching rules, including those that were added by default. + + + + + Adds a selection rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds a matching rule to the ones already added by default, and which is evaluated before all existing rules. + + + + + Adds an ordering rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds an equivalency step rule to the ones already added by default, and which is evaluated before previous + user-registered steps + + + + + Ensures the equivalency comparison will create and use an instance of + that implements , any time + when a property is of type . + + + + + Ensures the equivalency comparison will use the specified implementation of + any time when a property is of type . + + + + + Causes all collections to be compared in the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared in the order + in which the items appear in the expectation. + + + + + Causes all collections - except bytes - to be compared ignoring the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared ignoring the order + in which the items appear in the expectation. + + + + + Causes to compare Enum properties using the result of their ToString method. + + + By default, enums are compared by value. + + + + + Causes to compare Enum members using their underlying value only. + + + This is the default. + + + + + Ensures records by default are compared by value instead of their members. + + + + + Ensures records by default are compared by their members even though they override + the method. + + + This is the default. + + + + + Marks the as a type that should be compared by its members even though it may override + the method. + + + + + Marks as a type that should be compared by its members even though it may override + the method. + + is . + + + + Marks the as a value type which must be compared using its + method, regardless of it overriding it or not. + + + + + Marks as a value type which must be compared using its + method, regardless of it overriding it or not. + + is . + + + + Enables tracing the steps the equivalency validation followed to compare two graphs. + + + + + Instructs the equivalency comparison to try to convert the values of + matching properties before running any of the other steps. + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Defines additional overrides when used with + + + + + Allows overriding the way structural equality is applied to (nested) objects of type + + + + + + Allows overriding the way structural equality is applied to particular members. + + + A predicate based on the of the subject that is used to identify the property for which + the + override applies. + + + + + Represents a collection of assertion results obtained through a . + + + + + Adds the failures (if any) resulting from executing an assertion within a + identified by a key. + + + + + Returns the closest match compared to the set identified by the provided or + an empty array if one of the results represents a successful assertion. + + + The closest match is the set that contains the least amount of failures, or no failures at all, and preferably + the set that is identified by the . + + + + + Gets a value indicating whether this collection contains a set without any failures at all. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Attempts to convert the subject's property value to the expected type. + + + Whether or not the conversion is attempted depends on the . + + + + + Provides Reflection-backed meta-data information about a type implementing the interface. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface. Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface keyed to . + Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to convert an object into a dictionary typed to the and of the current . + + + if the conversion succeeded or otherwise. + + + + + Executes a single equivalency assertion on two collections, optionally recursive and with or without strict ordering. + + + + + Represents a composite equivalency step that passes the execution to all user-supplied steps that can handle the + current context. + + + + + Ensures that types that are marked as value types are treated as such. + + + + + Checks if the subject info setter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should have. + True if the subject info setter has the given access modifier, false otherwise. + + + + Checks if the subject info setter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should not have. + True if the subject info setter does not have the given access modifier, false otherwise. + + + + Checks if the subject info getter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should have. + True if the subject info getter has the given access modifier, false otherwise. + + + + Checks if the subject info getter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should not have. + True if the subject info getter does not have the given access modifier, false otherwise. + + + + Defines a function that takes the full path from the root object until the current object + in the equivalency operation separated by dots, and returns the trace message to log. + + + + + Represents an object that is used by the class to receive tracing statements on what is + happening during a structural equivalency comparison. + + + + + Writes a single line to the trace. + + + + + Starts a block that scopes an operation that should be written to the trace after the returned + is disposed. + + + + + Returns a copy of the trace. + + + + + Exposes tracing capabilities that can be used by the implementation of the equivalency algorithm + when an is provided. + + + + + Writes a single line to the currently configured . + + + If no tracer has been configured, the call will be ignored. + + + + + Starts a block that scopes an operation that will be written to the currently configured + after the returned disposable is disposed. + + + If no tracer has been configured for the , the call will be ignored. + + + + + Provides extension methods for monitoring and querying events. + + + + + Asserts that all occurrences of the event originates from the . + + + Returns only the events that comes from that sender. + + + + + Asserts that at least one occurrence of the events has some argument of the expected + type that matches the given predicate. + + + Returns only the events having some argument matching both type and predicate. + + is . + + + + Asserts that at least one occurrence of the events has arguments of the expected + type that pairwise match all the given predicates. + + + Returns only the events having arguments matching both type and all predicates. + + + If a is provided as predicate argument, the corresponding event parameter value is ignored. + + + + + Provides convenient assertion methods on a that can be + used to assert that certain events have been raised. + + + + + Gets the which is being asserted. + + + + + Asserts that an object has raised a particular event at least once. + + + The name of the event that should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised a particular event. + + + The name of the event that should not be raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised, or + to refer to all properties. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Static methods that aid in generic event subscription + + + + + Generates an eventhandler for an event of type eventSignature that calls RegisterEvent on recorder + when invoked. + + + + + Finds the Return Type of a Delegate. + + + + + Returns an Array of Types that make up a delegate's parameter signature. + + + + + Returns an array of types appended with an EventRecorder reference at the beginning. + + + + + Returns T/F Dependent on a Type Being a Delegate. + + + + + Returns the MethodInfo for the Delegate's "Invoke" Method. + + + + + Provides the metadata of a monitored event. + + + + + The name of the event member on the monitored object + + + + + The type of the event handler and event args. + + + + + Tracks the events an object raises. + + + + + Records activity for a single event. + + + + + Initializes a new instance of the class. + + The object events are recorded from + The name of the event that's recorded + A delegate to get the current date and time in UTC format. + Class used to generate a sequence in a thread-safe manner. + + + + The object events are recorded from + + + + + + + + Called by the auto-generated IL, to record information about a raised event. + + + + + Resets recorder to clear records of events raised so far. + + + + + Represents an (active) recording of all events that happen(ed) while monitoring an object. + + + + + The object events are recorded from + + + + + The name of the event that's recorded + + + + + The type of the event handler identified by . + + + + + Monitors events on a given source + + + + + Gets the object that is being monitored or if the object has been GCed. + + + + + Clears all recorded events from the monitor and continues monitoring. + + + + + Provides access to several assertion methods. + + + + + Gets the metadata of all the events that are currently being monitored. + + + + + Gets a collection of all events that have occurred since the monitor was created or + was called. + + + + + Represents an occurrence of a particular event. + + + + + The name of the event as defined on the monitored object. + + + + + The parameters that were passed to the event handler. + + + + + The exact date and time of the occurrence in . + + + + + The order in which this event was raised on the monitored object. + + + + + This class is used to store data about an intercepted event + + + + + Default constructor stores the parameters the event was raised with + + + + + The exact data and time in UTC format at which the event occurred. + + + + + Parameters for the event + + + + + The order in which this event was invoked on the monitored object. + + + + + Generates a sequence in a thread-safe manner. + + + + + Increments the current sequence. + + + + + Asserts that the thrown exception has a message that matches . + + The containing the thrown exception. + + The wildcard pattern with which the exception message is matched, where * and ? have special meanings. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + The containing the thrown exception. + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Represents the default exception in case no test framework is configured. + + + + + Represents an implicit or explicit scope within which multiple assertions can be collected. + + + This class is supposed to have a very short life time and is not safe to be used in assertion that cross thread-boundaries + such as when using or . + + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts an unnamed scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy. + + The assertion strategy for this scope. + is . + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy and parent assertion scope + + The assertion strategy for this scope. + The parent assertion scope for this scope. + is . + + + + Gets or sets the context of the current assertion scope, e.g. the path of the object graph + that is being asserted on. The context is provided by a which + only gets evaluated when its value is actually needed (in most cases during a failure). + + + + + Gets the current thread-specific assertion scope. + + + + + + + + Exposes the options the scope will use for formatting objects in case an assertion fails. + + + + + Adds an explanation of why the assertion is supposed to succeed to the scope. + + + + + + + + + + + + + + + + + Makes assertion fail when does not match . + + The occurrence description in natural language could then be inserted in failure message by using + {expectedOccurrence} placeholder in message parameters of and its + overloaded versions. + + + defining the number of expected occurrences. + The number of actual occurrences. + + + + + + + + + + + + + + + + Gets the identity of the caller associated with the current scope. + + + + + Adds a pre-formatted failure message to the current scope. + + + + + Adds a block of tracing to the scope for reporting when an assertion fails. + + + + + Tracks a keyed object in the current scope that is excluded from the failure message in case an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. The value is only calculated on failure. + + + + + Returns all failures that happened up to this point and ensures they will not cause + to fail the assertion. + + + + + Gets data associated with the current scope and identified by . + + + + + + + + + + + Allows the scope to assume that all assertions that happen within this scope are going to + be initiated by the same caller. + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Represents a collection of data items that are associated with an . + + + + + Enables chaining multiple assertions on an . + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Enables chaining multiple assertions from a call. + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Allows chaining multiple assertion scopes together using . + + + If the parent scope has captured a failed assertion, + this class ensures that successive assertions are no longer evaluated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Helper class for verifying a condition and/or throwing a test harness specific exception representing an assertion failure. + + + + + Gets an object that wraps and executes a conditional or unconditional assertion. + + + + + Represents assertion fail reason. Contains the message and arguments for message's numbered placeholders. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 args are supported in combination with a {reason}. + + + + + + Initializes a new instance of the class. + + + + + + + + Message to be displayed in case of failed assertion. May contain numbered + -style placeholders as well as specialized placeholders. + + + + + Arguments for the numbered -style placeholders of . + + + + + Throws a generic exception in case no other test harness is detected. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Represents a chaining object returned from to continue the assertion using + an object returned by a selector. + + + + + Specify the condition that must be satisfied upon the subject selected through a prior selector. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + The condition will not be evaluated if the prior assertion failed, + nor will throw any exceptions. + + is . + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + is . + + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + + + Allows to safely select the subject for successive assertions. + + + Selector which result is passed to successive calls to . + + + + + Specify the condition that must be satisfied. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + Messages may contain a few specialized placeholders. For instance, {reason} will be replaced with the reason + of the assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + will not be called unless the assertion is not met. + + Function returning object on demand. Called only when the assertion is not met. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + , + but postpones evaluation of the formatting arguments until the assertion really fails. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional lazily evaluated arguments to any numbered placeholders + + + + Specify the reason why you expect the condition to be . + + + A formatted phrase compatible with explaining why the condition should + be satisfied. If the phrase does not start with the word because, it is prepended to the message. + + If the format of or is not compatible with + , then a warning message is returned instead. + + + + Zero or more values to use for filling in any compatible placeholders. + + + + + Clears the expectation set by . + + + + + Sets the expectation part of the failure message when the assertion is not met. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Defines the name of the subject in case this cannot be extracted from the source code. + + + + + Forces the formatters, that support it, to add the necessary line breaks. + + + This is just shorthand for modifying the property. + + + + + Discards and returns the failures that happened up to now. + + + + + Defines a strategy for handling failures in a . + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Custom version of ICloneable that works on all frameworks. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an abstraction of a particular test framework such as MSTest, nUnit, etc. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Encapsulates expanding the various placeholders supported in a failure message. + + + + + Represents the reason for a structural equivalency assertion. + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Implements a wrapper around all supported test frameworks to throw the correct assertion exception. + + + + + Implements the XUnit (version 2) test framework adapter. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ new DateTime(2011, 3, 10)
+
+ you can write 3.March(2011)
+
+ Or even
+
+ 3.March(2011).At(09, 30) +
+ +
+ + + Returns a new value for the specified and + in the month January. + + + + + Returns a new value for the specified and + in the month February. + + + + + Returns a new value for the specified and + in the month March. + + + + + Returns a new value for the specified and + in the month April. + + + + + Returns a new value for the specified and + in the month May. + + + + + Returns a new value for the specified and + in the month June. + + + + + Returns a new value for the specified and + in the month July. + + + + + Returns a new value for the specified and + in the month August. + + + + + Returns a new value for the specified and + in the month September. + + + + + Returns a new value for the specified and + in the month October. + + + + + Returns a new value for the specified and + in the month November. + + + + + Returns a new value for the specified and + in the month December. + + + + + Returns a new value for the specified and . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value that is the current before the + specified . + + + + + Returns a new value that is the current after the + specified . + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns new that uses + as its datetime and as its offset. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ TimeSpan.FromHours(12)
+
+ you can write
+
+ 12.Hours()
+
+ Or even
+
+ 12.Hours().And(30.Minutes()). +
+ +
+ + + Represents the number of ticks that are in 1 microsecond. + + + + + Represents the number of ticks that are in 1 nanosecond. + + + + + Returns a based on a number of ticks. + + + + + Returns a based on a number of ticks. + + + + + Gets the nanoseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Gets the value of the current structure expressed in whole and fractional nanoseconds. + + + + + Gets the microseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of microseconds. + + + + + Returns a based on a number of microseconds. + + + + + Gets the value of the current structure expressed in whole and fractional microseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds, and add the specified + . + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes, and add the specified + . + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours, and add the specified + . + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days, and add the specified + . + + + + + Convenience method for chaining multiple calls to the methods provided by this class. + + + 23.Hours().And(59.Minutes()) + + + + + Provides extensions to write s with fluent syntax + + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + Contains static methods to help with exception assertions on actions. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Specialized value formatter that looks for static methods in the caller's assembly marked with the + . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of spaces to indent the members of this object by. + + The default value is 3. + + + + Determines whether this instance can handle the specified value. + + The value. + + if this instance can handle the specified value; otherwise, . + + + + + Selects which members of to format. + + The of the object being formatted. + The members of that will be included when formatting this object. + The default is all non-private members. + + + + Selects the name to display for . + + The of the object being formatted. + The name to be displayed for . + The default is . + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a method that can be used to format child values from inside an . + + + Represents the path from the current location to the child value. + + + The child value to format with the configured s. + + + + + This class is used by the class to collect all the output of the (nested calls of an) into + a the final representation. + + + The will ensure that the number of lines will be limited + to the maximum number of lines provided through its constructor. It will throw + a if the number of lines exceeds the maximum. + + + + + The number of spaces that should be used by every indentation level. + + + + + Returns the number of lines of text currently in the graph. + + + + + Starts a new line with the provided text fragment. Additional text can be added to + that same line through . + + + + + Starts a new line with the provided line of text that does not allow + adding more fragments of text. + + + + + Adds a new fragment of text to the current line. + + + + + Adds a new line if there are no lines and no fragment that would cause a new line. + + + + + Inserts an empty line as the first line unless it is already. + + + + + Increases the indentation of every line written into this text block until the returned disposable is disposed. + + + The amount of spacing used for each indentation level is determined by . + + + + + Returns the final textual multi-line representation of the object graph. + + + + + Write fragments that may be on a single line or span multiple lines, + and this is not known until later parts of the fragment are written. + + + + + Write the fragment at the position the graph was in when this instance was created. + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + Write the fragment. If more lines have been added since this instance was + created then also flush the line and indent the next line. + + + + + Provides services for formatting an object being used in an assertion in a human readable format. + + + + + Is used to detect recursive calls by implementations. + + + + + A list of objects responsible for formatting the objects represented by placeholders. + + + + + Returns a human-readable representation of a particular object. + + The value for which to create a . + + Indicates whether the formatter should use line breaks when the specific supports it. + + + A that represents this instance. + + + + + Removes a custom formatter that was previously added though . + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Ensures a custom formatter is included in the chain, just before the default formatter is executed. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Tracks the objects that were formatted as well as the path in the object graph of + that object. + + + Is used to detect the maximum recursion depth as well as cyclic references in the graph. + + + + + Provides information about the current formatting action. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + Determines the depth until which the library should try to render an object graph. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + A depth of 1 will only the display the members of the root object. + + + + + Sets the maximum number of lines of the failure message. + + + + Because of technical reasons, the actual output may be one or two lines longer. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a strategy for formatting an arbitrary value into a human-readable string representation. + + + Add custom formatters using . + + + + + Indicates + whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Returns a human-readable representation of . + + The value to format into a human-readable representation + + An object to write the textual representation to. + + + Contains additional information that the implementation should take into account. + + + Allows the formatter to recursively format any child objects. + + + DO NOT CALL directly, but use + instead. This will ensure cyclic dependencies are properly detected. + Also, the may throw + an that must be ignored by implementations of this interface. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The is responsible for formatting + boolean lambda expressions. + + + + + This step simplifies the lambda expression by replacing parts of it which do not depend on the lambda parameters + with the actual values of these sub-expressions. The simplified expression is much easier to read. + E.g. "(_.Text == "two") AndAlso (_.Number == 3)" + Instead of "(_.Text == value(FluentAssertions.Specs.Collections.GenericCollectionAssertionsSpecs+c__DisplayClass122_0).twoText) AndAlso (_.Number == 3)". + + + + + This step simplifies the lambda expression by removing unnecessary parentheses for root level chain of AND operators. + E.g. (_.Text == "two") AndAlso (_.Number == 3) AndAlso (_.OtherText == "foo") + Instead of ((_.Text == "two") AndAlso (_.Number == 3)) AndAlso (_.OtherText == "foo") + This simplification is only implemented for the chain of AND operators because this is the most common predicate scenario. + Similar logic can be implemented in the future for other operators. + + + + + Expression visitor which can detect whether the expression depends on parameters. + + + + + Expression visitor which can replace constant sub-expressions with constant values. + + + + + Expression visitor which can extract sub-expressions from an expression which has the following form: + (SubExpression1) AND (SubExpression2) ... AND (SubExpressionN) + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Provides a human readable version of a generic or non-generic + including its state. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Marks a static method as a kind of for a particular type. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Contains a number of extension methods for floating point . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that an object equals another object using its implementation.
+ Verification whether returns 0 is not done here, you should use + to verify this. +
+ The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object does not equal another object using its method.
+ Verification whether returns non-zero is not done here, you should use + to verify this. +
+ The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that the subject is ranked equal to another object. I.e. the result of returns 0. + To verify whether the objects are equal you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is not ranked equal to another object. I.e. the result of returns non-zero. + To verify whether the objects are not equal according to you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range (inclusive). + + + The maximum valid value of the range (inclusive). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + + The type that the subject is supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + + The type that the subject is not supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + + + + A method to generate additional information upon comparison failures. + + The current numeric value verified to be non-null. + The value to compare the current numeric value with. + + Returns the difference between a number value and the value. + Returns `null` if the compared numbers are small enough that a difference message is irrelevant. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the XML serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value implies the specified value. + + The right hand side of the implication + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the represents a value in the . + + + The expected that the current value must represent. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + Comparison is performed using + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not exactly equal to the value. + Comparison is performed using + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the offset. + + The expected offset of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the offset. + + The offset that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent + way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is not defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum has a specified flag + + The expected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum does not have a specified flag + + The unexpected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the matches the . + + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the is successful (2xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is redirection (3xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is either client (4xx) or server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is client error (4xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified using the provided . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that a value equals using its implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using its method. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a reference type object is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current object has not been initialized yet. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current object has been initialized. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + The expected type of the object. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the . + + + The type that the subject is supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + The type that the subject is not supposed to be. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is not the . + + + The type that the subject is not supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is assignable to a variable of type . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is assignable to a variable of given . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the object is not assignable to a variable of type . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is not assignable to a variable of given . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Returns the type of the subject the assertion applies on. + It should be a user-friendly name as it is included in the failure message. + + + + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the time difference of the current is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is equal to the + specified time. + + The expected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is not equal to the + specified time. + + The unexpected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that a string is exactly the same as another string, including the casing and any leading or trailing whitespace. + + The expected string. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is not expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to be equivalent to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination literal text and wildcard of + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string starts exactly with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string starts with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string contains another (fragment of a) string. + + + The (fragment of a) string that the current string should contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains another (fragment of a) string a set amount of times. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified a set amount of times, + including any leading or trailing whitespace, with the exception of the casing. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + + + Asserts that a string does not contain another (fragment of a) string. + + + The (fragment of a) string that the current string should not contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + + + Asserts that a string does not contain the specified string, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string has the specified length. + + The expected length of the string + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor nor white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or or white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in upper casing. + + + Be careful that numbers and special characters don't have casing, so + will always fail on a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in upper casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in lower casing. + + + Be careful that numbers and special characters don't have casing, so will always fail on + a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in lower casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Dedicated class for comparing two strings and generating consistent error messages. + + + + + Gets or sets a value indicating whether the subject should not match the pattern. + + + + + Gets or sets a value indicating whether the matching process should ignore any casing difference. + + + + + Ignores the difference between environment newline differences + + + + + Provides the logic and the display text for a . + + + + + Contains a number of methods to assert that an yields the expected result. + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an asynchronous method yields the expected result. + + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current will not complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current throws an exception of type . + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of type + within a specific timeout. + + The type of exception expected to be thrown. + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + The type of exception expected to not be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Invokes the subject and measures the sync execution time. + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that a synchronous method yields the expected result. + + + + + Asserts that the current throws an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + + The type of the exception it should throw. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The delegate is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the delegate should have stopped throwing any exception. + + + The time between subsequent invocations of the delegate. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Contains a number of methods to assert that a method yields the expected result. + + + + + Contains a number of methods to assert that an is in the correct state. + + + + + Gets the exception object of the exception thrown. + + + + + Gets the exception object of the exception thrown. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that the thrown exception has a message that matches . + + + The pattern to match against the exception message. This parameter can contain a combination of literal text and + wildcard (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + + This constructor is almost exact copy of the one accepting . + The original constructor shall stay in place in order to keep backward-compatibility + and to avoid unnecessary wrapping action in . + + is . + + + + Provides methods for asserting that the execution time of an satisfies certain conditions. + + + + + Initializes a new instance of the class. + + The execution on which time must be asserted. + + + + Checks the executing action if it satisfies a condition. + If the execution runs into an exception, then this will rethrow it. + + Condition to check on the current elapsed time. + Polling stops when condition returns the expected result. + The rate at which the condition is re-checked. + The elapsed time. (use this, don't measure twice) + + + + Asserts that the execution time of the operation is less than or equal to a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is less than a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than or equal to a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is within the expected duration. + by a specified precision. + + + The expected duration. + + + The maximum amount of time which the execution time may differ from the expected duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a synchronous function yields the expected result. + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Initializes a new instance of the class. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + is . + is . + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Implements base functionality for assertions on TaskCompletionSource. + + + + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that an assembly does not reference the specified assembly. + + The assembly which should not be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an assembly references the specified assembly. + + The assembly which should be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the assembly defines a type called and . + + The namespace of the class. + The name of the class. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + Asserts that the assembly is unsigned. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + Asserts that the assembly is signed with the specified public key. + + The base-16 string representation of the public key, like "e0851575614491c6d25018fadb75". + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the position. + + The expected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an position. + + The unexpected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the length. + + The expected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an length. + + The unexpected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Extension methods for filtering a collection of types. + + + + + Filters to only include types decorated with a particular attribute. + + + + + Filters to only include types decorated with, or inherits from a parent class, a particular attribute. + + + + + Filters to only include types not decorated with a particular attribute. + + + + + Filters to only include types not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Filters to only include types where the namespace of type is exactly . + + + + + Filters to only include types where the namespace of type is starts with . + + + + + Filters to only include types that subclass the specified type, but NOT the same type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Filters to only include types that are classes. + + + + + Filters to only include types that are not classes. + + + + + Filters to only include types that are static. + + + + + Filters to only include types that are not static. + + + + + Filters to only include types that satisfies the passed. + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Extension methods for getting method and property selectors for a type. + + + + + Returns the types that are visible outside the specified . + + + + + Returns a type selector for the current . + + + + + Returns a type selector for the current . + + + + + Returns a method selector for the current . + + is . + + + + Returns a method selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Static class that allows for a 'fluent' selection of the types from an . + + + AllTypes.From(myAssembly)
+ .ThatImplement<ISomeInterface>
+ .Should()
+ .BeDecoratedWith<SomeAttribute>() +
+
+ + + Returns a for selecting the types that are visible outside the + specified . + + The assembly from which to select the types. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + The constructorInfo from which to select properties. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected member is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected member does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected method is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Allows for fluent selection of methods of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select methods. + is . + + + + Initializes a new instance of the class. + + The types from which to select methods. + is or contains . + + + + Only select the methods that are public or internal. + + + + + Only select the methods without a return value + + + + + Only select the methods with a return value + + + + + Only select the methods that return the specified type + + + + + Only select the methods that do not return the specified type + + + + + Only select the methods that are decorated with an attribute of the specified type. + + + + + Only select the methods that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the methods that are not decorated with an attribute of the specified type. + + + + + Only select the methods that are not decorated with and does not inherit from a parent class, an attribute of the specified type. + + + + + Only return methods that are abstract + + + + + Only return methods that are not abstract + + + + + Only return methods that are async. + + + + + Only return methods that are not async. + + + + + Only return methods that are static. + + + + + Only return methods that are not static. + + + + + Only return methods that are virtual. + + + + + Only return methods that are not virtual. + + + + + Select return types of the methods + + + + + The resulting objects. + + + + + Determines whether the specified method has a special name (like properties and events). + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Initializes a new instance of the class. + + The methods to assert. + is . + + + + Gets the object which value is being asserted. + + + + + Asserts that the selected methods are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods have specified . + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods don't have specified + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected property is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property returns a specified type. + + The expected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property does not return a specified type. + + The unexpected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent selection of properties of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select properties. + is . + + + + Initializes a new instance of the class. + + The types from which to select properties. + is or contains . + + + + Only select the properties that have at least one public or internal accessor + + + + + Only select the properties that are abstract + + + + + Only select the properties that are not abstract + + + + + Only select the properties that are static + + + + + Only select the properties that are not static + + + + + Only select the properties that are virtual + + + + + Only select the properties that are not virtual + + + + + Only select the properties that are decorated with an attribute of the specified type. + + + + + Only select the properties that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the properties that are not decorated with an attribute of the specified type. + + + + + Only select the properties that are not decorated with and does not inherit from a parent class an attribute of the specified type. + + + + + Only select the properties that return the specified type + + + + + Only select the properties that do not return the specified type + + + + + Select return types of the properties + + + + + The resulting objects. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Gets the object which value is being asserted. + + + + + Initializes a new instance of the class, for a number of objects. + + The properties to assert. + is . + + + + Asserts that the selected properties are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties do not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a meets certain expectations. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current is equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equal to the specified type. + + The expected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts than an instance of the subject type is assignable variable of type . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is assignable variable of given . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts than an instance of the subject type is not assignable variable of type . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is not assignable variable of given . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Creates an error message in case the specified type differs from the + type. + + + An empty if the two specified types are the same, or an error message that describes that + the two specified types are not the same. + + + + + Asserts that the current type is not equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current type is not equal to the specified type. + + The unexpected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, + the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an + attribute of type that matches the specified + . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements interface . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not implement . + + The interface that should be not implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not implement interface . + + The interface that should not be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not have a property named . + + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The interface whose member is being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current explicitly implements a method named + from interface . + + The interface whose member is being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has an indexer of type . + with parameter types . + + The type of the indexer. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an indexer that takes parameter types + . + + The expected indexer's parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a method named with parameter types + . + + The name of the method. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not expose a method named + with parameter types . + + The name of the method. + The method parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not have a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent filtering a list of types. + + + + + Initializes a new instance of the class. + + is or contains . + + + + The resulting objects. + + + + + Determines whether a type is a subclass of another type, but NOT the same type. + + + + + Determines whether a type is not a subclass of another type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Determines whether a type does not implement an interface (but is not the interface itself). + + + + + Determines whether a type is decorated with a particular attribute. + + + + + Determines whether a type is decorated with, or inherits from a parent class, a particular attribute. + + + + + Determines whether a type is not decorated with a particular attribute. + + + + + Determines whether a type is not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Determines whether the namespace of type is exactly . + + + + + Determines whether the namespace of type is exactly not . + + + + + Determines whether the namespace of type starts with . + + + + + Determines whether the namespace of type does not start with . + + + + + Filters and returns the types that are value types + + + + + Filters and returns the types that are not value types + + + + + Determines whether the type is a class + + + + + Determines whether the type is not a class + + + + + Filters and returns the types that are abstract + + + + + Filters and returns the types that are not abstract + + + + + Filters and returns the types that are sealed + + + + + Filters and returns the types that are not sealed + + + + + Filters and returns only the types that are interfaces + + + + + Filters and returns only the types that are not interfaces + + + + + Determines whether the type is static + + + + + Determines whether the type is not static + + + + + Allows to filter the types with the passed + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains a number of methods to assert that all s in a + meet certain expectations. + + + + + Initializes a new instance of the class. + + is or contains . + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected types are sealed + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the all are not sealed classes + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is in the specified . + + + The namespace that the type must be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not in the specified . + + + The namespace that the type must not be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current starts with the specified . + + + The namespace that the namespace of the type must start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current + does not starts with the specified . + + + The namespace that the namespace of the type must not start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the attribute. + + The expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the attribute, + using its implementation. + + The unexpected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a root element with the specified + name. + + The name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a root element with the specified + name. + + The full name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The full name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the + element, by using + + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the + element, using + . + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the + element, using a semantic equivalency + comparison. + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the element, using a semantic + equivalency comparison. + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an + is in the expected state./> + + + + + Initializes a new instance of the class. + + + + + + Asserts that the current has the specified + inner text. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified , + and . + + The name of the expected attribute + The namespace of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name, ignoring the namespace. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name and namespace. + + The name of the expected child element + The namespace of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the current is equivalent to the node. + + The expected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the node. + + The unexpected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Since net6.0 StringBuilder has additional overloads taking an AppendInterpolatedStringHandler + and optionally an IFormatProvider. + The overload here is polyfill for older target frameworks to avoid littering the code base with #ifs + in order to silence analyzers about dependending on the current culture instead of an invariant culture. + + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + + + Applied to a method that will never return under any circumstance. + + + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + + + Initializes the attribute with the specified parameter value. + + + The condition parameter value. Code after the method will be considered unreachable + by diagnostics if the argument to the associated parameter matches this value. + + + + + Gets the condition parameter value. + + + + + Specifies that an output may be null even if the corresponding type disallows it. + + + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + + + Specifies that the method or property will ensure that the listed field and property + members have not-null values when returning with the specified return value condition. + + + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + + + Gets field or property member names. + + + + + Specifies that an output will not be null even if the corresponding type allows it. + Specifies that an input argument was not null when the call returns. + + + + + Specifies that the output will be non-null if the named parameter is non-null. + + + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + Gets the return value condition. + + + + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + + + + + Specifies the syntax used in a string. + + + + + Initializes the with the identifier of the syntax used. + + The syntax identifier. + + + Initializes the with the identifier of the syntax used. + The syntax identifier. + Optional arguments associated with the specific syntax employed. + + + Gets the identifier of the syntax used. + + + Optional arguments associated with the specific syntax employed. + + + The syntax identifier for strings containing composite formats for string formatting. + + + The syntax identifier for strings containing date format specifiers. + + + The syntax identifier for strings containing date and time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing JavaScript Object Notation (JSON). + + + The syntax identifier for strings containing numeric format specifiers. + + + The syntax identifier for strings containing regular expressions. + + + The syntax identifier for strings containing time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing URIs. + + + The syntax identifier for strings containing XML. + + + + Used to indicate a byref escapes and is not scoped. + + + + There are several cases where the C# compiler treats a as implicitly + - where the compiler does not allow the to escape the method. + + + For example: + + for instance methods. + parameters that refer to types. + parameters. + + + + This attribute is used in those instances where the should be allowed to escape. + + + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + + + + + Represent a type can be used to index a collection either from the start or the end. + + Index is used by the C# compiler to support the new index syntax + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 } ; + int lastElement = someArray[^1]; // lastElement = 5 + + + + + Construct an Index using a value and indicating if the index is from the start or from the end. + The index value. it has to be zero or positive number. + Indicating if the index is from the start or from the end. + + If the Index constructed from the end, index value 1 means pointing at the last element and index value 0 means pointing at beyond last element. + + + + Create an Index pointing at first element. + + + Create an Index pointing at beyond last element. + + + Create an Index from the start at the position indicated by the value. + The index value from the start. + + + Create an Index from the end at the position indicated by the value. + The index value from the end. + + + Returns the index value. + + + Indicates whether the index is from the start or the end. + + + Calculate the offset from the start using the giving collection length. + The length of the collection that the Index will be used with. length has to be a positive value + + For performance reason, we don't validate the input length parameter and the returned offset value against negative values. + we don't validate either the returned offset is greater than the input length. + It is expected Index will be used with collections which always have non negative length/count. If the returned offset is negative and + then used to index a collection will get out of range exception which will be same affect as the validation. + + + + Indicates whether the current Index object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Index object is equal to another Index object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts integer number to an Index. + + + Converts the value of the current Index object to its equivalent string representation. + + + Represent a range has start and end indexes. + + Range is used by the C# compiler to support the range syntax. + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 }; + int[] subArray1 = someArray[0..2]; // { 1, 2 } + int[] subArray2 = someArray[1..^0]; // { 2, 3, 4, 5 } + + + + + Represent the inclusive start index of the Range. + + + Represent the exclusive end index of the Range. + + + Construct a Range object using the start and end indexes. + Represent the inclusive start index of the range. + Represent the exclusive end index of the range. + + + Indicates whether the current Range object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Range object is equal to another Range object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts the value of the current Range object to its equivalent string representation. + + + Create a Range object starting from start index to the end of the collection. + + + Create a Range object starting from first element in the collection to the end Index. + + + Create a Range object starting from first element to the end. + + + Calculate the start offset and length of range object using a collection length. + The length of the collection that the range will be used with. length has to be a positive value. + + For performance reason, we don't validate the input length parameter against negative values. + It is expected Range will be used with collections which always have non negative length/count. + We validate the range is inside the length scope though. + + + + + An attribute that allows parameters to receive the expression of other parameters. + + + + + Initializes a new instance of the class. + + The condition parameter value. + + + + Gets the parameter name the expression is retrieved from. + + + + + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + + + + + Creates a new instance of the type. + + The name of the feature to indicate. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Indicates which arguments to a method involving an interpolated string handler should be passed to that handler. + + + + + Initializes a new instance of the class. + + The name of the argument that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Initializes a new instance of the class. + + The names of the arguments that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Gets the names of the arguments that should be passed to the handler. + + may be used as the name of the receiver in an instance method. + + + + Indicates the attributed type is to be used as an interpolated string handler. + + + + + Reserved to be used by the compiler for tracking metadata. + This class should not be used by developers in source code. + + + + + Used to indicate to the compiler that a method should be called + in its containing module's initializer. + + + When one or more valid methods + with this attribute are found in a compilation, the compiler will + emit a module initializer which calls each of the attributed methods. + + Certain requirements are imposed on any method targeted with this attribute: + - The method must be `static`. + - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc. + - The method must be parameterless. + - The method must return `void`. + - The method must not be generic or be contained in a generic type. + - The method's effective accessibility must be `internal` or `public`. + + The specification for module initializers in the .NET runtime can be found here: + https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer + + + + + Specifies that a type has required members or that a member is required. + + + + + Used to indicate to the compiler that the .locals init flag should not be set in method headers. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + +
+
diff --git a/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll b/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll index 8f4f6ad..810228b 100644 Binary files a/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll and b/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll differ diff --git a/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll.config b/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll.config index 1696df6..e96eefc 100644 --- a/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll.config +++ b/RestApiTests/RestApiTests/bin/Debug/RestApiTests.dll.config @@ -6,6 +6,10 @@ + + + + \ No newline at end of file diff --git a/RestApiTests/RestApiTests/bin/Debug/RestApiTests.pdb b/RestApiTests/RestApiTests/bin/Debug/RestApiTests.pdb index 722ee29..1308a2e 100644 Binary files a/RestApiTests/RestApiTests/bin/Debug/RestApiTests.pdb and b/RestApiTests/RestApiTests/bin/Debug/RestApiTests.pdb differ diff --git a/RestApiTests/RestApiTests/bin/Debug/nunit_random_seed.tmp b/RestApiTests/RestApiTests/bin/Debug/nunit_random_seed.tmp index c245550..8a6f68c 100644 --- a/RestApiTests/RestApiTests/bin/Debug/nunit_random_seed.tmp +++ b/RestApiTests/RestApiTests/bin/Debug/nunit_random_seed.tmp @@ -1 +1 @@ -235453772 \ No newline at end of file +1546717492 \ No newline at end of file diff --git a/RestApiTests/RestApiTests/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/RestApiTests/RestApiTests/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache index 17d8318..a92894a 100644 Binary files a/RestApiTests/RestApiTests/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache and b/RestApiTests/RestApiTests/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.AssemblyReference.cache b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.AssemblyReference.cache index dc22298..7c8d672 100644 Binary files a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.AssemblyReference.cache and b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.AssemblyReference.cache differ diff --git a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.CoreCompileInputs.cache b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.CoreCompileInputs.cache index 2118f4e..ecdecfa 100644 --- a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.CoreCompileInputs.cache +++ b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -eac0b6e671c59a64893b0cb449a977cf2e297416 +c6db05c2910e1a5d4cc06f6aeaaa5f3f62d3be58 diff --git a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.FileListAbsolute.txt b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.FileListAbsolute.txt index 4021ac4..28fc886 100644 --- a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.FileListAbsolute.txt +++ b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.csproj.FileListAbsolute.txt @@ -36,3 +36,6 @@ C:\Users\lukas\Nextcloud\GitHub\.Net_C.Sharp_Test\RestApiTests\RestApiTests\obj\ C:\Users\lukas\Nextcloud\GitHub\.Net_C.Sharp_Test\RestApiTests\RestApiTests\obj\Debug\RestApiTests.pdb C:\Users\lukas\Nextcloud\GitHub\.Net_C.Sharp_Test\RestApiTests\RestApiTests\bin\Debug\Newtonsoft.Json.dll C:\Users\lukas\Nextcloud\GitHub\.Net_C.Sharp_Test\RestApiTests\RestApiTests\bin\Debug\Newtonsoft.Json.xml +C:\Users\lukas\Nextcloud\GitHub\.Net_C.Sharp_Test\RestApiTests\RestApiTests\bin\Debug\FluentAssertions.dll +C:\Users\lukas\Nextcloud\GitHub\.Net_C.Sharp_Test\RestApiTests\RestApiTests\bin\Debug\FluentAssertions.pdb +C:\Users\lukas\Nextcloud\GitHub\.Net_C.Sharp_Test\RestApiTests\RestApiTests\bin\Debug\FluentAssertions.xml diff --git a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.dll b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.dll index 8f4f6ad..810228b 100644 Binary files a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.dll and b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.dll differ diff --git a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.pdb b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.pdb index 722ee29..1308a2e 100644 Binary files a/RestApiTests/RestApiTests/obj/Debug/RestApiTests.pdb and b/RestApiTests/RestApiTests/obj/Debug/RestApiTests.pdb differ diff --git a/RestApiTests/RestApiTests/packages.config b/RestApiTests/RestApiTests/packages.config index 0471ba0..2c04370 100644 --- a/RestApiTests/RestApiTests/packages.config +++ b/RestApiTests/RestApiTests/packages.config @@ -1,5 +1,6 @@  + diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/.signature.p7s b/RestApiTests/packages/FluentAssertions.6.12.0/.signature.p7s new file mode 100644 index 0000000..8c37291 Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/.signature.p7s differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/FluentAssertions.6.12.0.nupkg b/RestApiTests/packages/FluentAssertions.6.12.0/FluentAssertions.6.12.0.nupkg new file mode 100644 index 0000000..ff9b70b Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/FluentAssertions.6.12.0.nupkg differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/FluentAssertions.png b/RestApiTests/packages/FluentAssertions.6.12.0/FluentAssertions.png new file mode 100644 index 0000000..216d3a3 Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/FluentAssertions.png differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.dll b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.dll new file mode 100644 index 0000000..d8cf0d9 Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.dll differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.pdb b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.pdb new file mode 100644 index 0000000..6c6f0ac Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.pdb differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.xml b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.xml new file mode 100644 index 0000000..da4a30d --- /dev/null +++ b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net47/FluentAssertions.xml @@ -0,0 +1,17278 @@ + + + + FluentAssertions + + + + + Initializes a new instance of the class. + + + + + Constraint which can be returned from an assertion which matches a condition and which will allow + further matches to be performed on the matched condition as well as the parent constraint. + + The type of the original constraint that was matched + The type of the matched object which the parent constraint matched + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + Just a convenience property that returns the same value as . + + + + + Contains extension methods for custom assertions in unit tests. + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Provides methods for asserting the execution time of a method or property. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + is . + + + + Provides methods for asserting the execution time of an action. + + An action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Provides methods for asserting the execution time of an async action. + + An async action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection of the provided . + Should be used to assert that a method that uses the keyword throws a particular exception. + + The object that exposes the method or property. + A reference to the method or property to force enumeration of. + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current of . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + is . + + + + Returns a object + that can be used to assert the current . + + + + + + Returns a object that can be used to assert the current . + + + + + + Returns a object that can be used to assert the methods returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + + Returns a object that can be used to assert the properties returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current System.Func{Task{T}}. + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Starts monitoring for its events. + + The object for which to monitor the events. + + An optional delegate that returns the current date and time in UTC format. + Will revert to if no delegate was provided. + + is . + + + + Safely casts the specified object to the type specified through . + + + Has been introduced to allow casting objects without breaking the fluent API. + + The to cast to + + + + + + + + + + + + + + + + You are asserting the itself. Remove the Should() method directly following And. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Holds any global options that control the behavior of FluentAssertions. + + + + + Allows configuring the defaults used during a structural equivalency assertion. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + An action that is used to configure the defaults. + + is . + + + + Represents a mutable plan consisting of steps that are executed while asserting a (collection of) object(s) + is structurally equivalent to another (collection of) object(s). + + + Members on this property are not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Gets the default formatting options used by the formatters in Fluent Assertions. + + + Members on this property should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Please note that this assertion cannot identify whether the previous assertion was successful or not. + In case it was not successful and it is running within an active + there is no current result to compare with. + So, this extension will compare with the default value. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Remove all whitespace until we find a non-whitespace character + + + + + Only keep one whitespace character if more than one follow each other. + + + + + Represents a stateful parsing strategy that is used to help identify the "caller" to use in an assertion message. + + + The strategies will be instantiated at the beginning of a "caller identification" task, and will live until + the statement can be identified (and thus some are stateful). + + + + + Given a symbol, the parsing strategy should add/remove from the statement if needed, and then return + - InProgress if the symbol isn't relevant to the strategies (so other strategies can be tried) + - Handled if an action has been taken (and no other strategies should be used for this symbol) + - Done if the statement is complete, and thus further symbols should be read. + + + + + Returns true if strategy is in the middle of a context (ex: strategy read "/*" and is waiting for "*/" + + + + + Used to notify the strategy that we have reached the end of the line (very useful to detect the end of + a single line comment). + + + + + Tries to extract the name of the variable or invocation on which the assertion is executed. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in descending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is null or does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is a subset of the . + + An with the expected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains the specified item. + + The expectation item. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection contains at least one item that matches the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in any order. Elements are compared + using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection contains at least one element that is assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the given type. + + + Object type that should not be in collection + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item matching the specified . + + The predicate that will be used to find the matching items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection ends with the specified . + + + The element that is expected to appear at the end of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their method. + + A params array with the expected elements. + + + + Asserts that two collections contain the same items in the same order, where equality is determined using a + . + + + The collection to compare the subject with. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches the supplied amount. + + The expected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches a condition stated by the . + + A predicate that yields the number of items that is expected to be in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection is greater than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is greater than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection has the supplied at the + supplied . + + The index where the element is expected + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly precedes the . + + The element that should succeed . + The expected element that should precede . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly succeeds the . + + The element that should precede . + The element that should succeed . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection has the same number of elements as . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection shares one or more items with the specified . + + The with the expected shared items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + /// + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection not is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is not null and contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is not a subset of the . + + An with the unexpected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain the supplied item. + + The element that is not expected to be in the collection + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection does not contain any items that match the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection does not contain the supplied items. Elements are compared + using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and are consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and consecutively. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + The predicate when evaluated should not be null. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the elements that are not expected. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection does not match the supplied amount. + + The unexpected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection does not have the same number of elements as . + + The other collection with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not share any items with the specified . + + The to compare to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection only contains items that match a predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + The predicate to group the items by. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection contains only items which meet + the criteria provided by the inspector. + + + The element inspector, which inspects each element in turn. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + The order of the predicates does not need to match the order of the elements. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection starts with the specified . + + + The element that is expected to appear at the start of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to have all elements in the specified . + Elements are compared using their implementation. + + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current dictionary contains all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The expected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current dictionary not to contain all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The unexpected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the dictionary contains the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the dictionary contains the specified value. Values are compared using + their implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns an enumerable consisting of all items in the first collection also appearing in the second. + + Enumerable.Intersect is not suitable because it drops any repeated elements. + + + + Asserts that the current dictionary does not contain the specified value. + Values are compared using their implementation. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary contains the specified for the supplied + . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified for the + supplied . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Stores an element's value and index in the maximum matching problem. + + The type of the element value. + + + + The index of the element in the maximum matching problem. + + + + + The value of the element in the maximum matching problem. + + + + + The class defines input for the maximum matching problem. + The input is a list of predicates and a list of elements. + The goal of the problem is to find such mapping between predicates and elements that would maximize number of matches. + A predicate can be mapped with only one element. + An element can be mapped with only one predicate. + + The type of elements which must be matched with predicates. + + + + The class defines the solution (output) for the maximum matching problem. + See documentation of for more details. + + The type of elements which must be matched with predicates. + + + + The class encapsulates the algorithm + for solving the maximum matching problem (see ). + See https://en.wikipedia.org/wiki/Maximum_cardinality_matching for more details.
+ A simplified variation of the Ford-Fulkerson algorithm is used for solving the problem. + See https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm for more details. +
+
+ + + Solves the maximum matching problem; + + + + + To find a solution which contains the specified predicate and increases the total number of matches + we:
+ - Search for a free element which matches the specified predicate.
+ - Or take over an element which was previously matched with another predicate and repeat the procedure for the previously matched predicate.
+ - We are basically searching for a path in the graph of matches between predicates and elements which would start at the specified predicate + and end at an unmatched element.
+ - Breadth first search used to traverse the graph.
+
+
+ + + Stores a predicate's expression and index in the maximum matching problem. + + The type of the element values in the maximum matching problems. + + + + The index of the predicate in the maximum matching problem. + + + + + The expression of the predicate. + + + + + Determines whether the predicate matches the specified element. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Asserts that a collection of string is equivalent to another collection of strings. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least one string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that the collection does not contain any string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Initializes a new instance of the class. + + + + + Gets the value of the object referred to by the key. + + + + + Default implementation for for production use. + + + + + Defines the key for the configuration of the test framework to be assumed in FluentAssertions. + + + + + Gets the active configuration, + + + + + Gets or sets the mode on how Fluent Assertions will find custom implementations of + . + + + + + Gets or sets the assembly name to scan for custom value formatters in case + is set to . + + + + + Gets or sets the name of the test framework to use. + + + If no name is provided, Fluent Assertions + will try to detect it by scanning the currently loaded assemblies. If it can't find a suitable provider, + and the run-time platform supports it, it'll try to get it from the . + + + + + Converts an existing to a but normalizes the + so that comparisons of converted instances retain the UTC/local agnostic behavior. + + + + + Searches for the first different element in two sequences using specified + + The type of the elements of the sequence. + The type of the elements of the sequence. + The first sequence to compare. + The second sequence to compare. + Method that is used to compare 2 elements with the same index. + Index at which two sequences have elements that are not equal, or -1 if enumerables are equal + + + + Gets the of an returning a property. + + is . + + + + Gets a dotted path of property names representing the property expression, including the declaring type. + + + E.g. Parent.Child.Sibling.Name. + + is . + + + + Validates that the expression can be used to construct a . + + is . + + + + Workaround to make dotnet_code_quality.null_check_validation_methods work + https://github.com/dotnet/roslyn-analyzers/issues/3451#issuecomment-606690452 + + + + + Represents an abstract timer that is used to make some of this library's timing dependent functionality better testable. + + + + + Will block the current thread until a time delay has passed. + + The time span to wait before completing the returned task + + + + Creates a task that will complete after a time delay. + + The time span to wait before completing the returned task + + A task that represents the time delay. + + + + + Creates a timer to measure the time to complete some arbitrary executions. + + + + + Used to provide access to the underlying for an object that wraps an underlying + collection. + + Collection type. + + + + A smarter enumerator that can provide information about the relative location (current, first, last) + of the current item within the collection without unnecessarily iterating the collection. + + + + + Abstracts a stopwatch so we can control time in unit tests. + + + + + The time elapsed since the timer was created through . + + + + + Encapsulates a dotted candidate to a (nested) member of a type as well as the + declaring type of the deepest member. + + + + + Initializes a new instance of the class. + + is . + + + + Initializes a new instance of the class. + + is . + + + + Gets a value indicating whether the current object represents a child member of the + or that it is the parent of that candidate. + + + + + Determines whether the current path is the same as when ignoring any specific indexes. + + + + + Gets a value indicating whether the current path contains an indexer like `[1]` instead of `[]`. + + + + + Returns a copy of the current object as if it represented an un-indexed item in a collection. + + + + + Returns the name of the member the current path points to without its parent path. + + + + + Compares two segments of a . + Sets the equal with any numeric index qualifier. + All other comparisons are default string equality. + + + + + Compares two segments of a . + + Left part of the comparison. + Right part of the comparison. + True if segments are equal, false if not. + + + + A sum of all possible . It's needed to calculate what options were used when decorating with . + They are a subset of which can be checked on a type and therefore this mask has to be applied to check only for options. + + + + + Initializes a new instance of the class. + + is . + + + + Maintains the framework-specific services. + + + + + Factory for starting a timer on demand. + + + + + Finds the first index at which the does not match the + string anymore, accounting for the specified . + + + + + Gets the quoted three characters at the specified index of a string, including the index itself. + + + + + Replaces all numeric indices from a path like "property[0].nested" and returns "property[].nested" + + + + + Determines whether a string contains a specific index like `[0]` instead of just `[]`. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Joins a string with one or more other strings using a specified separator. + + + Any string that is empty (including the original string) is ignored. + + + + + Changes the first character of a string to uppercase. + + + + + Appends tab character at the beginning of each line in a string. + + + + + + Counts the number of times a substring appears within a string by using the specified . + + The string to search in. + The substring to search for. + The option to use for comparison. + + + + Determines whether two objects refer to the same + member. + + + + + Returns the interfaces that the implements that are concrete + versions of the . + + + + + Finds the property by a case-sensitive name. + + + Returns if no such property exists. + + + + + Finds the field by a case-sensitive name. + + + Returns if no such property exists. + + + + + Check if the type is declared as abstract. + + Type to be checked + + + + Check if the type is declared as sealed. + + Type to be checked + + + + Check if the type is declared as static. + + Type to be checked + + + + Check if the type has a human-readable name. + + false for compiler generated type names, otherwise true. + + + + If the type provided is a nullable type, gets the underlying type. Returns the type itself otherwise. + + + + + Helper class to get all the public and internal fields and properties from a type. + + + + + Defines the modes in which custom implementations of + are detected as configured through . + + + + + Detection is disabled. + + + + + Only custom value formatters exposed through the assembly set in + are detected. + + + + + All custom value formatters in any assembly loaded in the current will be detected. + + + + + Marks a method as an extension to Fluent Assertions that either uses the built-in assertions + internally, or directly uses the Execute.Assertion. + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The object that is being extended. + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The object that is being extended. + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection has the same number of elements as . + + The object that is being extended. + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of columns as + . + + The object that is being extended. + The other with the unexpected number of + elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataRow objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of rows as + . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of rows as + . + + The other with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataSet objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Contains an extension method for custom assertions in unit tests related to DataTable objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency. + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + + Testing of any property can be overridden using the callback. Exclude specific properties using + . + + + If or a related function is + used and the exclusion matches the subject , then the equivalency test will never + fail. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of columns. + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. This can be overridden + by using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table (which also excludes the related field data in + objects) using or a related function. + + + + You can use + and related functions to exclude properties on other related System.Data types. + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of tables. + + + + + Asserts that an instance of contains exactly the expected number of tables in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of contains a table with the expected name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has tables with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has tables with all of the supplied expected table names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. This can be overridden by using the overload that takes + . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. This setting applies to all types recursively tested + as part of the . + + + Exclude specific properties using . + Exclude specific tables within the data set using + or a related function. You can also indicate that columns should be excluded within the + objects recursively tested as part of the using + or a related function. The method + can be used to exclude columns across all objects in the that share + the same name. + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of rows and columns. + + + + + Asserts that an instance of contains exactly the expected number of rows in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. This can be overridden by + using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table using + or a related function -- this excludes both the objects in + and associated field data in objects within the . + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides access to configuration for equivalency assertions on System.Data types (, + , , , , + ). + + The System.Data type being tested for equivalency. + + + + Specifies that the subject and the expectation should not be considered non-equivalent if their exact data types do not match. + + + + + Specifies that when comparing , columns that are unmatched between the subject and the expectation should be ignored. + + + + + Specifies the that should be used when comparing . By default, rows are matched by their index in the collection. But, if the has a set, it is possible to use to indicate that rows should be matched by their primary key values, irrespective of their index within the collection. + + The to use when comparing between the subject and the expectation. + + + + Specifies that when comparing objects that are in the state, only the current field values should be compared. Original field values are excluded from comparison. This only affects comparisons where both the subject and the expectation are in the modified state. + + + + + Excludes members of the objects under test from comparison by means of a predicate that selects members based on objects describing them. + + A functor that returns true if the parameter refers to a member that should be excluded. + + + + Excludes a member of the objects under test from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes an entire table from comparison. When comparing objects, if a table is present by the supplied name, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + The value for for which tables within a should be ignored. + + + + Excludes tables from comparison using names in an set. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An of values for for which tables within a should be ignored. + + + + Excludes tables from comparison using an array of table names. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An array of values for for which tables within a should be ignored. + + + + Excludes a column from comparison by . The column to be excluded is matched by the name of its associated and its own . + + A object that specifies which column should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes a column from comparison by the name of its associated and its own . + + The value for for which columns should be ignored. + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Exclude an enumerable set of columns from comparison by . For each item in the enumeration, the column to be excluded is matched by the name of its associated and its own . + + An object that specifies which column(s) should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by . For each element in the array, the column to be excluded is matched by the name of its associated and its own . + + An array of objects that specify which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an enumerable set of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Indicates how objects from different objects should be matched + up for equivalency comparisons. + + + + + Indicates that objects should be matched up by their index within the + collection. This is the default. + + + + + Indicates that objects should be matched up by the values they have for + the table's . For this to work, the rows must be from + objects with exactly equivalent + configuration. + + + + + Contains an extension method for custom assertions in unit tests related to Enum objects. + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Represents a mutable collection of equivalency steps that can be reordered and/or amended with additional + custom equivalency steps. + + + + + Adds a new after any of the built-in steps, with the exception of the final + . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Adds a new right after the specified . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new before any of the built-in steps. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new just before the . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all instances of the specified from the current step. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes each and every built-in . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all custom s. + + + This method should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Gets the value of the subject object graph. + + + + + Gets the value of the expected object graph. + + + + + Gets the run-time type of the current expectation object. + + + + + Returns either the run-time or compile-time type of the expectation based on the options provided by the caller. + + + If the expectation is a nullable type, it should return the type of the wrapped object. + + + + + Collects the members that need to be converted by the . + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Indication of how cyclic references should be handled when validating equality of nested properties. + + + + + Cyclic references will be ignored. + + + + + Cyclic references will result in an exception. + + + + + The object overrides , so use that. + + + + + The object does not seem to override , so compare by members + + + + + Compare using , whether or not the object overrides it. + + + + + Compare the members, regardless of an override exists or not. + + + + + Represents the run-time type-specific behavior of a structural equivalency assertion. + + + + + Excludes the specified (nested) member from the structural equality check. + + + + + Selects a collection to define exclusions at. + Allows to navigate deeper by using . + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Causes the collection identified by to be compared in the order + in which the items appear in the expectation. + + + + + Causes the collection identified by to be compared ignoring the order + in which the items appear in the expectation. + + + + + Creates a new set of options based on the current instance which acts on a a collection of the . + + + + + Maps a (nested) property or field of type to + a (nested) property or field of using lambda expressions. + + A field or property expression indicating the (nested) member to map from. + A field or property expression indicating the (nested) member to map to. + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are ignored. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a (nested) property or field of the expectation to a (nested) property or field of the subject using a path string. + + + A field or property path indicating the (nested) member to map from in the format Parent.Child.Collection[].Member. + + + A field or property path indicating the (nested) member to map to in the format Parent.Child.Collection[].Member. + + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are not allowed + and must be written as "[]". If the types of the members are different, the usual logic applies depending or not + if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using lambda expressions. + + A field or property expression indicating the member to map from. + A field or property expression indicating the member to map to. + + Only direct members of and can be + mapped to each other. Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using member names. + + A field or property name indicating the member to map from. + A field or property name indicating the member to map to. + + Only direct members of and can be + mapped to each other, so no . or [] are allowed. + Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Represents the run-time type-agnostic behavior of a structural equivalency assertion. + + + + + Convenient implementation of that will only invoke + + + + + Implements , but only gets called when the expected type matches . + + + + + Provides information on a particular property during an assertion for structural equality of two object graphs. + + + + + Is responsible for validating the equivalency of a subject with another object. + + + + + Ensures that all the rules remove the collection index from the path before processing it further. + + + + + Keeps track of objects and their location within an object graph so that cyclic references can be detected + and handled upon. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + The behavior of a cyclic reference is determined by the parameter. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an object tracked by the including it's location within an object graph. + + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . + 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + A specialized type of that represents a field of an object in a structural equivalency assertion. + + + + + Allows deferred fetching of the subject ID. + + + + + Provides the required information for executing an equality assertion between a subject and an expectation. + + The type of the subject. + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + Gets the value of the + + + + + Gets the value of the expectation object that was matched with the subject using a . + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Provides the run-time details of the class. + + + + + Gets an ordered collection of selection rules that define what members (e.g. properties or fields) are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation properties. + + + + + Gets a value indicating whether or not the assertion must perform a deep comparison. + + + + + Gets a value indicating whether recursion is allowed to continue indefinitely. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By default, + ordering is irrelevant. + + + + + Contains the rules for what properties to run an auto-conversion. + + + + + Gets value indicating how the enums should be compared. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets a value indicating whether the runtime type of the expectation should be used rather than the declared type. + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets a value indicating whether members on the subject marked with [] + and should be treated as though they don't exist. + + + + + Gets a value indicating whether members on the expectation marked with [] + and should be excluded. + + + + + Gets a value indicating whether records should be compared by value instead of their members + + + + + Gets the currently configured tracer, or if no tracing was configured. + + + + + Determines the right strategy for evaluating the equality of objects of this type. + + + + + Defines a step in the process of comparing two object graphs for structural equivalency. + + + + + Executes an operation such as an equivalency assertion on the provided . + + + Should return if the subject matches the expectation or if no additional assertions + have to be executed. Should return otherwise. + + + May throw when preconditions are not met or if it detects mismatching data. + + + + + Provides information on a particular property or field during an assertion for structural equality of two object graphs. + + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + A formatted phrase and the placeholder values explaining why the assertion is needed. + + + + + Gets an object that can be used by the equivalency algorithm to provide a trace when the + option is used. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + + + Creates a context from the current object intended to assert the equivalency of a nested member. + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a deep clone of the current context. + + + + + Runs a deep recursive equivalency assertion on the provided . + + + + + Exposes information about an object's member + + + + + Gets the type that declares the current member. + + + + + Gets the type that was used to determine this member. + + + + + Gets the value of the member from the provided + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Gets a value indicating whether the member is browsable in the source code editor. This is controlled with + . + + + + + Represents a field or property in an object graph. + + + + + Gets the name of the current member. + + + + + Gets the type of this member. + + + + + Gets the type that declares the current member. + + + + + Gets the full path from the root object until and including the current node separated by dots. + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Represents a rule that defines how to map the selected members of the expectation object to the properties + of the subject. + + + + + Attempts to find a member on the subject that should be compared with the + during a structural equality. + + + Whether or not a match is required or optional is up to the specific rule. If no match is found and this is not an issue, + simply return . + + + The of the subject's member for which a match must be found. Can never + be . + + + The subject object for which a matching member must be returned. Can never be . + + + + + Returns the of the property with which to compare the subject with, or + if no match was found. + + + + + Represents a rule that defines which members of the expectation to include while comparing + two objects for structural equality. + + + + + Gets a value indicating whether this rule should override the default selection rules that include all members. + + + + + Adds or removes properties or fields to/from the collection of members that must be included while + comparing two objects for structural equality. + + + The node within the graph from which to select members. + + + A collection of members that was pre-populated by other selection rules. Can be empty. + Provides auxiliary information such as the configuration and such. + + The collection of members after applying this rule. Can contain less or more than was passed in. + + + + + Represents a node in the object graph that is being compared as part of a structural equivalency check. + This can be the root object, a collection item, a dictionary element, a property or a field. + + + + + The name of the variable on which a structural equivalency assertion is executed or + the default if reflection failed. + + + + + Gets the name of this node. + + + "Property2" + + + + + Gets the type of this node, e.g. the type of the field or property, or the type of the collection item. + + + + + Gets the type of the parent node, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the path from the root object UNTIL the current node, separated by dots or index/key brackets. + + + "Parent[0].Property2" + + + + + Gets the full path from the root object up to and including the name of the node. + + + "Parent[0]" + + + + + Gets a zero-based number representing the depth within the object graph + + + The root object has a depth of 0, the next nested object a depth of 1, etc. + See also this article + + + + + Gets the path including the description of the subject. + + + "property subject.Parent[0].Property2" + + + + + Gets a value indicating whether the current node is the root. + + + + + Gets a value indicating if the root of this graph is a collection. + + + + + Represents an object, dictionary key pair, collection item or member in an object graph. + + + + + Gets the type of the object + + + + + Gets the type of the parent, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the full path from the root object until the current node separated by dots. + + + + + Gets the compile-time type of the current object. If the current object is not the root object and the type is not , + then it returns the same as the property does. + + + + + Gets the run-time type of the current object. + + + + + Defines a rule that is used to determine whether the order of items in collections is relevant or not. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a member name and the target type. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a nested member path in the form of "Parent.NestedCollection[].Member" + + + + + Initializes a new instance of the class. + + is . + is empty. + is . + is empty. + + + + Requires the subject to have a member with the exact same name as the expectation has. + + + + + 2 + + + + Finds a member of the expectation with the exact same name, but doesn't require it. + + + + + 2 + + + + Provides contextual information to an . + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets either the compile-time or run-time type depending on the options provided by the caller. + + + + + Determines which members are included in the equivalency assertion + + + + + Supports recursively comparing two multi-dimensional arrays for equivalency using strict order for the array items + themselves. + + + + + The selected path starting at the first . + + + + + Selects a nested property to exclude. This ends the chain. + + + + + Adds the selected collection to the chain. + + + + + Collection of s. + + + + + Initializes a new collection of ordering rules. + + + + + Initializes a new collection of ordering rules based on an existing collection of ordering rules. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Determines whether the rules in this collection dictate strict ordering during the equivalency assertion on + the collection pointed to by . + + + + + Ordering rule that ensures that byte arrays are always compared in strict ordering since it would cause a + severe performance impact otherwise. + + + + + An ordering rule that basically states that the order of items in all collections is important. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Represents a rule for determining whether or not a certain collection within the object graph should be compared using + strict ordering. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + A specialized type of that represents a property of an object in a structural equivalency assertion. + + + + + Selection rule that adds all public fields of the expectation + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that adds all public properties of the expectation. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that removes a particular property from the structural comparison. + + + + + Selection rule that removes a particular member from the structural comparison based on a predicate. + + + + + 2 + + + + Selection rule that includes a particular property in the structural comparison. + + + + + Selection rule that includes a particular member in the structural comparison. + + + + + 2 + + + + Represents a selection context of a nested property + + + + + Represents the run-time behavior of a structural equivalency assertion. + + + + + Creates an instance of the equivalency assertions options based on defaults previously configured by the caller. + + + + + Gets an ordered collection of selection rules that define what members are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation members. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By + default, + ordering is irrelevant. + + + + + Gets value indicating whether the equality check will include nested collections and complex types. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Causes inclusion of only public properties of the subject as far as they are defined on the declared type. + + + This clears all previously registered selection rules. + + + + + Causes inclusion of only public properties of the subject based on its run-time type rather than its declared type. + + + This clears all previously registered selection rules. + + + + + Instructs the comparison to include public fields. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal fields. + + + + + Instructs the comparison to exclude fields. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to include public properties. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal properties. + + + + + Instructs the comparison to exclude properties. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to exclude non-browsable members in the expectation (members set to + ). It is not required that they be marked non-browsable in the subject. Use + to ignore non-browsable members in the subject. + + + + + Instructs the comparison to treat non-browsable members in the subject as though they do not exist. If you need to + ignore non-browsable members in the expectation, use . + + + + + Instructs the comparison to respect the expectation's runtime type. + + + + + Instructs the comparison to respect the expectation's declared type. + + + + + Excludes a (nested) property based on a predicate from the structural equality check. + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Tries to match the members of the expectation with equally named members on the subject. Ignores those + members that don't exist on the subject and previously registered matching rules. + + + + + Requires the subject to have members which are equally named to members on the expectation. + + + + + Overrides the comparison of subject and expectation to use provided + when the predicate is met. + + + The assertion to execute when the predicate is met. + + + + + Causes the structural equality comparison to recursively traverse the object graph and compare the fields and + properties of any nested objects and objects in collections. + + + This is the default behavior. You can override this using . + + + + + Stops the structural equality check from recursively comparing the members any nested objects. + + + If a property or field points to a complex type or collection, a simple call will + be done instead of recursively looking at the properties or fields of the nested object. + + + + + Causes the structural equality check to ignore any cyclic references. + + + By default, cyclic references within the object graph will cause an exception to be thrown. + + + + + Disables limitations on recursion depth when the structural equality check is configured to include nested objects + + + + + Clears all selection rules, including those that were added by default. + + + + + Clears all matching rules, including those that were added by default. + + + + + Adds a selection rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds a matching rule to the ones already added by default, and which is evaluated before all existing rules. + + + + + Adds an ordering rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds an equivalency step rule to the ones already added by default, and which is evaluated before previous + user-registered steps + + + + + Ensures the equivalency comparison will create and use an instance of + that implements , any time + when a property is of type . + + + + + Ensures the equivalency comparison will use the specified implementation of + any time when a property is of type . + + + + + Causes all collections to be compared in the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared in the order + in which the items appear in the expectation. + + + + + Causes all collections - except bytes - to be compared ignoring the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared ignoring the order + in which the items appear in the expectation. + + + + + Causes to compare Enum properties using the result of their ToString method. + + + By default, enums are compared by value. + + + + + Causes to compare Enum members using their underlying value only. + + + This is the default. + + + + + Ensures records by default are compared by value instead of their members. + + + + + Ensures records by default are compared by their members even though they override + the method. + + + This is the default. + + + + + Marks the as a type that should be compared by its members even though it may override + the method. + + + + + Marks as a type that should be compared by its members even though it may override + the method. + + is . + + + + Marks the as a value type which must be compared using its + method, regardless of it overriding it or not. + + + + + Marks as a value type which must be compared using its + method, regardless of it overriding it or not. + + is . + + + + Enables tracing the steps the equivalency validation followed to compare two graphs. + + + + + Instructs the equivalency comparison to try to convert the values of + matching properties before running any of the other steps. + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Defines additional overrides when used with + + + + + Allows overriding the way structural equality is applied to (nested) objects of type + + + + + + Allows overriding the way structural equality is applied to particular members. + + + A predicate based on the of the subject that is used to identify the property for which + the + override applies. + + + + + Represents a collection of assertion results obtained through a . + + + + + Adds the failures (if any) resulting from executing an assertion within a + identified by a key. + + + + + Returns the closest match compared to the set identified by the provided or + an empty array if one of the results represents a successful assertion. + + + The closest match is the set that contains the least amount of failures, or no failures at all, and preferably + the set that is identified by the . + + + + + Gets a value indicating whether this collection contains a set without any failures at all. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Attempts to convert the subject's property value to the expected type. + + + Whether or not the conversion is attempted depends on the . + + + + + Provides Reflection-backed meta-data information about a type implementing the interface. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface. Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface keyed to . + Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to convert an object into a dictionary typed to the and of the current . + + + if the conversion succeeded or otherwise. + + + + + Executes a single equivalency assertion on two collections, optionally recursive and with or without strict ordering. + + + + + Represents a composite equivalency step that passes the execution to all user-supplied steps that can handle the + current context. + + + + + Ensures that types that are marked as value types are treated as such. + + + + + Checks if the subject info setter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should have. + True if the subject info setter has the given access modifier, false otherwise. + + + + Checks if the subject info setter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should not have. + True if the subject info setter does not have the given access modifier, false otherwise. + + + + Checks if the subject info getter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should have. + True if the subject info getter has the given access modifier, false otherwise. + + + + Checks if the subject info getter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should not have. + True if the subject info getter does not have the given access modifier, false otherwise. + + + + Defines a function that takes the full path from the root object until the current object + in the equivalency operation separated by dots, and returns the trace message to log. + + + + + Represents an object that is used by the class to receive tracing statements on what is + happening during a structural equivalency comparison. + + + + + Writes a single line to the trace. + + + + + Starts a block that scopes an operation that should be written to the trace after the returned + is disposed. + + + + + Returns a copy of the trace. + + + + + Exposes tracing capabilities that can be used by the implementation of the equivalency algorithm + when an is provided. + + + + + Writes a single line to the currently configured . + + + If no tracer has been configured, the call will be ignored. + + + + + Starts a block that scopes an operation that will be written to the currently configured + after the returned disposable is disposed. + + + If no tracer has been configured for the , the call will be ignored. + + + + + Provides extension methods for monitoring and querying events. + + + + + Asserts that all occurrences of the event originates from the . + + + Returns only the events that comes from that sender. + + + + + Asserts that at least one occurrence of the events has some argument of the expected + type that matches the given predicate. + + + Returns only the events having some argument matching both type and predicate. + + is . + + + + Asserts that at least one occurrence of the events has arguments of the expected + type that pairwise match all the given predicates. + + + Returns only the events having arguments matching both type and all predicates. + + + If a is provided as predicate argument, the corresponding event parameter value is ignored. + + + + + Provides convenient assertion methods on a that can be + used to assert that certain events have been raised. + + + + + Gets the which is being asserted. + + + + + Asserts that an object has raised a particular event at least once. + + + The name of the event that should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised a particular event. + + + The name of the event that should not be raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised, or + to refer to all properties. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Static methods that aid in generic event subscription + + + + + Generates an eventhandler for an event of type eventSignature that calls RegisterEvent on recorder + when invoked. + + + + + Finds the Return Type of a Delegate. + + + + + Returns an Array of Types that make up a delegate's parameter signature. + + + + + Returns an array of types appended with an EventRecorder reference at the beginning. + + + + + Returns T/F Dependent on a Type Being a Delegate. + + + + + Returns the MethodInfo for the Delegate's "Invoke" Method. + + + + + Provides the metadata of a monitored event. + + + + + The name of the event member on the monitored object + + + + + The type of the event handler and event args. + + + + + Tracks the events an object raises. + + + + + Records activity for a single event. + + + + + Initializes a new instance of the class. + + The object events are recorded from + The name of the event that's recorded + A delegate to get the current date and time in UTC format. + Class used to generate a sequence in a thread-safe manner. + + + + The object events are recorded from + + + + + + + + Called by the auto-generated IL, to record information about a raised event. + + + + + Resets recorder to clear records of events raised so far. + + + + + Represents an (active) recording of all events that happen(ed) while monitoring an object. + + + + + The object events are recorded from + + + + + The name of the event that's recorded + + + + + The type of the event handler identified by . + + + + + Monitors events on a given source + + + + + Gets the object that is being monitored or if the object has been GCed. + + + + + Clears all recorded events from the monitor and continues monitoring. + + + + + Provides access to several assertion methods. + + + + + Gets the metadata of all the events that are currently being monitored. + + + + + Gets a collection of all events that have occurred since the monitor was created or + was called. + + + + + Represents an occurrence of a particular event. + + + + + The name of the event as defined on the monitored object. + + + + + The parameters that were passed to the event handler. + + + + + The exact date and time of the occurrence in . + + + + + The order in which this event was raised on the monitored object. + + + + + This class is used to store data about an intercepted event + + + + + Default constructor stores the parameters the event was raised with + + + + + The exact data and time in UTC format at which the event occurred. + + + + + Parameters for the event + + + + + The order in which this event was invoked on the monitored object. + + + + + Generates a sequence in a thread-safe manner. + + + + + Increments the current sequence. + + + + + Asserts that the thrown exception has a message that matches . + + The containing the thrown exception. + + The wildcard pattern with which the exception message is matched, where * and ? have special meanings. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + The containing the thrown exception. + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Represents the default exception in case no test framework is configured. + + + + + Represents an implicit or explicit scope within which multiple assertions can be collected. + + + This class is supposed to have a very short life time and is not safe to be used in assertion that cross thread-boundaries + such as when using or . + + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts an unnamed scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy. + + The assertion strategy for this scope. + is . + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy and parent assertion scope + + The assertion strategy for this scope. + The parent assertion scope for this scope. + is . + + + + Gets or sets the context of the current assertion scope, e.g. the path of the object graph + that is being asserted on. The context is provided by a which + only gets evaluated when its value is actually needed (in most cases during a failure). + + + + + Gets the current thread-specific assertion scope. + + + + + + + + Exposes the options the scope will use for formatting objects in case an assertion fails. + + + + + Adds an explanation of why the assertion is supposed to succeed to the scope. + + + + + + + + + + + + + + + + + Makes assertion fail when does not match . + + The occurrence description in natural language could then be inserted in failure message by using + {expectedOccurrence} placeholder in message parameters of and its + overloaded versions. + + + defining the number of expected occurrences. + The number of actual occurrences. + + + + + + + + + + + + + + + + Gets the identity of the caller associated with the current scope. + + + + + Adds a pre-formatted failure message to the current scope. + + + + + Adds a block of tracing to the scope for reporting when an assertion fails. + + + + + Tracks a keyed object in the current scope that is excluded from the failure message in case an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. The value is only calculated on failure. + + + + + Returns all failures that happened up to this point and ensures they will not cause + to fail the assertion. + + + + + Gets data associated with the current scope and identified by . + + + + + + + + + + + Allows the scope to assume that all assertions that happen within this scope are going to + be initiated by the same caller. + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Represents a collection of data items that are associated with an . + + + + + Enables chaining multiple assertions on an . + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Enables chaining multiple assertions from a call. + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Allows chaining multiple assertion scopes together using . + + + If the parent scope has captured a failed assertion, + this class ensures that successive assertions are no longer evaluated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Helper class for verifying a condition and/or throwing a test harness specific exception representing an assertion failure. + + + + + Gets an object that wraps and executes a conditional or unconditional assertion. + + + + + Represents assertion fail reason. Contains the message and arguments for message's numbered placeholders. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 args are supported in combination with a {reason}. + + + + + + Initializes a new instance of the class. + + + + + + + + Message to be displayed in case of failed assertion. May contain numbered + -style placeholders as well as specialized placeholders. + + + + + Arguments for the numbered -style placeholders of . + + + + + Throws a generic exception in case no other test harness is detected. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Represents a chaining object returned from to continue the assertion using + an object returned by a selector. + + + + + Specify the condition that must be satisfied upon the subject selected through a prior selector. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + The condition will not be evaluated if the prior assertion failed, + nor will throw any exceptions. + + is . + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + is . + + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + + + Allows to safely select the subject for successive assertions. + + + Selector which result is passed to successive calls to . + + + + + Specify the condition that must be satisfied. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + Messages may contain a few specialized placeholders. For instance, {reason} will be replaced with the reason + of the assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + will not be called unless the assertion is not met. + + Function returning object on demand. Called only when the assertion is not met. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + , + but postpones evaluation of the formatting arguments until the assertion really fails. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional lazily evaluated arguments to any numbered placeholders + + + + Specify the reason why you expect the condition to be . + + + A formatted phrase compatible with explaining why the condition should + be satisfied. If the phrase does not start with the word because, it is prepended to the message. + + If the format of or is not compatible with + , then a warning message is returned instead. + + + + Zero or more values to use for filling in any compatible placeholders. + + + + + Clears the expectation set by . + + + + + Sets the expectation part of the failure message when the assertion is not met. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Defines the name of the subject in case this cannot be extracted from the source code. + + + + + Forces the formatters, that support it, to add the necessary line breaks. + + + This is just shorthand for modifying the property. + + + + + Discards and returns the failures that happened up to now. + + + + + Defines a strategy for handling failures in a . + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Custom version of ICloneable that works on all frameworks. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an abstraction of a particular test framework such as MSTest, nUnit, etc. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Encapsulates expanding the various placeholders supported in a failure message. + + + + + Represents the reason for a structural equivalency assertion. + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Implements a wrapper around all supported test frameworks to throw the correct assertion exception. + + + + + Implements the XUnit (version 2) test framework adapter. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ new DateTime(2011, 3, 10)
+
+ you can write 3.March(2011)
+
+ Or even
+
+ 3.March(2011).At(09, 30) +
+ +
+ + + Returns a new value for the specified and + in the month January. + + + + + Returns a new value for the specified and + in the month February. + + + + + Returns a new value for the specified and + in the month March. + + + + + Returns a new value for the specified and + in the month April. + + + + + Returns a new value for the specified and + in the month May. + + + + + Returns a new value for the specified and + in the month June. + + + + + Returns a new value for the specified and + in the month July. + + + + + Returns a new value for the specified and + in the month August. + + + + + Returns a new value for the specified and + in the month September. + + + + + Returns a new value for the specified and + in the month October. + + + + + Returns a new value for the specified and + in the month November. + + + + + Returns a new value for the specified and + in the month December. + + + + + Returns a new value for the specified and . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value that is the current before the + specified . + + + + + Returns a new value that is the current after the + specified . + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns new that uses + as its datetime and as its offset. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ TimeSpan.FromHours(12)
+
+ you can write
+
+ 12.Hours()
+
+ Or even
+
+ 12.Hours().And(30.Minutes()). +
+ +
+ + + Represents the number of ticks that are in 1 microsecond. + + + + + Represents the number of ticks that are in 1 nanosecond. + + + + + Returns a based on a number of ticks. + + + + + Returns a based on a number of ticks. + + + + + Gets the nanoseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Gets the value of the current structure expressed in whole and fractional nanoseconds. + + + + + Gets the microseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of microseconds. + + + + + Returns a based on a number of microseconds. + + + + + Gets the value of the current structure expressed in whole and fractional microseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds, and add the specified + . + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes, and add the specified + . + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours, and add the specified + . + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days, and add the specified + . + + + + + Convenience method for chaining multiple calls to the methods provided by this class. + + + 23.Hours().And(59.Minutes()) + + + + + Provides extensions to write s with fluent syntax + + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + Contains static methods to help with exception assertions on actions. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Specialized value formatter that looks for static methods in the caller's assembly marked with the + . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of spaces to indent the members of this object by. + + The default value is 3. + + + + Determines whether this instance can handle the specified value. + + The value. + + if this instance can handle the specified value; otherwise, . + + + + + Selects which members of to format. + + The of the object being formatted. + The members of that will be included when formatting this object. + The default is all non-private members. + + + + Selects the name to display for . + + The of the object being formatted. + The name to be displayed for . + The default is . + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a method that can be used to format child values from inside an . + + + Represents the path from the current location to the child value. + + + The child value to format with the configured s. + + + + + This class is used by the class to collect all the output of the (nested calls of an) into + a the final representation. + + + The will ensure that the number of lines will be limited + to the maximum number of lines provided through its constructor. It will throw + a if the number of lines exceeds the maximum. + + + + + The number of spaces that should be used by every indentation level. + + + + + Returns the number of lines of text currently in the graph. + + + + + Starts a new line with the provided text fragment. Additional text can be added to + that same line through . + + + + + Starts a new line with the provided line of text that does not allow + adding more fragments of text. + + + + + Adds a new fragment of text to the current line. + + + + + Adds a new line if there are no lines and no fragment that would cause a new line. + + + + + Inserts an empty line as the first line unless it is already. + + + + + Increases the indentation of every line written into this text block until the returned disposable is disposed. + + + The amount of spacing used for each indentation level is determined by . + + + + + Returns the final textual multi-line representation of the object graph. + + + + + Write fragments that may be on a single line or span multiple lines, + and this is not known until later parts of the fragment are written. + + + + + Write the fragment at the position the graph was in when this instance was created. + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + Write the fragment. If more lines have been added since this instance was + created then also flush the line and indent the next line. + + + + + Provides services for formatting an object being used in an assertion in a human readable format. + + + + + Is used to detect recursive calls by implementations. + + + + + A list of objects responsible for formatting the objects represented by placeholders. + + + + + Returns a human-readable representation of a particular object. + + The value for which to create a . + + Indicates whether the formatter should use line breaks when the specific supports it. + + + A that represents this instance. + + + + + Removes a custom formatter that was previously added though . + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Ensures a custom formatter is included in the chain, just before the default formatter is executed. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Tracks the objects that were formatted as well as the path in the object graph of + that object. + + + Is used to detect the maximum recursion depth as well as cyclic references in the graph. + + + + + Provides information about the current formatting action. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + Determines the depth until which the library should try to render an object graph. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + A depth of 1 will only the display the members of the root object. + + + + + Sets the maximum number of lines of the failure message. + + + + Because of technical reasons, the actual output may be one or two lines longer. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a strategy for formatting an arbitrary value into a human-readable string representation. + + + Add custom formatters using . + + + + + Indicates + whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Returns a human-readable representation of . + + The value to format into a human-readable representation + + An object to write the textual representation to. + + + Contains additional information that the implementation should take into account. + + + Allows the formatter to recursively format any child objects. + + + DO NOT CALL directly, but use + instead. This will ensure cyclic dependencies are properly detected. + Also, the may throw + an that must be ignored by implementations of this interface. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The is responsible for formatting + boolean lambda expressions. + + + + + This step simplifies the lambda expression by replacing parts of it which do not depend on the lambda parameters + with the actual values of these sub-expressions. The simplified expression is much easier to read. + E.g. "(_.Text == "two") AndAlso (_.Number == 3)" + Instead of "(_.Text == value(FluentAssertions.Specs.Collections.GenericCollectionAssertionsSpecs+c__DisplayClass122_0).twoText) AndAlso (_.Number == 3)". + + + + + This step simplifies the lambda expression by removing unnecessary parentheses for root level chain of AND operators. + E.g. (_.Text == "two") AndAlso (_.Number == 3) AndAlso (_.OtherText == "foo") + Instead of ((_.Text == "two") AndAlso (_.Number == 3)) AndAlso (_.OtherText == "foo") + This simplification is only implemented for the chain of AND operators because this is the most common predicate scenario. + Similar logic can be implemented in the future for other operators. + + + + + Expression visitor which can detect whether the expression depends on parameters. + + + + + Expression visitor which can replace constant sub-expressions with constant values. + + + + + Expression visitor which can extract sub-expressions from an expression which has the following form: + (SubExpression1) AND (SubExpression2) ... AND (SubExpressionN) + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Provides a human readable version of a generic or non-generic + including its state. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Marks a static method as a kind of for a particular type. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Contains a number of extension methods for floating point . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that an object equals another object using its implementation.
+ Verification whether returns 0 is not done here, you should use + to verify this. +
+ The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object does not equal another object using its method.
+ Verification whether returns non-zero is not done here, you should use + to verify this. +
+ The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that the subject is ranked equal to another object. I.e. the result of returns 0. + To verify whether the objects are equal you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is not ranked equal to another object. I.e. the result of returns non-zero. + To verify whether the objects are not equal according to you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range (inclusive). + + + The maximum valid value of the range (inclusive). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + + The type that the subject is supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + + The type that the subject is not supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + + + + A method to generate additional information upon comparison failures. + + The current numeric value verified to be non-null. + The value to compare the current numeric value with. + + Returns the difference between a number value and the value. + Returns `null` if the compared numbers are small enough that a difference message is irrelevant. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the XML serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value implies the specified value. + + The right hand side of the implication + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the represents a value in the . + + + The expected that the current value must represent. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + Comparison is performed using + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not exactly equal to the value. + Comparison is performed using + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the offset. + + The expected offset of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the offset. + + The offset that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent + way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is not defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum has a specified flag + + The expected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum does not have a specified flag + + The unexpected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the matches the . + + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the is successful (2xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is redirection (3xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is either client (4xx) or server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is client error (4xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified using the provided . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that a value equals using its implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using its method. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a reference type object is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current object has not been initialized yet. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current object has been initialized. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + The expected type of the object. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the . + + + The type that the subject is supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + The type that the subject is not supposed to be. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is not the . + + + The type that the subject is not supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is assignable to a variable of type . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is assignable to a variable of given . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the object is not assignable to a variable of type . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is not assignable to a variable of given . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Returns the type of the subject the assertion applies on. + It should be a user-friendly name as it is included in the failure message. + + + + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the time difference of the current is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is equal to the + specified time. + + The expected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is not equal to the + specified time. + + The unexpected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that a string is exactly the same as another string, including the casing and any leading or trailing whitespace. + + The expected string. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is not expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to be equivalent to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination literal text and wildcard of + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string starts exactly with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string starts with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string contains another (fragment of a) string. + + + The (fragment of a) string that the current string should contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains another (fragment of a) string a set amount of times. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified a set amount of times, + including any leading or trailing whitespace, with the exception of the casing. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + + + Asserts that a string does not contain another (fragment of a) string. + + + The (fragment of a) string that the current string should not contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + + + Asserts that a string does not contain the specified string, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string has the specified length. + + The expected length of the string + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor nor white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or or white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in upper casing. + + + Be careful that numbers and special characters don't have casing, so + will always fail on a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in upper casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in lower casing. + + + Be careful that numbers and special characters don't have casing, so will always fail on + a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in lower casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Dedicated class for comparing two strings and generating consistent error messages. + + + + + Gets or sets a value indicating whether the subject should not match the pattern. + + + + + Gets or sets a value indicating whether the matching process should ignore any casing difference. + + + + + Ignores the difference between environment newline differences + + + + + Provides the logic and the display text for a . + + + + + Contains a number of methods to assert that an yields the expected result. + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an asynchronous method yields the expected result. + + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current will not complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current throws an exception of type . + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of type + within a specific timeout. + + The type of exception expected to be thrown. + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + The type of exception expected to not be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Invokes the subject and measures the sync execution time. + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that a synchronous method yields the expected result. + + + + + Asserts that the current throws an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + + The type of the exception it should throw. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The delegate is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the delegate should have stopped throwing any exception. + + + The time between subsequent invocations of the delegate. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Contains a number of methods to assert that a method yields the expected result. + + + + + Contains a number of methods to assert that an is in the correct state. + + + + + Gets the exception object of the exception thrown. + + + + + Gets the exception object of the exception thrown. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that the thrown exception has a message that matches . + + + The pattern to match against the exception message. This parameter can contain a combination of literal text and + wildcard (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + + This constructor is almost exact copy of the one accepting . + The original constructor shall stay in place in order to keep backward-compatibility + and to avoid unnecessary wrapping action in . + + is . + + + + Provides methods for asserting that the execution time of an satisfies certain conditions. + + + + + Initializes a new instance of the class. + + The execution on which time must be asserted. + + + + Checks the executing action if it satisfies a condition. + If the execution runs into an exception, then this will rethrow it. + + Condition to check on the current elapsed time. + Polling stops when condition returns the expected result. + The rate at which the condition is re-checked. + The elapsed time. (use this, don't measure twice) + + + + Asserts that the execution time of the operation is less than or equal to a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is less than a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than or equal to a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is within the expected duration. + by a specified precision. + + + The expected duration. + + + The maximum amount of time which the execution time may differ from the expected duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a synchronous function yields the expected result. + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Initializes a new instance of the class. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + is . + is . + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Implements base functionality for assertions on TaskCompletionSource. + + + + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that an assembly does not reference the specified assembly. + + The assembly which should not be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an assembly references the specified assembly. + + The assembly which should be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the assembly defines a type called and . + + The namespace of the class. + The name of the class. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + Asserts that the assembly is unsigned. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + Asserts that the assembly is signed with the specified public key. + + The base-16 string representation of the public key, like "e0851575614491c6d25018fadb75". + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the position. + + The expected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an position. + + The unexpected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the length. + + The expected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an length. + + The unexpected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Extension methods for filtering a collection of types. + + + + + Filters to only include types decorated with a particular attribute. + + + + + Filters to only include types decorated with, or inherits from a parent class, a particular attribute. + + + + + Filters to only include types not decorated with a particular attribute. + + + + + Filters to only include types not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Filters to only include types where the namespace of type is exactly . + + + + + Filters to only include types where the namespace of type is starts with . + + + + + Filters to only include types that subclass the specified type, but NOT the same type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Filters to only include types that are classes. + + + + + Filters to only include types that are not classes. + + + + + Filters to only include types that are static. + + + + + Filters to only include types that are not static. + + + + + Filters to only include types that satisfies the passed. + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Extension methods for getting method and property selectors for a type. + + + + + Returns the types that are visible outside the specified . + + + + + Returns a type selector for the current . + + + + + Returns a type selector for the current . + + + + + Returns a method selector for the current . + + is . + + + + Returns a method selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Static class that allows for a 'fluent' selection of the types from an . + + + AllTypes.From(myAssembly)
+ .ThatImplement<ISomeInterface>
+ .Should()
+ .BeDecoratedWith<SomeAttribute>() +
+
+ + + Returns a for selecting the types that are visible outside the + specified . + + The assembly from which to select the types. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + The constructorInfo from which to select properties. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected member is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected member does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected method is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Allows for fluent selection of methods of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select methods. + is . + + + + Initializes a new instance of the class. + + The types from which to select methods. + is or contains . + + + + Only select the methods that are public or internal. + + + + + Only select the methods without a return value + + + + + Only select the methods with a return value + + + + + Only select the methods that return the specified type + + + + + Only select the methods that do not return the specified type + + + + + Only select the methods that are decorated with an attribute of the specified type. + + + + + Only select the methods that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the methods that are not decorated with an attribute of the specified type. + + + + + Only select the methods that are not decorated with and does not inherit from a parent class, an attribute of the specified type. + + + + + Only return methods that are abstract + + + + + Only return methods that are not abstract + + + + + Only return methods that are async. + + + + + Only return methods that are not async. + + + + + Only return methods that are static. + + + + + Only return methods that are not static. + + + + + Only return methods that are virtual. + + + + + Only return methods that are not virtual. + + + + + Select return types of the methods + + + + + The resulting objects. + + + + + Determines whether the specified method has a special name (like properties and events). + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Initializes a new instance of the class. + + The methods to assert. + is . + + + + Gets the object which value is being asserted. + + + + + Asserts that the selected methods are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods have specified . + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods don't have specified + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected property is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property returns a specified type. + + The expected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property does not return a specified type. + + The unexpected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent selection of properties of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select properties. + is . + + + + Initializes a new instance of the class. + + The types from which to select properties. + is or contains . + + + + Only select the properties that have at least one public or internal accessor + + + + + Only select the properties that are abstract + + + + + Only select the properties that are not abstract + + + + + Only select the properties that are static + + + + + Only select the properties that are not static + + + + + Only select the properties that are virtual + + + + + Only select the properties that are not virtual + + + + + Only select the properties that are decorated with an attribute of the specified type. + + + + + Only select the properties that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the properties that are not decorated with an attribute of the specified type. + + + + + Only select the properties that are not decorated with and does not inherit from a parent class an attribute of the specified type. + + + + + Only select the properties that return the specified type + + + + + Only select the properties that do not return the specified type + + + + + Select return types of the properties + + + + + The resulting objects. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Gets the object which value is being asserted. + + + + + Initializes a new instance of the class, for a number of objects. + + The properties to assert. + is . + + + + Asserts that the selected properties are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties do not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a meets certain expectations. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current is equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equal to the specified type. + + The expected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts than an instance of the subject type is assignable variable of type . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is assignable variable of given . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts than an instance of the subject type is not assignable variable of type . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is not assignable variable of given . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Creates an error message in case the specified type differs from the + type. + + + An empty if the two specified types are the same, or an error message that describes that + the two specified types are not the same. + + + + + Asserts that the current type is not equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current type is not equal to the specified type. + + The unexpected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, + the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an + attribute of type that matches the specified + . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements interface . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not implement . + + The interface that should be not implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not implement interface . + + The interface that should not be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not have a property named . + + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The interface whose member is being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current explicitly implements a method named + from interface . + + The interface whose member is being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has an indexer of type . + with parameter types . + + The type of the indexer. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an indexer that takes parameter types + . + + The expected indexer's parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a method named with parameter types + . + + The name of the method. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not expose a method named + with parameter types . + + The name of the method. + The method parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not have a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent filtering a list of types. + + + + + Initializes a new instance of the class. + + is or contains . + + + + The resulting objects. + + + + + Determines whether a type is a subclass of another type, but NOT the same type. + + + + + Determines whether a type is not a subclass of another type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Determines whether a type does not implement an interface (but is not the interface itself). + + + + + Determines whether a type is decorated with a particular attribute. + + + + + Determines whether a type is decorated with, or inherits from a parent class, a particular attribute. + + + + + Determines whether a type is not decorated with a particular attribute. + + + + + Determines whether a type is not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Determines whether the namespace of type is exactly . + + + + + Determines whether the namespace of type is exactly not . + + + + + Determines whether the namespace of type starts with . + + + + + Determines whether the namespace of type does not start with . + + + + + Filters and returns the types that are value types + + + + + Filters and returns the types that are not value types + + + + + Determines whether the type is a class + + + + + Determines whether the type is not a class + + + + + Filters and returns the types that are abstract + + + + + Filters and returns the types that are not abstract + + + + + Filters and returns the types that are sealed + + + + + Filters and returns the types that are not sealed + + + + + Filters and returns only the types that are interfaces + + + + + Filters and returns only the types that are not interfaces + + + + + Determines whether the type is static + + + + + Determines whether the type is not static + + + + + Allows to filter the types with the passed + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains a number of methods to assert that all s in a + meet certain expectations. + + + + + Initializes a new instance of the class. + + is or contains . + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected types are sealed + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the all are not sealed classes + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is in the specified . + + + The namespace that the type must be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not in the specified . + + + The namespace that the type must not be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current starts with the specified . + + + The namespace that the namespace of the type must start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current + does not starts with the specified . + + + The namespace that the namespace of the type must not start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the attribute. + + The expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the attribute, + using its implementation. + + The unexpected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a root element with the specified + name. + + The name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a root element with the specified + name. + + The full name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The full name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the + element, by using + + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the + element, using + . + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the + element, using a semantic equivalency + comparison. + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the element, using a semantic + equivalency comparison. + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an + is in the expected state./> + + + + + Initializes a new instance of the class. + + + + + + Asserts that the current has the specified + inner text. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified , + and . + + The name of the expected attribute + The namespace of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name, ignoring the namespace. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name and namespace. + + The name of the expected child element + The namespace of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the current is equivalent to the node. + + The expected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the node. + + The unexpected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Since net6.0 StringBuilder has additional overloads taking an AppendInterpolatedStringHandler + and optionally an IFormatProvider. + The overload here is polyfill for older target frameworks to avoid littering the code base with #ifs + in order to silence analyzers about dependending on the current culture instead of an invariant culture. + + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + + + Applied to a method that will never return under any circumstance. + + + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + + + Initializes the attribute with the specified parameter value. + + + The condition parameter value. Code after the method will be considered unreachable + by diagnostics if the argument to the associated parameter matches this value. + + + + + Gets the condition parameter value. + + + + + Specifies that an output may be null even if the corresponding type disallows it. + + + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + + + Specifies that the method or property will ensure that the listed field and property + members have not-null values when returning with the specified return value condition. + + + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + + + Gets field or property member names. + + + + + Specifies that an output will not be null even if the corresponding type allows it. + Specifies that an input argument was not null when the call returns. + + + + + Specifies that the output will be non-null if the named parameter is non-null. + + + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + Gets the return value condition. + + + + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + + + + + Specifies the syntax used in a string. + + + + + Initializes the with the identifier of the syntax used. + + The syntax identifier. + + + Initializes the with the identifier of the syntax used. + The syntax identifier. + Optional arguments associated with the specific syntax employed. + + + Gets the identifier of the syntax used. + + + Optional arguments associated with the specific syntax employed. + + + The syntax identifier for strings containing composite formats for string formatting. + + + The syntax identifier for strings containing date format specifiers. + + + The syntax identifier for strings containing date and time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing JavaScript Object Notation (JSON). + + + The syntax identifier for strings containing numeric format specifiers. + + + The syntax identifier for strings containing regular expressions. + + + The syntax identifier for strings containing time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing URIs. + + + The syntax identifier for strings containing XML. + + + + Used to indicate a byref escapes and is not scoped. + + + + There are several cases where the C# compiler treats a as implicitly + - where the compiler does not allow the to escape the method. + + + For example: + + for instance methods. + parameters that refer to types. + parameters. + + + + This attribute is used in those instances where the should be allowed to escape. + + + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + + + + + Represent a type can be used to index a collection either from the start or the end. + + Index is used by the C# compiler to support the new index syntax + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 } ; + int lastElement = someArray[^1]; // lastElement = 5 + + + + + Construct an Index using a value and indicating if the index is from the start or from the end. + The index value. it has to be zero or positive number. + Indicating if the index is from the start or from the end. + + If the Index constructed from the end, index value 1 means pointing at the last element and index value 0 means pointing at beyond last element. + + + + Create an Index pointing at first element. + + + Create an Index pointing at beyond last element. + + + Create an Index from the start at the position indicated by the value. + The index value from the start. + + + Create an Index from the end at the position indicated by the value. + The index value from the end. + + + Returns the index value. + + + Indicates whether the index is from the start or the end. + + + Calculate the offset from the start using the giving collection length. + The length of the collection that the Index will be used with. length has to be a positive value + + For performance reason, we don't validate the input length parameter and the returned offset value against negative values. + we don't validate either the returned offset is greater than the input length. + It is expected Index will be used with collections which always have non negative length/count. If the returned offset is negative and + then used to index a collection will get out of range exception which will be same affect as the validation. + + + + Indicates whether the current Index object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Index object is equal to another Index object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts integer number to an Index. + + + Converts the value of the current Index object to its equivalent string representation. + + + Represent a range has start and end indexes. + + Range is used by the C# compiler to support the range syntax. + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 }; + int[] subArray1 = someArray[0..2]; // { 1, 2 } + int[] subArray2 = someArray[1..^0]; // { 2, 3, 4, 5 } + + + + + Represent the inclusive start index of the Range. + + + Represent the exclusive end index of the Range. + + + Construct a Range object using the start and end indexes. + Represent the inclusive start index of the range. + Represent the exclusive end index of the range. + + + Indicates whether the current Range object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Range object is equal to another Range object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts the value of the current Range object to its equivalent string representation. + + + Create a Range object starting from start index to the end of the collection. + + + Create a Range object starting from first element in the collection to the end Index. + + + Create a Range object starting from first element to the end. + + + Calculate the start offset and length of range object using a collection length. + The length of the collection that the range will be used with. length has to be a positive value. + + For performance reason, we don't validate the input length parameter against negative values. + It is expected Range will be used with collections which always have non negative length/count. + We validate the range is inside the length scope though. + + + + + An attribute that allows parameters to receive the expression of other parameters. + + + + + Initializes a new instance of the class. + + The condition parameter value. + + + + Gets the parameter name the expression is retrieved from. + + + + + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + + + + + Creates a new instance of the type. + + The name of the feature to indicate. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Indicates which arguments to a method involving an interpolated string handler should be passed to that handler. + + + + + Initializes a new instance of the class. + + The name of the argument that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Initializes a new instance of the class. + + The names of the arguments that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Gets the names of the arguments that should be passed to the handler. + + may be used as the name of the receiver in an instance method. + + + + Indicates the attributed type is to be used as an interpolated string handler. + + + + + Reserved to be used by the compiler for tracking metadata. + This class should not be used by developers in source code. + + + + + Used to indicate to the compiler that a method should be called + in its containing module's initializer. + + + When one or more valid methods + with this attribute are found in a compilation, the compiler will + emit a module initializer which calls each of the attributed methods. + + Certain requirements are imposed on any method targeted with this attribute: + - The method must be `static`. + - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc. + - The method must be parameterless. + - The method must return `void`. + - The method must not be generic or be contained in a generic type. + - The method's effective accessibility must be `internal` or `public`. + + The specification for module initializers in the .NET runtime can be found here: + https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer + + + + + Specifies that a type has required members or that a member is required. + + + + + Used to indicate to the compiler that the .locals init flag should not be set in method headers. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + +
+
diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.dll b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.dll new file mode 100644 index 0000000..b5f479e Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.dll differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.pdb b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.pdb new file mode 100644 index 0000000..01210a2 Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.pdb differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.xml b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.xml new file mode 100644 index 0000000..63575ef --- /dev/null +++ b/RestApiTests/packages/FluentAssertions.6.12.0/lib/net6.0/FluentAssertions.xml @@ -0,0 +1,17803 @@ + + + + FluentAssertions + + + + + Initializes a new instance of the class. + + + + + Constraint which can be returned from an assertion which matches a condition and which will allow + further matches to be performed on the matched condition as well as the parent constraint. + + The type of the original constraint that was matched + The type of the matched object which the parent constraint matched + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + Just a convenience property that returns the same value as . + + + + + Contains extension methods for custom assertions in unit tests. + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Provides methods for asserting the execution time of a method or property. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + is . + + + + Provides methods for asserting the execution time of an action. + + An action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Provides methods for asserting the execution time of an async action. + + An async action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection of the provided . + Should be used to assert that a method that uses the keyword throws a particular exception. + + The object that exposes the method or property. + A reference to the method or property to force enumeration of. + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current of . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + is . + + + + Returns a object + that can be used to assert the current . + + + + + + Returns a object that can be used to assert the current . + + + + + + Returns a object that can be used to assert the methods returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + + Returns a object that can be used to assert the properties returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current System.Func{Task{T}}. + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Starts monitoring for its events. + + The object for which to monitor the events. + + An optional delegate that returns the current date and time in UTC format. + Will revert to if no delegate was provided. + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Safely casts the specified object to the type specified through . + + + Has been introduced to allow casting objects without breaking the fluent API. + + The to cast to + + + + + + + + + + + + + + + + + + + + + + You are asserting the itself. Remove the Should() method directly following And. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Holds any global options that control the behavior of FluentAssertions. + + + + + Allows configuring the defaults used during a structural equivalency assertion. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + An action that is used to configure the defaults. + + is . + + + + Represents a mutable plan consisting of steps that are executed while asserting a (collection of) object(s) + is structurally equivalent to another (collection of) object(s). + + + Members on this property are not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Gets the default formatting options used by the formatters in Fluent Assertions. + + + Members on this property should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Please note that this assertion cannot identify whether the previous assertion was successful or not. + In case it was not successful and it is running within an active + there is no current result to compare with. + So, this extension will compare with the default value. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Remove all whitespace until we find a non-whitespace character + + + + + Only keep one whitespace character if more than one follow each other. + + + + + Represents a stateful parsing strategy that is used to help identify the "caller" to use in an assertion message. + + + The strategies will be instantiated at the beginning of a "caller identification" task, and will live until + the statement can be identified (and thus some are stateful). + + + + + Given a symbol, the parsing strategy should add/remove from the statement if needed, and then return + - InProgress if the symbol isn't relevant to the strategies (so other strategies can be tried) + - Handled if an action has been taken (and no other strategies should be used for this symbol) + - Done if the statement is complete, and thus further symbols should be read. + + + + + Returns true if strategy is in the middle of a context (ex: strategy read "/*" and is waiting for "*/" + + + + + Used to notify the strategy that we have reached the end of the line (very useful to detect the end of + a single line comment). + + + + + Tries to extract the name of the variable or invocation on which the assertion is executed. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in descending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is null or does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is a subset of the . + + An with the expected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains the specified item. + + The expectation item. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection contains at least one item that matches the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in any order. Elements are compared + using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection contains at least one element that is assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the given type. + + + Object type that should not be in collection + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item matching the specified . + + The predicate that will be used to find the matching items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection ends with the specified . + + + The element that is expected to appear at the end of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their method. + + A params array with the expected elements. + + + + Asserts that two collections contain the same items in the same order, where equality is determined using a + . + + + The collection to compare the subject with. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches the supplied amount. + + The expected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches a condition stated by the . + + A predicate that yields the number of items that is expected to be in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection is greater than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is greater than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection has the supplied at the + supplied . + + The index where the element is expected + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly precedes the . + + The element that should succeed . + The expected element that should precede . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly succeeds the . + + The element that should precede . + The element that should succeed . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection has the same number of elements as . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection shares one or more items with the specified . + + The with the expected shared items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + /// + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection not is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is not null and contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is not a subset of the . + + An with the unexpected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain the supplied item. + + The element that is not expected to be in the collection + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection does not contain any items that match the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection does not contain the supplied items. Elements are compared + using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and are consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and consecutively. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + The predicate when evaluated should not be null. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the elements that are not expected. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection does not match the supplied amount. + + The unexpected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection does not have the same number of elements as . + + The other collection with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not share any items with the specified . + + The to compare to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection only contains items that match a predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + The predicate to group the items by. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection contains only items which meet + the criteria provided by the inspector. + + + The element inspector, which inspects each element in turn. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + The order of the predicates does not need to match the order of the elements. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection starts with the specified . + + + The element that is expected to appear at the start of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to have all elements in the specified . + Elements are compared using their implementation. + + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current dictionary contains all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The expected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current dictionary not to contain all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The unexpected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the dictionary contains the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the dictionary contains the specified value. Values are compared using + their implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns an enumerable consisting of all items in the first collection also appearing in the second. + + Enumerable.Intersect is not suitable because it drops any repeated elements. + + + + Asserts that the current dictionary does not contain the specified value. + Values are compared using their implementation. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary contains the specified for the supplied + . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified for the + supplied . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Stores an element's value and index in the maximum matching problem. + + The type of the element value. + + + + The index of the element in the maximum matching problem. + + + + + The value of the element in the maximum matching problem. + + + + + The class defines input for the maximum matching problem. + The input is a list of predicates and a list of elements. + The goal of the problem is to find such mapping between predicates and elements that would maximize number of matches. + A predicate can be mapped with only one element. + An element can be mapped with only one predicate. + + The type of elements which must be matched with predicates. + + + + The class defines the solution (output) for the maximum matching problem. + See documentation of for more details. + + The type of elements which must be matched with predicates. + + + + The class encapsulates the algorithm + for solving the maximum matching problem (see ). + See https://en.wikipedia.org/wiki/Maximum_cardinality_matching for more details.
+ A simplified variation of the Ford-Fulkerson algorithm is used for solving the problem. + See https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm for more details. +
+
+ + + Solves the maximum matching problem; + + + + + To find a solution which contains the specified predicate and increases the total number of matches + we:
+ - Search for a free element which matches the specified predicate.
+ - Or take over an element which was previously matched with another predicate and repeat the procedure for the previously matched predicate.
+ - We are basically searching for a path in the graph of matches between predicates and elements which would start at the specified predicate + and end at an unmatched element.
+ - Breadth first search used to traverse the graph.
+
+
+ + + Stores a predicate's expression and index in the maximum matching problem. + + The type of the element values in the maximum matching problems. + + + + The index of the predicate in the maximum matching problem. + + + + + The expression of the predicate. + + + + + Determines whether the predicate matches the specified element. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Asserts that a collection of string is equivalent to another collection of strings. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least one string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that the collection does not contain any string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Initializes a new instance of the class. + + + + + Gets the value of the object referred to by the key. + + + + + Default implementation for for production use. + + + + + Defines the key for the configuration of the test framework to be assumed in FluentAssertions. + + + + + Gets the active configuration, + + + + + Gets or sets the mode on how Fluent Assertions will find custom implementations of + . + + + + + Gets or sets the assembly name to scan for custom value formatters in case + is set to . + + + + + Gets or sets the name of the test framework to use. + + + If no name is provided, Fluent Assertions + will try to detect it by scanning the currently loaded assemblies. If it can't find a suitable provider, + and the run-time platform supports it, it'll try to get it from the . + + + + + Converts an existing to a but normalizes the + so that comparisons of converted instances retain the UTC/local agnostic behavior. + + + + + Searches for the first different element in two sequences using specified + + The type of the elements of the sequence. + The type of the elements of the sequence. + The first sequence to compare. + The second sequence to compare. + Method that is used to compare 2 elements with the same index. + Index at which two sequences have elements that are not equal, or -1 if enumerables are equal + + + + Gets the of an returning a property. + + is . + + + + Gets a dotted path of property names representing the property expression, including the declaring type. + + + E.g. Parent.Child.Sibling.Name. + + is . + + + + Validates that the expression can be used to construct a . + + is . + + + + Workaround to make dotnet_code_quality.null_check_validation_methods work + https://github.com/dotnet/roslyn-analyzers/issues/3451#issuecomment-606690452 + + + + + Represents an abstract timer that is used to make some of this library's timing dependent functionality better testable. + + + + + Will block the current thread until a time delay has passed. + + The time span to wait before completing the returned task + + + + Creates a task that will complete after a time delay. + + The time span to wait before completing the returned task + + A task that represents the time delay. + + + + + Creates a timer to measure the time to complete some arbitrary executions. + + + + + Used to provide access to the underlying for an object that wraps an underlying + collection. + + Collection type. + + + + A smarter enumerator that can provide information about the relative location (current, first, last) + of the current item within the collection without unnecessarily iterating the collection. + + + + + Abstracts a stopwatch so we can control time in unit tests. + + + + + The time elapsed since the timer was created through . + + + + + Encapsulates a dotted candidate to a (nested) member of a type as well as the + declaring type of the deepest member. + + + + + Initializes a new instance of the class. + + is . + + + + Initializes a new instance of the class. + + is . + + + + Gets a value indicating whether the current object represents a child member of the + or that it is the parent of that candidate. + + + + + Determines whether the current path is the same as when ignoring any specific indexes. + + + + + Gets a value indicating whether the current path contains an indexer like `[1]` instead of `[]`. + + + + + Returns a copy of the current object as if it represented an un-indexed item in a collection. + + + + + Returns the name of the member the current path points to without its parent path. + + + + + Compares two segments of a . + Sets the equal with any numeric index qualifier. + All other comparisons are default string equality. + + + + + Compares two segments of a . + + Left part of the comparison. + Right part of the comparison. + True if segments are equal, false if not. + + + + A sum of all possible . It's needed to calculate what options were used when decorating with . + They are a subset of which can be checked on a type and therefore this mask has to be applied to check only for options. + + + + + Initializes a new instance of the class. + + is . + + + + Maintains the framework-specific services. + + + + + Factory for starting a timer on demand. + + + + + Finds the first index at which the does not match the + string anymore, accounting for the specified . + + + + + Gets the quoted three characters at the specified index of a string, including the index itself. + + + + + Replaces all numeric indices from a path like "property[0].nested" and returns "property[].nested" + + + + + Determines whether a string contains a specific index like `[0]` instead of just `[]`. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Joins a string with one or more other strings using a specified separator. + + + Any string that is empty (including the original string) is ignored. + + + + + Changes the first character of a string to uppercase. + + + + + Appends tab character at the beginning of each line in a string. + + + + + + Counts the number of times a substring appears within a string by using the specified . + + The string to search in. + The substring to search for. + The option to use for comparison. + + + + Determines if is close to within a given . + + The time to check + The time to be close to + The precision that may differ from + + checks the right-open interval, whereas this method checks the closed interval. + + + + + Determines whether two objects refer to the same + member. + + + + + Returns the interfaces that the implements that are concrete + versions of the . + + + + + Finds the property by a case-sensitive name. + + + Returns if no such property exists. + + + + + Finds the field by a case-sensitive name. + + + Returns if no such property exists. + + + + + Check if the type is declared as abstract. + + Type to be checked + + + + Check if the type is declared as sealed. + + Type to be checked + + + + Check if the type is declared as static. + + Type to be checked + + + + Check if the type has a human-readable name. + + false for compiler generated type names, otherwise true. + + + + If the type provided is a nullable type, gets the underlying type. Returns the type itself otherwise. + + + + + Helper class to get all the public and internal fields and properties from a type. + + + + + Defines the modes in which custom implementations of + are detected as configured through . + + + + + Detection is disabled. + + + + + Only custom value formatters exposed through the assembly set in + are detected. + + + + + All custom value formatters in any assembly loaded in the current will be detected. + + + + + Marks a method as an extension to Fluent Assertions that either uses the built-in assertions + internally, or directly uses the Execute.Assertion. + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The object that is being extended. + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The object that is being extended. + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection has the same number of elements as . + + The object that is being extended. + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of columns as + . + + The object that is being extended. + The other with the unexpected number of + elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataRow objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of rows as + . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of rows as + . + + The other with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataSet objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Contains an extension method for custom assertions in unit tests related to DataTable objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency. + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + + Testing of any property can be overridden using the callback. Exclude specific properties using + . + + + If or a related function is + used and the exclusion matches the subject , then the equivalency test will never + fail. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of columns. + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. This can be overridden + by using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table (which also excludes the related field data in + objects) using or a related function. + + + + You can use + and related functions to exclude properties on other related System.Data types. + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of tables. + + + + + Asserts that an instance of contains exactly the expected number of tables in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of contains a table with the expected name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has tables with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has tables with all of the supplied expected table names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. This can be overridden by using the overload that takes + . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. This setting applies to all types recursively tested + as part of the . + + + Exclude specific properties using . + Exclude specific tables within the data set using + or a related function. You can also indicate that columns should be excluded within the + objects recursively tested as part of the using + or a related function. The method + can be used to exclude columns across all objects in the that share + the same name. + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of rows and columns. + + + + + Asserts that an instance of contains exactly the expected number of rows in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. This can be overridden by + using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table using + or a related function -- this excludes both the objects in + and associated field data in objects within the . + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides access to configuration for equivalency assertions on System.Data types (, + , , , , + ). + + The System.Data type being tested for equivalency. + + + + Specifies that the subject and the expectation should not be considered non-equivalent if their exact data types do not match. + + + + + Specifies that when comparing , columns that are unmatched between the subject and the expectation should be ignored. + + + + + Specifies the that should be used when comparing . By default, rows are matched by their index in the collection. But, if the has a set, it is possible to use to indicate that rows should be matched by their primary key values, irrespective of their index within the collection. + + The to use when comparing between the subject and the expectation. + + + + Specifies that when comparing objects that are in the state, only the current field values should be compared. Original field values are excluded from comparison. This only affects comparisons where both the subject and the expectation are in the modified state. + + + + + Excludes members of the objects under test from comparison by means of a predicate that selects members based on objects describing them. + + A functor that returns true if the parameter refers to a member that should be excluded. + + + + Excludes a member of the objects under test from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes an entire table from comparison. When comparing objects, if a table is present by the supplied name, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + The value for for which tables within a should be ignored. + + + + Excludes tables from comparison using names in an set. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An of values for for which tables within a should be ignored. + + + + Excludes tables from comparison using an array of table names. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An array of values for for which tables within a should be ignored. + + + + Excludes a column from comparison by . The column to be excluded is matched by the name of its associated and its own . + + A object that specifies which column should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes a column from comparison by the name of its associated and its own . + + The value for for which columns should be ignored. + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Exclude an enumerable set of columns from comparison by . For each item in the enumeration, the column to be excluded is matched by the name of its associated and its own . + + An object that specifies which column(s) should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by . For each element in the array, the column to be excluded is matched by the name of its associated and its own . + + An array of objects that specify which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an enumerable set of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Indicates how objects from different objects should be matched + up for equivalency comparisons. + + + + + Indicates that objects should be matched up by their index within the + collection. This is the default. + + + + + Indicates that objects should be matched up by the values they have for + the table's . For this to work, the rows must be from + objects with exactly equivalent + configuration. + + + + + Contains an extension method for custom assertions in unit tests related to Enum objects. + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Represents a mutable collection of equivalency steps that can be reordered and/or amended with additional + custom equivalency steps. + + + + + Adds a new after any of the built-in steps, with the exception of the final + . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Adds a new right after the specified . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new before any of the built-in steps. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new just before the . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all instances of the specified from the current step. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes each and every built-in . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all custom s. + + + This method should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Gets the value of the subject object graph. + + + + + Gets the value of the expected object graph. + + + + + Gets the run-time type of the current expectation object. + + + + + Returns either the run-time or compile-time type of the expectation based on the options provided by the caller. + + + If the expectation is a nullable type, it should return the type of the wrapped object. + + + + + Collects the members that need to be converted by the . + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Indication of how cyclic references should be handled when validating equality of nested properties. + + + + + Cyclic references will be ignored. + + + + + Cyclic references will result in an exception. + + + + + The object overrides , so use that. + + + + + The object does not seem to override , so compare by members + + + + + Compare using , whether or not the object overrides it. + + + + + Compare the members, regardless of an override exists or not. + + + + + Represents the run-time type-specific behavior of a structural equivalency assertion. + + + + + Excludes the specified (nested) member from the structural equality check. + + + + + Selects a collection to define exclusions at. + Allows to navigate deeper by using . + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Causes the collection identified by to be compared in the order + in which the items appear in the expectation. + + + + + Causes the collection identified by to be compared ignoring the order + in which the items appear in the expectation. + + + + + Creates a new set of options based on the current instance which acts on a a collection of the . + + + + + Maps a (nested) property or field of type to + a (nested) property or field of using lambda expressions. + + A field or property expression indicating the (nested) member to map from. + A field or property expression indicating the (nested) member to map to. + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are ignored. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a (nested) property or field of the expectation to a (nested) property or field of the subject using a path string. + + + A field or property path indicating the (nested) member to map from in the format Parent.Child.Collection[].Member. + + + A field or property path indicating the (nested) member to map to in the format Parent.Child.Collection[].Member. + + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are not allowed + and must be written as "[]". If the types of the members are different, the usual logic applies depending or not + if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using lambda expressions. + + A field or property expression indicating the member to map from. + A field or property expression indicating the member to map to. + + Only direct members of and can be + mapped to each other. Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using member names. + + A field or property name indicating the member to map from. + A field or property name indicating the member to map to. + + Only direct members of and can be + mapped to each other, so no . or [] are allowed. + Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Represents the run-time type-agnostic behavior of a structural equivalency assertion. + + + + + Convenient implementation of that will only invoke + + + + + Implements , but only gets called when the expected type matches . + + + + + Provides information on a particular property during an assertion for structural equality of two object graphs. + + + + + Is responsible for validating the equivalency of a subject with another object. + + + + + Ensures that all the rules remove the collection index from the path before processing it further. + + + + + Keeps track of objects and their location within an object graph so that cyclic references can be detected + and handled upon. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + The behavior of a cyclic reference is determined by the parameter. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an object tracked by the including it's location within an object graph. + + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . + 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + A specialized type of that represents a field of an object in a structural equivalency assertion. + + + + + Allows deferred fetching of the subject ID. + + + + + Provides the required information for executing an equality assertion between a subject and an expectation. + + The type of the subject. + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + Gets the value of the + + + + + Gets the value of the expectation object that was matched with the subject using a . + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Provides the run-time details of the class. + + + + + Gets an ordered collection of selection rules that define what members (e.g. properties or fields) are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation properties. + + + + + Gets a value indicating whether or not the assertion must perform a deep comparison. + + + + + Gets a value indicating whether recursion is allowed to continue indefinitely. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By default, + ordering is irrelevant. + + + + + Contains the rules for what properties to run an auto-conversion. + + + + + Gets value indicating how the enums should be compared. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets a value indicating whether the runtime type of the expectation should be used rather than the declared type. + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets a value indicating whether members on the subject marked with [] + and should be treated as though they don't exist. + + + + + Gets a value indicating whether members on the expectation marked with [] + and should be excluded. + + + + + Gets a value indicating whether records should be compared by value instead of their members + + + + + Gets the currently configured tracer, or if no tracing was configured. + + + + + Determines the right strategy for evaluating the equality of objects of this type. + + + + + Defines a step in the process of comparing two object graphs for structural equivalency. + + + + + Executes an operation such as an equivalency assertion on the provided . + + + Should return if the subject matches the expectation or if no additional assertions + have to be executed. Should return otherwise. + + + May throw when preconditions are not met or if it detects mismatching data. + + + + + Provides information on a particular property or field during an assertion for structural equality of two object graphs. + + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + A formatted phrase and the placeholder values explaining why the assertion is needed. + + + + + Gets an object that can be used by the equivalency algorithm to provide a trace when the + option is used. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + + + Creates a context from the current object intended to assert the equivalency of a nested member. + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a deep clone of the current context. + + + + + Runs a deep recursive equivalency assertion on the provided . + + + + + Exposes information about an object's member + + + + + Gets the type that declares the current member. + + + + + Gets the type that was used to determine this member. + + + + + Gets the value of the member from the provided + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Gets a value indicating whether the member is browsable in the source code editor. This is controlled with + . + + + + + Represents a field or property in an object graph. + + + + + Gets the name of the current member. + + + + + Gets the type of this member. + + + + + Gets the type that declares the current member. + + + + + Gets the full path from the root object until and including the current node separated by dots. + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Represents a rule that defines how to map the selected members of the expectation object to the properties + of the subject. + + + + + Attempts to find a member on the subject that should be compared with the + during a structural equality. + + + Whether or not a match is required or optional is up to the specific rule. If no match is found and this is not an issue, + simply return . + + + The of the subject's member for which a match must be found. Can never + be . + + + The subject object for which a matching member must be returned. Can never be . + + + + + Returns the of the property with which to compare the subject with, or + if no match was found. + + + + + Represents a rule that defines which members of the expectation to include while comparing + two objects for structural equality. + + + + + Gets a value indicating whether this rule should override the default selection rules that include all members. + + + + + Adds or removes properties or fields to/from the collection of members that must be included while + comparing two objects for structural equality. + + + The node within the graph from which to select members. + + + A collection of members that was pre-populated by other selection rules. Can be empty. + Provides auxiliary information such as the configuration and such. + + The collection of members after applying this rule. Can contain less or more than was passed in. + + + + + Represents a node in the object graph that is being compared as part of a structural equivalency check. + This can be the root object, a collection item, a dictionary element, a property or a field. + + + + + The name of the variable on which a structural equivalency assertion is executed or + the default if reflection failed. + + + + + Gets the name of this node. + + + "Property2" + + + + + Gets the type of this node, e.g. the type of the field or property, or the type of the collection item. + + + + + Gets the type of the parent node, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the path from the root object UNTIL the current node, separated by dots or index/key brackets. + + + "Parent[0].Property2" + + + + + Gets the full path from the root object up to and including the name of the node. + + + "Parent[0]" + + + + + Gets a zero-based number representing the depth within the object graph + + + The root object has a depth of 0, the next nested object a depth of 1, etc. + See also this article + + + + + Gets the path including the description of the subject. + + + "property subject.Parent[0].Property2" + + + + + Gets a value indicating whether the current node is the root. + + + + + Gets a value indicating if the root of this graph is a collection. + + + + + Represents an object, dictionary key pair, collection item or member in an object graph. + + + + + Gets the type of the object + + + + + Gets the type of the parent, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the full path from the root object until the current node separated by dots. + + + + + Gets the compile-time type of the current object. If the current object is not the root object and the type is not , + then it returns the same as the property does. + + + + + Gets the run-time type of the current object. + + + + + Defines a rule that is used to determine whether the order of items in collections is relevant or not. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a member name and the target type. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a nested member path in the form of "Parent.NestedCollection[].Member" + + + + + Initializes a new instance of the class. + + is . + is empty. + is . + is empty. + + + + Requires the subject to have a member with the exact same name as the expectation has. + + + + + 2 + + + + Finds a member of the expectation with the exact same name, but doesn't require it. + + + + + 2 + + + + Provides contextual information to an . + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets either the compile-time or run-time type depending on the options provided by the caller. + + + + + Determines which members are included in the equivalency assertion + + + + + Supports recursively comparing two multi-dimensional arrays for equivalency using strict order for the array items + themselves. + + + + + The selected path starting at the first . + + + + + Selects a nested property to exclude. This ends the chain. + + + + + Adds the selected collection to the chain. + + + + + Collection of s. + + + + + Initializes a new collection of ordering rules. + + + + + Initializes a new collection of ordering rules based on an existing collection of ordering rules. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Determines whether the rules in this collection dictate strict ordering during the equivalency assertion on + the collection pointed to by . + + + + + Ordering rule that ensures that byte arrays are always compared in strict ordering since it would cause a + severe performance impact otherwise. + + + + + An ordering rule that basically states that the order of items in all collections is important. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Represents a rule for determining whether or not a certain collection within the object graph should be compared using + strict ordering. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + A specialized type of that represents a property of an object in a structural equivalency assertion. + + + + + Selection rule that adds all public fields of the expectation + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that adds all public properties of the expectation. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that removes a particular property from the structural comparison. + + + + + Selection rule that removes a particular member from the structural comparison based on a predicate. + + + + + 2 + + + + Selection rule that includes a particular property in the structural comparison. + + + + + Selection rule that includes a particular member in the structural comparison. + + + + + 2 + + + + Represents a selection context of a nested property + + + + + Represents the run-time behavior of a structural equivalency assertion. + + + + + Creates an instance of the equivalency assertions options based on defaults previously configured by the caller. + + + + + Gets an ordered collection of selection rules that define what members are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation members. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By + default, + ordering is irrelevant. + + + + + Gets value indicating whether the equality check will include nested collections and complex types. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Causes inclusion of only public properties of the subject as far as they are defined on the declared type. + + + This clears all previously registered selection rules. + + + + + Causes inclusion of only public properties of the subject based on its run-time type rather than its declared type. + + + This clears all previously registered selection rules. + + + + + Instructs the comparison to include public fields. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal fields. + + + + + Instructs the comparison to exclude fields. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to include public properties. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal properties. + + + + + Instructs the comparison to exclude properties. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to exclude non-browsable members in the expectation (members set to + ). It is not required that they be marked non-browsable in the subject. Use + to ignore non-browsable members in the subject. + + + + + Instructs the comparison to treat non-browsable members in the subject as though they do not exist. If you need to + ignore non-browsable members in the expectation, use . + + + + + Instructs the comparison to respect the expectation's runtime type. + + + + + Instructs the comparison to respect the expectation's declared type. + + + + + Excludes a (nested) property based on a predicate from the structural equality check. + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Tries to match the members of the expectation with equally named members on the subject. Ignores those + members that don't exist on the subject and previously registered matching rules. + + + + + Requires the subject to have members which are equally named to members on the expectation. + + + + + Overrides the comparison of subject and expectation to use provided + when the predicate is met. + + + The assertion to execute when the predicate is met. + + + + + Causes the structural equality comparison to recursively traverse the object graph and compare the fields and + properties of any nested objects and objects in collections. + + + This is the default behavior. You can override this using . + + + + + Stops the structural equality check from recursively comparing the members any nested objects. + + + If a property or field points to a complex type or collection, a simple call will + be done instead of recursively looking at the properties or fields of the nested object. + + + + + Causes the structural equality check to ignore any cyclic references. + + + By default, cyclic references within the object graph will cause an exception to be thrown. + + + + + Disables limitations on recursion depth when the structural equality check is configured to include nested objects + + + + + Clears all selection rules, including those that were added by default. + + + + + Clears all matching rules, including those that were added by default. + + + + + Adds a selection rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds a matching rule to the ones already added by default, and which is evaluated before all existing rules. + + + + + Adds an ordering rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds an equivalency step rule to the ones already added by default, and which is evaluated before previous + user-registered steps + + + + + Ensures the equivalency comparison will create and use an instance of + that implements , any time + when a property is of type . + + + + + Ensures the equivalency comparison will use the specified implementation of + any time when a property is of type . + + + + + Causes all collections to be compared in the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared in the order + in which the items appear in the expectation. + + + + + Causes all collections - except bytes - to be compared ignoring the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared ignoring the order + in which the items appear in the expectation. + + + + + Causes to compare Enum properties using the result of their ToString method. + + + By default, enums are compared by value. + + + + + Causes to compare Enum members using their underlying value only. + + + This is the default. + + + + + Ensures records by default are compared by value instead of their members. + + + + + Ensures records by default are compared by their members even though they override + the method. + + + This is the default. + + + + + Marks the as a type that should be compared by its members even though it may override + the method. + + + + + Marks as a type that should be compared by its members even though it may override + the method. + + is . + + + + Marks the as a value type which must be compared using its + method, regardless of it overriding it or not. + + + + + Marks as a value type which must be compared using its + method, regardless of it overriding it or not. + + is . + + + + Enables tracing the steps the equivalency validation followed to compare two graphs. + + + + + Instructs the equivalency comparison to try to convert the values of + matching properties before running any of the other steps. + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Defines additional overrides when used with + + + + + Allows overriding the way structural equality is applied to (nested) objects of type + + + + + + Allows overriding the way structural equality is applied to particular members. + + + A predicate based on the of the subject that is used to identify the property for which + the + override applies. + + + + + Represents a collection of assertion results obtained through a . + + + + + Adds the failures (if any) resulting from executing an assertion within a + identified by a key. + + + + + Returns the closest match compared to the set identified by the provided or + an empty array if one of the results represents a successful assertion. + + + The closest match is the set that contains the least amount of failures, or no failures at all, and preferably + the set that is identified by the . + + + + + Gets a value indicating whether this collection contains a set without any failures at all. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Attempts to convert the subject's property value to the expected type. + + + Whether or not the conversion is attempted depends on the . + + + + + Provides Reflection-backed meta-data information about a type implementing the interface. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface. Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface keyed to . + Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to convert an object into a dictionary typed to the and of the current . + + + if the conversion succeeded or otherwise. + + + + + Executes a single equivalency assertion on two collections, optionally recursive and with or without strict ordering. + + + + + Represents a composite equivalency step that passes the execution to all user-supplied steps that can handle the + current context. + + + + + Ensures that types that are marked as value types are treated as such. + + + + + Checks if the subject info setter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should have. + True if the subject info setter has the given access modifier, false otherwise. + + + + Checks if the subject info setter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should not have. + True if the subject info setter does not have the given access modifier, false otherwise. + + + + Checks if the subject info getter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should have. + True if the subject info getter has the given access modifier, false otherwise. + + + + Checks if the subject info getter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should not have. + True if the subject info getter does not have the given access modifier, false otherwise. + + + + Defines a function that takes the full path from the root object until the current object + in the equivalency operation separated by dots, and returns the trace message to log. + + + + + Represents an object that is used by the class to receive tracing statements on what is + happening during a structural equivalency comparison. + + + + + Writes a single line to the trace. + + + + + Starts a block that scopes an operation that should be written to the trace after the returned + is disposed. + + + + + Returns a copy of the trace. + + + + + Exposes tracing capabilities that can be used by the implementation of the equivalency algorithm + when an is provided. + + + + + Writes a single line to the currently configured . + + + If no tracer has been configured, the call will be ignored. + + + + + Starts a block that scopes an operation that will be written to the currently configured + after the returned disposable is disposed. + + + If no tracer has been configured for the , the call will be ignored. + + + + + Provides extension methods for monitoring and querying events. + + + + + Asserts that all occurrences of the event originates from the . + + + Returns only the events that comes from that sender. + + + + + Asserts that at least one occurrence of the events has some argument of the expected + type that matches the given predicate. + + + Returns only the events having some argument matching both type and predicate. + + is . + + + + Asserts that at least one occurrence of the events has arguments of the expected + type that pairwise match all the given predicates. + + + Returns only the events having arguments matching both type and all predicates. + + + If a is provided as predicate argument, the corresponding event parameter value is ignored. + + + + + Provides convenient assertion methods on a that can be + used to assert that certain events have been raised. + + + + + Gets the which is being asserted. + + + + + Asserts that an object has raised a particular event at least once. + + + The name of the event that should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised a particular event. + + + The name of the event that should not be raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised, or + to refer to all properties. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Static methods that aid in generic event subscription + + + + + Generates an eventhandler for an event of type eventSignature that calls RegisterEvent on recorder + when invoked. + + + + + Finds the Return Type of a Delegate. + + + + + Returns an Array of Types that make up a delegate's parameter signature. + + + + + Returns an array of types appended with an EventRecorder reference at the beginning. + + + + + Returns T/F Dependent on a Type Being a Delegate. + + + + + Returns the MethodInfo for the Delegate's "Invoke" Method. + + + + + Provides the metadata of a monitored event. + + + + + The name of the event member on the monitored object + + + + + The type of the event handler and event args. + + + + + Tracks the events an object raises. + + + + + Records activity for a single event. + + + + + Initializes a new instance of the class. + + The object events are recorded from + The name of the event that's recorded + A delegate to get the current date and time in UTC format. + Class used to generate a sequence in a thread-safe manner. + + + + The object events are recorded from + + + + + + + + Called by the auto-generated IL, to record information about a raised event. + + + + + Resets recorder to clear records of events raised so far. + + + + + Represents an (active) recording of all events that happen(ed) while monitoring an object. + + + + + The object events are recorded from + + + + + The name of the event that's recorded + + + + + The type of the event handler identified by . + + + + + Monitors events on a given source + + + + + Gets the object that is being monitored or if the object has been GCed. + + + + + Clears all recorded events from the monitor and continues monitoring. + + + + + Provides access to several assertion methods. + + + + + Gets the metadata of all the events that are currently being monitored. + + + + + Gets a collection of all events that have occurred since the monitor was created or + was called. + + + + + Represents an occurrence of a particular event. + + + + + The name of the event as defined on the monitored object. + + + + + The parameters that were passed to the event handler. + + + + + The exact date and time of the occurrence in . + + + + + The order in which this event was raised on the monitored object. + + + + + This class is used to store data about an intercepted event + + + + + Default constructor stores the parameters the event was raised with + + + + + The exact data and time in UTC format at which the event occurred. + + + + + Parameters for the event + + + + + The order in which this event was invoked on the monitored object. + + + + + Generates a sequence in a thread-safe manner. + + + + + Increments the current sequence. + + + + + Asserts that the thrown exception has a message that matches . + + The containing the thrown exception. + + The wildcard pattern with which the exception message is matched, where * and ? have special meanings. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + The containing the thrown exception. + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Represents the default exception in case no test framework is configured. + + + + + Represents an implicit or explicit scope within which multiple assertions can be collected. + + + This class is supposed to have a very short life time and is not safe to be used in assertion that cross thread-boundaries + such as when using or . + + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts an unnamed scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy. + + The assertion strategy for this scope. + is . + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy and parent assertion scope + + The assertion strategy for this scope. + The parent assertion scope for this scope. + is . + + + + Gets or sets the context of the current assertion scope, e.g. the path of the object graph + that is being asserted on. The context is provided by a which + only gets evaluated when its value is actually needed (in most cases during a failure). + + + + + Gets the current thread-specific assertion scope. + + + + + + + + Exposes the options the scope will use for formatting objects in case an assertion fails. + + + + + Adds an explanation of why the assertion is supposed to succeed to the scope. + + + + + + + + + + + + + + + + + Makes assertion fail when does not match . + + The occurrence description in natural language could then be inserted in failure message by using + {expectedOccurrence} placeholder in message parameters of and its + overloaded versions. + + + defining the number of expected occurrences. + The number of actual occurrences. + + + + + + + + + + + + + + + + Gets the identity of the caller associated with the current scope. + + + + + Adds a pre-formatted failure message to the current scope. + + + + + Adds a block of tracing to the scope for reporting when an assertion fails. + + + + + Tracks a keyed object in the current scope that is excluded from the failure message in case an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. The value is only calculated on failure. + + + + + Returns all failures that happened up to this point and ensures they will not cause + to fail the assertion. + + + + + Gets data associated with the current scope and identified by . + + + + + + + + + + + Allows the scope to assume that all assertions that happen within this scope are going to + be initiated by the same caller. + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Represents a collection of data items that are associated with an . + + + + + Enables chaining multiple assertions on an . + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Enables chaining multiple assertions from a call. + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Allows chaining multiple assertion scopes together using . + + + If the parent scope has captured a failed assertion, + this class ensures that successive assertions are no longer evaluated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Helper class for verifying a condition and/or throwing a test harness specific exception representing an assertion failure. + + + + + Gets an object that wraps and executes a conditional or unconditional assertion. + + + + + Represents assertion fail reason. Contains the message and arguments for message's numbered placeholders. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 args are supported in combination with a {reason}. + + + + + + Initializes a new instance of the class. + + + + + + + + Message to be displayed in case of failed assertion. May contain numbered + -style placeholders as well as specialized placeholders. + + + + + Arguments for the numbered -style placeholders of . + + + + + Throws a generic exception in case no other test harness is detected. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Represents a chaining object returned from to continue the assertion using + an object returned by a selector. + + + + + Specify the condition that must be satisfied upon the subject selected through a prior selector. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + The condition will not be evaluated if the prior assertion failed, + nor will throw any exceptions. + + is . + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + is . + + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + + + Allows to safely select the subject for successive assertions. + + + Selector which result is passed to successive calls to . + + + + + Specify the condition that must be satisfied. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + Messages may contain a few specialized placeholders. For instance, {reason} will be replaced with the reason + of the assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + will not be called unless the assertion is not met. + + Function returning object on demand. Called only when the assertion is not met. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + , + but postpones evaluation of the formatting arguments until the assertion really fails. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional lazily evaluated arguments to any numbered placeholders + + + + Specify the reason why you expect the condition to be . + + + A formatted phrase compatible with explaining why the condition should + be satisfied. If the phrase does not start with the word because, it is prepended to the message. + + If the format of or is not compatible with + , then a warning message is returned instead. + + + + Zero or more values to use for filling in any compatible placeholders. + + + + + Clears the expectation set by . + + + + + Sets the expectation part of the failure message when the assertion is not met. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Defines the name of the subject in case this cannot be extracted from the source code. + + + + + Forces the formatters, that support it, to add the necessary line breaks. + + + This is just shorthand for modifying the property. + + + + + Discards and returns the failures that happened up to now. + + + + + Defines a strategy for handling failures in a . + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Custom version of ICloneable that works on all frameworks. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an abstraction of a particular test framework such as MSTest, nUnit, etc. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Encapsulates expanding the various placeholders supported in a failure message. + + + + + Represents the reason for a structural equivalency assertion. + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Implements a wrapper around all supported test frameworks to throw the correct assertion exception. + + + + + Implements the XUnit (version 2) test framework adapter. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ new DateTime(2011, 3, 10)
+
+ you can write 3.March(2011)
+
+ Or even
+
+ 3.March(2011).At(09, 30) +
+ +
+ + + Returns a new value for the specified and + in the month January. + + + + + Returns a new value for the specified and + in the month February. + + + + + Returns a new value for the specified and + in the month March. + + + + + Returns a new value for the specified and + in the month April. + + + + + Returns a new value for the specified and + in the month May. + + + + + Returns a new value for the specified and + in the month June. + + + + + Returns a new value for the specified and + in the month July. + + + + + Returns a new value for the specified and + in the month August. + + + + + Returns a new value for the specified and + in the month September. + + + + + Returns a new value for the specified and + in the month October. + + + + + Returns a new value for the specified and + in the month November. + + + + + Returns a new value for the specified and + in the month December. + + + + + Returns a new value for the specified and . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value that is the current before the + specified . + + + + + Returns a new value that is the current after the + specified . + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns new that uses + as its datetime and as its offset. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ TimeSpan.FromHours(12)
+
+ you can write
+
+ 12.Hours()
+
+ Or even
+
+ 12.Hours().And(30.Minutes()). +
+ +
+ + + Represents the number of ticks that are in 1 microsecond. + + + + + Represents the number of ticks that are in 1 nanosecond. + + + + + Returns a based on a number of ticks. + + + + + Returns a based on a number of ticks. + + + + + Gets the nanoseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Gets the value of the current structure expressed in whole and fractional nanoseconds. + + + + + Gets the microseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of microseconds. + + + + + Returns a based on a number of microseconds. + + + + + Gets the value of the current structure expressed in whole and fractional microseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds, and add the specified + . + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes, and add the specified + . + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours, and add the specified + . + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days, and add the specified + . + + + + + Convenience method for chaining multiple calls to the methods provided by this class. + + + 23.Hours().And(59.Minutes()) + + + + + Provides extensions to write s with fluent syntax + + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + Contains static methods to help with exception assertions on actions. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Specialized value formatter that looks for static methods in the caller's assembly marked with the + . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of spaces to indent the members of this object by. + + The default value is 3. + + + + Determines whether this instance can handle the specified value. + + The value. + + if this instance can handle the specified value; otherwise, . + + + + + Selects which members of to format. + + The of the object being formatted. + The members of that will be included when formatting this object. + The default is all non-private members. + + + + Selects the name to display for . + + The of the object being formatted. + The name to be displayed for . + The default is . + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a method that can be used to format child values from inside an . + + + Represents the path from the current location to the child value. + + + The child value to format with the configured s. + + + + + This class is used by the class to collect all the output of the (nested calls of an) into + a the final representation. + + + The will ensure that the number of lines will be limited + to the maximum number of lines provided through its constructor. It will throw + a if the number of lines exceeds the maximum. + + + + + The number of spaces that should be used by every indentation level. + + + + + Returns the number of lines of text currently in the graph. + + + + + Starts a new line with the provided text fragment. Additional text can be added to + that same line through . + + + + + Starts a new line with the provided line of text that does not allow + adding more fragments of text. + + + + + Adds a new fragment of text to the current line. + + + + + Adds a new line if there are no lines and no fragment that would cause a new line. + + + + + Inserts an empty line as the first line unless it is already. + + + + + Increases the indentation of every line written into this text block until the returned disposable is disposed. + + + The amount of spacing used for each indentation level is determined by . + + + + + Returns the final textual multi-line representation of the object graph. + + + + + Write fragments that may be on a single line or span multiple lines, + and this is not known until later parts of the fragment are written. + + + + + Write the fragment at the position the graph was in when this instance was created. + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + Write the fragment. If more lines have been added since this instance was + created then also flush the line and indent the next line. + + + + + Provides services for formatting an object being used in an assertion in a human readable format. + + + + + Is used to detect recursive calls by implementations. + + + + + A list of objects responsible for formatting the objects represented by placeholders. + + + + + Returns a human-readable representation of a particular object. + + The value for which to create a . + + Indicates whether the formatter should use line breaks when the specific supports it. + + + A that represents this instance. + + + + + Removes a custom formatter that was previously added though . + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Ensures a custom formatter is included in the chain, just before the default formatter is executed. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Tracks the objects that were formatted as well as the path in the object graph of + that object. + + + Is used to detect the maximum recursion depth as well as cyclic references in the graph. + + + + + Provides information about the current formatting action. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + Determines the depth until which the library should try to render an object graph. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + A depth of 1 will only the display the members of the root object. + + + + + Sets the maximum number of lines of the failure message. + + + + Because of technical reasons, the actual output may be one or two lines longer. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a strategy for formatting an arbitrary value into a human-readable string representation. + + + Add custom formatters using . + + + + + Indicates + whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Returns a human-readable representation of . + + The value to format into a human-readable representation + + An object to write the textual representation to. + + + Contains additional information that the implementation should take into account. + + + Allows the formatter to recursively format any child objects. + + + DO NOT CALL directly, but use + instead. This will ensure cyclic dependencies are properly detected. + Also, the may throw + an that must be ignored by implementations of this interface. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The is responsible for formatting + boolean lambda expressions. + + + + + This step simplifies the lambda expression by replacing parts of it which do not depend on the lambda parameters + with the actual values of these sub-expressions. The simplified expression is much easier to read. + E.g. "(_.Text == "two") AndAlso (_.Number == 3)" + Instead of "(_.Text == value(FluentAssertions.Specs.Collections.GenericCollectionAssertionsSpecs+c__DisplayClass122_0).twoText) AndAlso (_.Number == 3)". + + + + + This step simplifies the lambda expression by removing unnecessary parentheses for root level chain of AND operators. + E.g. (_.Text == "two") AndAlso (_.Number == 3) AndAlso (_.OtherText == "foo") + Instead of ((_.Text == "two") AndAlso (_.Number == 3)) AndAlso (_.OtherText == "foo") + This simplification is only implemented for the chain of AND operators because this is the most common predicate scenario. + Similar logic can be implemented in the future for other operators. + + + + + Expression visitor which can detect whether the expression depends on parameters. + + + + + Expression visitor which can replace constant sub-expressions with constant values. + + + + + Expression visitor which can extract sub-expressions from an expression which has the following form: + (SubExpression1) AND (SubExpression2) ... AND (SubExpressionN) + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Provides a human readable version of a generic or non-generic + including its state. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Marks a static method as a kind of for a particular type. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Contains a number of extension methods for floating point . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that an object equals another object using its implementation.
+ Verification whether returns 0 is not done here, you should use + to verify this. +
+ The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object does not equal another object using its method.
+ Verification whether returns non-zero is not done here, you should use + to verify this. +
+ The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that the subject is ranked equal to another object. I.e. the result of returns 0. + To verify whether the objects are equal you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is not ranked equal to another object. I.e. the result of returns non-zero. + To verify whether the objects are not equal according to you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range (inclusive). + + + The maximum valid value of the range (inclusive). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + + The type that the subject is supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + + The type that the subject is not supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + + + + A method to generate additional information upon comparison failures. + + The current numeric value verified to be non-null. + The value to compare the current numeric value with. + + Returns the difference between a number value and the value. + Returns `null` if the compared numbers are small enough that a difference message is irrelevant. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the XML serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value implies the specified value. + + The right hand side of the implication + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the represents a value in the . + + + The expected that the current value must represent. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + Comparison is performed using + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not exactly equal to the value. + Comparison is performed using + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the offset. + + The expected offset of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the offset. + + The offset that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent + way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is not defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum has a specified flag + + The expected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum does not have a specified flag + + The unexpected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the matches the . + + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the is successful (2xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is redirection (3xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is either client (4xx) or server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is client error (4xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified using the provided . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that a value equals using its implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using its method. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a reference type object is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current object has not been initialized yet. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current object has been initialized. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + The expected type of the object. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the . + + + The type that the subject is supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + The type that the subject is not supposed to be. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is not the . + + + The type that the subject is not supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is assignable to a variable of type . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is assignable to a variable of given . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the object is not assignable to a variable of type . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is not assignable to a variable of given . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Returns the type of the subject the assertion applies on. + It should be a user-friendly name as it is included in the failure message. + + + + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the time difference of the current is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is equal to the + specified time. + + The expected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is not equal to the + specified time. + + The unexpected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that a string is exactly the same as another string, including the casing and any leading or trailing whitespace. + + The expected string. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is not expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to be equivalent to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination literal text and wildcard of + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string starts exactly with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string starts with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string contains another (fragment of a) string. + + + The (fragment of a) string that the current string should contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains another (fragment of a) string a set amount of times. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified a set amount of times, + including any leading or trailing whitespace, with the exception of the casing. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + + + Asserts that a string does not contain another (fragment of a) string. + + + The (fragment of a) string that the current string should not contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + + + Asserts that a string does not contain the specified string, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string has the specified length. + + The expected length of the string + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor nor white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or or white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in upper casing. + + + Be careful that numbers and special characters don't have casing, so + will always fail on a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in upper casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in lower casing. + + + Be careful that numbers and special characters don't have casing, so will always fail on + a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in lower casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Dedicated class for comparing two strings and generating consistent error messages. + + + + + Gets or sets a value indicating whether the subject should not match the pattern. + + + + + Gets or sets a value indicating whether the matching process should ignore any casing difference. + + + + + Ignores the difference between environment newline differences + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minute of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected second of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the millisecond. + + The expected millisecond of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the millisecond. + + The millisecond that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Provides the logic and the display text for a . + + + + + Contains a number of methods to assert that an yields the expected result. + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an asynchronous method yields the expected result. + + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current will not complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current throws an exception of type . + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of type + within a specific timeout. + + The type of exception expected to be thrown. + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + The type of exception expected to not be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Invokes the subject and measures the sync execution time. + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that a synchronous method yields the expected result. + + + + + Asserts that the current throws an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + + The type of the exception it should throw. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The delegate is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the delegate should have stopped throwing any exception. + + + The time between subsequent invocations of the delegate. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Contains a number of methods to assert that a method yields the expected result. + + + + + Contains a number of methods to assert that an is in the correct state. + + + + + Gets the exception object of the exception thrown. + + + + + Gets the exception object of the exception thrown. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that the thrown exception has a message that matches . + + + The pattern to match against the exception message. This parameter can contain a combination of literal text and + wildcard (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + + This constructor is almost exact copy of the one accepting . + The original constructor shall stay in place in order to keep backward-compatibility + and to avoid unnecessary wrapping action in . + + is . + + + + Provides methods for asserting that the execution time of an satisfies certain conditions. + + + + + Initializes a new instance of the class. + + The execution on which time must be asserted. + + + + Checks the executing action if it satisfies a condition. + If the execution runs into an exception, then this will rethrow it. + + Condition to check on the current elapsed time. + Polling stops when condition returns the expected result. + The rate at which the condition is re-checked. + The elapsed time. (use this, don't measure twice) + + + + Asserts that the execution time of the operation is less than or equal to a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is less than a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than or equal to a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is within the expected duration. + by a specified precision. + + + The expected duration. + + + The maximum amount of time which the execution time may differ from the expected duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a synchronous function yields the expected result. + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Initializes a new instance of the class. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + is . + is . + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Implements base functionality for assertions on TaskCompletionSource. + + + + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that an assembly does not reference the specified assembly. + + The assembly which should not be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an assembly references the specified assembly. + + The assembly which should be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the assembly defines a type called and . + + The namespace of the class. + The name of the class. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + Asserts that the assembly is unsigned. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + Asserts that the assembly is signed with the specified public key. + + The base-16 string representation of the public key, like "e0851575614491c6d25018fadb75". + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + + Asserts that the current has the buffer size. + + The expected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a buffer size of . + + The unexpected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the position. + + The expected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an position. + + The unexpected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the length. + + The expected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an length. + + The unexpected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Extension methods for filtering a collection of types. + + + + + Filters to only include types decorated with a particular attribute. + + + + + Filters to only include types decorated with, or inherits from a parent class, a particular attribute. + + + + + Filters to only include types not decorated with a particular attribute. + + + + + Filters to only include types not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Filters to only include types where the namespace of type is exactly . + + + + + Filters to only include types where the namespace of type is starts with . + + + + + Filters to only include types that subclass the specified type, but NOT the same type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Filters to only include types that are classes. + + + + + Filters to only include types that are not classes. + + + + + Filters to only include types that are static. + + + + + Filters to only include types that are not static. + + + + + Filters to only include types that satisfies the passed. + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Extension methods for getting method and property selectors for a type. + + + + + Returns the types that are visible outside the specified . + + + + + Returns a type selector for the current . + + + + + Returns a type selector for the current . + + + + + Returns a method selector for the current . + + is . + + + + Returns a method selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Static class that allows for a 'fluent' selection of the types from an . + + + AllTypes.From(myAssembly)
+ .ThatImplement<ISomeInterface>
+ .Should()
+ .BeDecoratedWith<SomeAttribute>() +
+
+ + + Returns a for selecting the types that are visible outside the + specified . + + The assembly from which to select the types. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + The constructorInfo from which to select properties. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected member is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected member does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected method is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Allows for fluent selection of methods of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select methods. + is . + + + + Initializes a new instance of the class. + + The types from which to select methods. + is or contains . + + + + Only select the methods that are public or internal. + + + + + Only select the methods without a return value + + + + + Only select the methods with a return value + + + + + Only select the methods that return the specified type + + + + + Only select the methods that do not return the specified type + + + + + Only select the methods that are decorated with an attribute of the specified type. + + + + + Only select the methods that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the methods that are not decorated with an attribute of the specified type. + + + + + Only select the methods that are not decorated with and does not inherit from a parent class, an attribute of the specified type. + + + + + Only return methods that are abstract + + + + + Only return methods that are not abstract + + + + + Only return methods that are async. + + + + + Only return methods that are not async. + + + + + Only return methods that are static. + + + + + Only return methods that are not static. + + + + + Only return methods that are virtual. + + + + + Only return methods that are not virtual. + + + + + Select return types of the methods + + + + + The resulting objects. + + + + + Determines whether the specified method has a special name (like properties and events). + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Initializes a new instance of the class. + + The methods to assert. + is . + + + + Gets the object which value is being asserted. + + + + + Asserts that the selected methods are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods have specified . + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods don't have specified + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected property is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property returns a specified type. + + The expected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property does not return a specified type. + + The unexpected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent selection of properties of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select properties. + is . + + + + Initializes a new instance of the class. + + The types from which to select properties. + is or contains . + + + + Only select the properties that have at least one public or internal accessor + + + + + Only select the properties that are abstract + + + + + Only select the properties that are not abstract + + + + + Only select the properties that are static + + + + + Only select the properties that are not static + + + + + Only select the properties that are virtual + + + + + Only select the properties that are not virtual + + + + + Only select the properties that are decorated with an attribute of the specified type. + + + + + Only select the properties that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the properties that are not decorated with an attribute of the specified type. + + + + + Only select the properties that are not decorated with and does not inherit from a parent class an attribute of the specified type. + + + + + Only select the properties that return the specified type + + + + + Only select the properties that do not return the specified type + + + + + Select return types of the properties + + + + + The resulting objects. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Gets the object which value is being asserted. + + + + + Initializes a new instance of the class, for a number of objects. + + The properties to assert. + is . + + + + Asserts that the selected properties are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties do not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a meets certain expectations. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current is equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equal to the specified type. + + The expected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts than an instance of the subject type is assignable variable of type . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is assignable variable of given . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts than an instance of the subject type is not assignable variable of type . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is not assignable variable of given . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Creates an error message in case the specified type differs from the + type. + + + An empty if the two specified types are the same, or an error message that describes that + the two specified types are not the same. + + + + + Asserts that the current type is not equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current type is not equal to the specified type. + + The unexpected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, + the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an + attribute of type that matches the specified + . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements interface . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not implement . + + The interface that should be not implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not implement interface . + + The interface that should not be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not have a property named . + + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The interface whose member is being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current explicitly implements a method named + from interface . + + The interface whose member is being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has an indexer of type . + with parameter types . + + The type of the indexer. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an indexer that takes parameter types + . + + The expected indexer's parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a method named with parameter types + . + + The name of the method. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not expose a method named + with parameter types . + + The name of the method. + The method parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not have a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent filtering a list of types. + + + + + Initializes a new instance of the class. + + is or contains . + + + + The resulting objects. + + + + + Determines whether a type is a subclass of another type, but NOT the same type. + + + + + Determines whether a type is not a subclass of another type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Determines whether a type does not implement an interface (but is not the interface itself). + + + + + Determines whether a type is decorated with a particular attribute. + + + + + Determines whether a type is decorated with, or inherits from a parent class, a particular attribute. + + + + + Determines whether a type is not decorated with a particular attribute. + + + + + Determines whether a type is not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Determines whether the namespace of type is exactly . + + + + + Determines whether the namespace of type is exactly not . + + + + + Determines whether the namespace of type starts with . + + + + + Determines whether the namespace of type does not start with . + + + + + Filters and returns the types that are value types + + + + + Filters and returns the types that are not value types + + + + + Determines whether the type is a class + + + + + Determines whether the type is not a class + + + + + Filters and returns the types that are abstract + + + + + Filters and returns the types that are not abstract + + + + + Filters and returns the types that are sealed + + + + + Filters and returns the types that are not sealed + + + + + Filters and returns only the types that are interfaces + + + + + Filters and returns only the types that are not interfaces + + + + + Determines whether the type is static + + + + + Determines whether the type is not static + + + + + Allows to filter the types with the passed + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains a number of methods to assert that all s in a + meet certain expectations. + + + + + Initializes a new instance of the class. + + is or contains . + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected types are sealed + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the all are not sealed classes + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is in the specified . + + + The namespace that the type must be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not in the specified . + + + The namespace that the type must not be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current starts with the specified . + + + The namespace that the namespace of the type must start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current + does not starts with the specified . + + + The namespace that the namespace of the type must not start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the attribute. + + The expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the attribute, + using its implementation. + + The unexpected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a root element with the specified + name. + + The name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a root element with the specified + name. + + The full name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The full name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the + element, by using + + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the + element, using + . + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the + element, using a semantic equivalency + comparison. + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the element, using a semantic + equivalency comparison. + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an + is in the expected state./> + + + + + Initializes a new instance of the class. + + + + + + Asserts that the current has the specified + inner text. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified , + and . + + The name of the expected attribute + The namespace of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name, ignoring the namespace. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name and namespace. + + The name of the expected child element + The namespace of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the current is equivalent to the node. + + The expected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the node. + + The unexpected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + + + + + Specifies the syntax used in a string. + + + + + Initializes the with the identifier of the syntax used. + + The syntax identifier. + + + Initializes the with the identifier of the syntax used. + The syntax identifier. + Optional arguments associated with the specific syntax employed. + + + Gets the identifier of the syntax used. + + + Optional arguments associated with the specific syntax employed. + + + The syntax identifier for strings containing composite formats for string formatting. + + + The syntax identifier for strings containing date format specifiers. + + + The syntax identifier for strings containing date and time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing JavaScript Object Notation (JSON). + + + The syntax identifier for strings containing numeric format specifiers. + + + The syntax identifier for strings containing regular expressions. + + + The syntax identifier for strings containing time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing URIs. + + + The syntax identifier for strings containing XML. + + + + Used to indicate a byref escapes and is not scoped. + + + + There are several cases where the C# compiler treats a as implicitly + - where the compiler does not allow the to escape the method. + + + For example: + + for instance methods. + parameters that refer to types. + parameters. + + + + This attribute is used in those instances where the should be allowed to escape. + + + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + + + + + + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + + + + + Creates a new instance of the type. + + The name of the feature to indicate. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Specifies that a type has required members or that a member is required. + + +
+
diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.dll b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.dll new file mode 100644 index 0000000..379b8ae Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.dll differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.pdb b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.pdb new file mode 100644 index 0000000..012bd8f Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.pdb differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.xml b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.xml new file mode 100644 index 0000000..cf5d318 --- /dev/null +++ b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp2.1/FluentAssertions.xml @@ -0,0 +1,17304 @@ + + + + FluentAssertions + + + + + Initializes a new instance of the class. + + + + + Constraint which can be returned from an assertion which matches a condition and which will allow + further matches to be performed on the matched condition as well as the parent constraint. + + The type of the original constraint that was matched + The type of the matched object which the parent constraint matched + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + Just a convenience property that returns the same value as . + + + + + Contains extension methods for custom assertions in unit tests. + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Provides methods for asserting the execution time of a method or property. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + is . + + + + Provides methods for asserting the execution time of an action. + + An action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Provides methods for asserting the execution time of an async action. + + An async action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection of the provided . + Should be used to assert that a method that uses the keyword throws a particular exception. + + The object that exposes the method or property. + A reference to the method or property to force enumeration of. + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current of . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + is . + + + + Returns a object + that can be used to assert the current . + + + + + + Returns a object that can be used to assert the current . + + + + + + Returns a object that can be used to assert the methods returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + + Returns a object that can be used to assert the properties returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current System.Func{Task{T}}. + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Starts monitoring for its events. + + The object for which to monitor the events. + + An optional delegate that returns the current date and time in UTC format. + Will revert to if no delegate was provided. + + is . + + + + Safely casts the specified object to the type specified through . + + + Has been introduced to allow casting objects without breaking the fluent API. + + The to cast to + + + + + + + + + + + + + + + + You are asserting the itself. Remove the Should() method directly following And. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Holds any global options that control the behavior of FluentAssertions. + + + + + Allows configuring the defaults used during a structural equivalency assertion. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + An action that is used to configure the defaults. + + is . + + + + Represents a mutable plan consisting of steps that are executed while asserting a (collection of) object(s) + is structurally equivalent to another (collection of) object(s). + + + Members on this property are not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Gets the default formatting options used by the formatters in Fluent Assertions. + + + Members on this property should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Please note that this assertion cannot identify whether the previous assertion was successful or not. + In case it was not successful and it is running within an active + there is no current result to compare with. + So, this extension will compare with the default value. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Remove all whitespace until we find a non-whitespace character + + + + + Only keep one whitespace character if more than one follow each other. + + + + + Represents a stateful parsing strategy that is used to help identify the "caller" to use in an assertion message. + + + The strategies will be instantiated at the beginning of a "caller identification" task, and will live until + the statement can be identified (and thus some are stateful). + + + + + Given a symbol, the parsing strategy should add/remove from the statement if needed, and then return + - InProgress if the symbol isn't relevant to the strategies (so other strategies can be tried) + - Handled if an action has been taken (and no other strategies should be used for this symbol) + - Done if the statement is complete, and thus further symbols should be read. + + + + + Returns true if strategy is in the middle of a context (ex: strategy read "/*" and is waiting for "*/" + + + + + Used to notify the strategy that we have reached the end of the line (very useful to detect the end of + a single line comment). + + + + + Tries to extract the name of the variable or invocation on which the assertion is executed. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in descending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is null or does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is a subset of the . + + An with the expected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains the specified item. + + The expectation item. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection contains at least one item that matches the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in any order. Elements are compared + using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection contains at least one element that is assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the given type. + + + Object type that should not be in collection + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item matching the specified . + + The predicate that will be used to find the matching items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection ends with the specified . + + + The element that is expected to appear at the end of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their method. + + A params array with the expected elements. + + + + Asserts that two collections contain the same items in the same order, where equality is determined using a + . + + + The collection to compare the subject with. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches the supplied amount. + + The expected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches a condition stated by the . + + A predicate that yields the number of items that is expected to be in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection is greater than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is greater than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection has the supplied at the + supplied . + + The index where the element is expected + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly precedes the . + + The element that should succeed . + The expected element that should precede . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly succeeds the . + + The element that should precede . + The element that should succeed . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection has the same number of elements as . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection shares one or more items with the specified . + + The with the expected shared items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + /// + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection not is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is not null and contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is not a subset of the . + + An with the unexpected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain the supplied item. + + The element that is not expected to be in the collection + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection does not contain any items that match the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection does not contain the supplied items. Elements are compared + using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and are consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and consecutively. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + The predicate when evaluated should not be null. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the elements that are not expected. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection does not match the supplied amount. + + The unexpected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection does not have the same number of elements as . + + The other collection with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not share any items with the specified . + + The to compare to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection only contains items that match a predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + The predicate to group the items by. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection contains only items which meet + the criteria provided by the inspector. + + + The element inspector, which inspects each element in turn. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + The order of the predicates does not need to match the order of the elements. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection starts with the specified . + + + The element that is expected to appear at the start of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to have all elements in the specified . + Elements are compared using their implementation. + + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current dictionary contains all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The expected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current dictionary not to contain all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The unexpected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the dictionary contains the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the dictionary contains the specified value. Values are compared using + their implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns an enumerable consisting of all items in the first collection also appearing in the second. + + Enumerable.Intersect is not suitable because it drops any repeated elements. + + + + Asserts that the current dictionary does not contain the specified value. + Values are compared using their implementation. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary contains the specified for the supplied + . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified for the + supplied . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Stores an element's value and index in the maximum matching problem. + + The type of the element value. + + + + The index of the element in the maximum matching problem. + + + + + The value of the element in the maximum matching problem. + + + + + The class defines input for the maximum matching problem. + The input is a list of predicates and a list of elements. + The goal of the problem is to find such mapping between predicates and elements that would maximize number of matches. + A predicate can be mapped with only one element. + An element can be mapped with only one predicate. + + The type of elements which must be matched with predicates. + + + + The class defines the solution (output) for the maximum matching problem. + See documentation of for more details. + + The type of elements which must be matched with predicates. + + + + The class encapsulates the algorithm + for solving the maximum matching problem (see ). + See https://en.wikipedia.org/wiki/Maximum_cardinality_matching for more details.
+ A simplified variation of the Ford-Fulkerson algorithm is used for solving the problem. + See https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm for more details. +
+
+ + + Solves the maximum matching problem; + + + + + To find a solution which contains the specified predicate and increases the total number of matches + we:
+ - Search for a free element which matches the specified predicate.
+ - Or take over an element which was previously matched with another predicate and repeat the procedure for the previously matched predicate.
+ - We are basically searching for a path in the graph of matches between predicates and elements which would start at the specified predicate + and end at an unmatched element.
+ - Breadth first search used to traverse the graph.
+
+
+ + + Stores a predicate's expression and index in the maximum matching problem. + + The type of the element values in the maximum matching problems. + + + + The index of the predicate in the maximum matching problem. + + + + + The expression of the predicate. + + + + + Determines whether the predicate matches the specified element. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Asserts that a collection of string is equivalent to another collection of strings. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least one string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that the collection does not contain any string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Initializes a new instance of the class. + + + + + Gets the value of the object referred to by the key. + + + + + Default implementation for for production use. + + + + + Defines the key for the configuration of the test framework to be assumed in FluentAssertions. + + + + + Gets the active configuration, + + + + + Gets or sets the mode on how Fluent Assertions will find custom implementations of + . + + + + + Gets or sets the assembly name to scan for custom value formatters in case + is set to . + + + + + Gets or sets the name of the test framework to use. + + + If no name is provided, Fluent Assertions + will try to detect it by scanning the currently loaded assemblies. If it can't find a suitable provider, + and the run-time platform supports it, it'll try to get it from the . + + + + + Converts an existing to a but normalizes the + so that comparisons of converted instances retain the UTC/local agnostic behavior. + + + + + Searches for the first different element in two sequences using specified + + The type of the elements of the sequence. + The type of the elements of the sequence. + The first sequence to compare. + The second sequence to compare. + Method that is used to compare 2 elements with the same index. + Index at which two sequences have elements that are not equal, or -1 if enumerables are equal + + + + Gets the of an returning a property. + + is . + + + + Gets a dotted path of property names representing the property expression, including the declaring type. + + + E.g. Parent.Child.Sibling.Name. + + is . + + + + Validates that the expression can be used to construct a . + + is . + + + + Workaround to make dotnet_code_quality.null_check_validation_methods work + https://github.com/dotnet/roslyn-analyzers/issues/3451#issuecomment-606690452 + + + + + Represents an abstract timer that is used to make some of this library's timing dependent functionality better testable. + + + + + Will block the current thread until a time delay has passed. + + The time span to wait before completing the returned task + + + + Creates a task that will complete after a time delay. + + The time span to wait before completing the returned task + + A task that represents the time delay. + + + + + Creates a timer to measure the time to complete some arbitrary executions. + + + + + Used to provide access to the underlying for an object that wraps an underlying + collection. + + Collection type. + + + + A smarter enumerator that can provide information about the relative location (current, first, last) + of the current item within the collection without unnecessarily iterating the collection. + + + + + Abstracts a stopwatch so we can control time in unit tests. + + + + + The time elapsed since the timer was created through . + + + + + Encapsulates a dotted candidate to a (nested) member of a type as well as the + declaring type of the deepest member. + + + + + Initializes a new instance of the class. + + is . + + + + Initializes a new instance of the class. + + is . + + + + Gets a value indicating whether the current object represents a child member of the + or that it is the parent of that candidate. + + + + + Determines whether the current path is the same as when ignoring any specific indexes. + + + + + Gets a value indicating whether the current path contains an indexer like `[1]` instead of `[]`. + + + + + Returns a copy of the current object as if it represented an un-indexed item in a collection. + + + + + Returns the name of the member the current path points to without its parent path. + + + + + Compares two segments of a . + Sets the equal with any numeric index qualifier. + All other comparisons are default string equality. + + + + + Compares two segments of a . + + Left part of the comparison. + Right part of the comparison. + True if segments are equal, false if not. + + + + A sum of all possible . It's needed to calculate what options were used when decorating with . + They are a subset of which can be checked on a type and therefore this mask has to be applied to check only for options. + + + + + Initializes a new instance of the class. + + is . + + + + Maintains the framework-specific services. + + + + + Factory for starting a timer on demand. + + + + + Finds the first index at which the does not match the + string anymore, accounting for the specified . + + + + + Gets the quoted three characters at the specified index of a string, including the index itself. + + + + + Replaces all numeric indices from a path like "property[0].nested" and returns "property[].nested" + + + + + Determines whether a string contains a specific index like `[0]` instead of just `[]`. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Joins a string with one or more other strings using a specified separator. + + + Any string that is empty (including the original string) is ignored. + + + + + Changes the first character of a string to uppercase. + + + + + Appends tab character at the beginning of each line in a string. + + + + + + Counts the number of times a substring appears within a string by using the specified . + + The string to search in. + The substring to search for. + The option to use for comparison. + + + + Determines whether two objects refer to the same + member. + + + + + Returns the interfaces that the implements that are concrete + versions of the . + + + + + Finds the property by a case-sensitive name. + + + Returns if no such property exists. + + + + + Finds the field by a case-sensitive name. + + + Returns if no such property exists. + + + + + Check if the type is declared as abstract. + + Type to be checked + + + + Check if the type is declared as sealed. + + Type to be checked + + + + Check if the type is declared as static. + + Type to be checked + + + + Check if the type has a human-readable name. + + false for compiler generated type names, otherwise true. + + + + If the type provided is a nullable type, gets the underlying type. Returns the type itself otherwise. + + + + + Helper class to get all the public and internal fields and properties from a type. + + + + + Defines the modes in which custom implementations of + are detected as configured through . + + + + + Detection is disabled. + + + + + Only custom value formatters exposed through the assembly set in + are detected. + + + + + All custom value formatters in any assembly loaded in the current will be detected. + + + + + Marks a method as an extension to Fluent Assertions that either uses the built-in assertions + internally, or directly uses the Execute.Assertion. + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The object that is being extended. + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The object that is being extended. + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection has the same number of elements as . + + The object that is being extended. + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of columns as + . + + The object that is being extended. + The other with the unexpected number of + elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataRow objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of rows as + . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of rows as + . + + The other with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataSet objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Contains an extension method for custom assertions in unit tests related to DataTable objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency. + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + + Testing of any property can be overridden using the callback. Exclude specific properties using + . + + + If or a related function is + used and the exclusion matches the subject , then the equivalency test will never + fail. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of columns. + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. This can be overridden + by using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table (which also excludes the related field data in + objects) using or a related function. + + + + You can use + and related functions to exclude properties on other related System.Data types. + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of tables. + + + + + Asserts that an instance of contains exactly the expected number of tables in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of contains a table with the expected name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has tables with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has tables with all of the supplied expected table names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. This can be overridden by using the overload that takes + . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. This setting applies to all types recursively tested + as part of the . + + + Exclude specific properties using . + Exclude specific tables within the data set using + or a related function. You can also indicate that columns should be excluded within the + objects recursively tested as part of the using + or a related function. The method + can be used to exclude columns across all objects in the that share + the same name. + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of rows and columns. + + + + + Asserts that an instance of contains exactly the expected number of rows in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. This can be overridden by + using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table using + or a related function -- this excludes both the objects in + and associated field data in objects within the . + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides access to configuration for equivalency assertions on System.Data types (, + , , , , + ). + + The System.Data type being tested for equivalency. + + + + Specifies that the subject and the expectation should not be considered non-equivalent if their exact data types do not match. + + + + + Specifies that when comparing , columns that are unmatched between the subject and the expectation should be ignored. + + + + + Specifies the that should be used when comparing . By default, rows are matched by their index in the collection. But, if the has a set, it is possible to use to indicate that rows should be matched by their primary key values, irrespective of their index within the collection. + + The to use when comparing between the subject and the expectation. + + + + Specifies that when comparing objects that are in the state, only the current field values should be compared. Original field values are excluded from comparison. This only affects comparisons where both the subject and the expectation are in the modified state. + + + + + Excludes members of the objects under test from comparison by means of a predicate that selects members based on objects describing them. + + A functor that returns true if the parameter refers to a member that should be excluded. + + + + Excludes a member of the objects under test from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes an entire table from comparison. When comparing objects, if a table is present by the supplied name, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + The value for for which tables within a should be ignored. + + + + Excludes tables from comparison using names in an set. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An of values for for which tables within a should be ignored. + + + + Excludes tables from comparison using an array of table names. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An array of values for for which tables within a should be ignored. + + + + Excludes a column from comparison by . The column to be excluded is matched by the name of its associated and its own . + + A object that specifies which column should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes a column from comparison by the name of its associated and its own . + + The value for for which columns should be ignored. + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Exclude an enumerable set of columns from comparison by . For each item in the enumeration, the column to be excluded is matched by the name of its associated and its own . + + An object that specifies which column(s) should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by . For each element in the array, the column to be excluded is matched by the name of its associated and its own . + + An array of objects that specify which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an enumerable set of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Indicates how objects from different objects should be matched + up for equivalency comparisons. + + + + + Indicates that objects should be matched up by their index within the + collection. This is the default. + + + + + Indicates that objects should be matched up by the values they have for + the table's . For this to work, the rows must be from + objects with exactly equivalent + configuration. + + + + + Contains an extension method for custom assertions in unit tests related to Enum objects. + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Represents a mutable collection of equivalency steps that can be reordered and/or amended with additional + custom equivalency steps. + + + + + Adds a new after any of the built-in steps, with the exception of the final + . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Adds a new right after the specified . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new before any of the built-in steps. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new just before the . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all instances of the specified from the current step. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes each and every built-in . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all custom s. + + + This method should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Gets the value of the subject object graph. + + + + + Gets the value of the expected object graph. + + + + + Gets the run-time type of the current expectation object. + + + + + Returns either the run-time or compile-time type of the expectation based on the options provided by the caller. + + + If the expectation is a nullable type, it should return the type of the wrapped object. + + + + + Collects the members that need to be converted by the . + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Indication of how cyclic references should be handled when validating equality of nested properties. + + + + + Cyclic references will be ignored. + + + + + Cyclic references will result in an exception. + + + + + The object overrides , so use that. + + + + + The object does not seem to override , so compare by members + + + + + Compare using , whether or not the object overrides it. + + + + + Compare the members, regardless of an override exists or not. + + + + + Represents the run-time type-specific behavior of a structural equivalency assertion. + + + + + Excludes the specified (nested) member from the structural equality check. + + + + + Selects a collection to define exclusions at. + Allows to navigate deeper by using . + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Causes the collection identified by to be compared in the order + in which the items appear in the expectation. + + + + + Causes the collection identified by to be compared ignoring the order + in which the items appear in the expectation. + + + + + Creates a new set of options based on the current instance which acts on a a collection of the . + + + + + Maps a (nested) property or field of type to + a (nested) property or field of using lambda expressions. + + A field or property expression indicating the (nested) member to map from. + A field or property expression indicating the (nested) member to map to. + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are ignored. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a (nested) property or field of the expectation to a (nested) property or field of the subject using a path string. + + + A field or property path indicating the (nested) member to map from in the format Parent.Child.Collection[].Member. + + + A field or property path indicating the (nested) member to map to in the format Parent.Child.Collection[].Member. + + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are not allowed + and must be written as "[]". If the types of the members are different, the usual logic applies depending or not + if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using lambda expressions. + + A field or property expression indicating the member to map from. + A field or property expression indicating the member to map to. + + Only direct members of and can be + mapped to each other. Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using member names. + + A field or property name indicating the member to map from. + A field or property name indicating the member to map to. + + Only direct members of and can be + mapped to each other, so no . or [] are allowed. + Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Represents the run-time type-agnostic behavior of a structural equivalency assertion. + + + + + Convenient implementation of that will only invoke + + + + + Implements , but only gets called when the expected type matches . + + + + + Provides information on a particular property during an assertion for structural equality of two object graphs. + + + + + Is responsible for validating the equivalency of a subject with another object. + + + + + Ensures that all the rules remove the collection index from the path before processing it further. + + + + + Keeps track of objects and their location within an object graph so that cyclic references can be detected + and handled upon. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + The behavior of a cyclic reference is determined by the parameter. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an object tracked by the including it's location within an object graph. + + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . + 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + A specialized type of that represents a field of an object in a structural equivalency assertion. + + + + + Allows deferred fetching of the subject ID. + + + + + Provides the required information for executing an equality assertion between a subject and an expectation. + + The type of the subject. + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + Gets the value of the + + + + + Gets the value of the expectation object that was matched with the subject using a . + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Provides the run-time details of the class. + + + + + Gets an ordered collection of selection rules that define what members (e.g. properties or fields) are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation properties. + + + + + Gets a value indicating whether or not the assertion must perform a deep comparison. + + + + + Gets a value indicating whether recursion is allowed to continue indefinitely. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By default, + ordering is irrelevant. + + + + + Contains the rules for what properties to run an auto-conversion. + + + + + Gets value indicating how the enums should be compared. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets a value indicating whether the runtime type of the expectation should be used rather than the declared type. + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets a value indicating whether members on the subject marked with [] + and should be treated as though they don't exist. + + + + + Gets a value indicating whether members on the expectation marked with [] + and should be excluded. + + + + + Gets a value indicating whether records should be compared by value instead of their members + + + + + Gets the currently configured tracer, or if no tracing was configured. + + + + + Determines the right strategy for evaluating the equality of objects of this type. + + + + + Defines a step in the process of comparing two object graphs for structural equivalency. + + + + + Executes an operation such as an equivalency assertion on the provided . + + + Should return if the subject matches the expectation or if no additional assertions + have to be executed. Should return otherwise. + + + May throw when preconditions are not met or if it detects mismatching data. + + + + + Provides information on a particular property or field during an assertion for structural equality of two object graphs. + + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + A formatted phrase and the placeholder values explaining why the assertion is needed. + + + + + Gets an object that can be used by the equivalency algorithm to provide a trace when the + option is used. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + + + Creates a context from the current object intended to assert the equivalency of a nested member. + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a deep clone of the current context. + + + + + Runs a deep recursive equivalency assertion on the provided . + + + + + Exposes information about an object's member + + + + + Gets the type that declares the current member. + + + + + Gets the type that was used to determine this member. + + + + + Gets the value of the member from the provided + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Gets a value indicating whether the member is browsable in the source code editor. This is controlled with + . + + + + + Represents a field or property in an object graph. + + + + + Gets the name of the current member. + + + + + Gets the type of this member. + + + + + Gets the type that declares the current member. + + + + + Gets the full path from the root object until and including the current node separated by dots. + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Represents a rule that defines how to map the selected members of the expectation object to the properties + of the subject. + + + + + Attempts to find a member on the subject that should be compared with the + during a structural equality. + + + Whether or not a match is required or optional is up to the specific rule. If no match is found and this is not an issue, + simply return . + + + The of the subject's member for which a match must be found. Can never + be . + + + The subject object for which a matching member must be returned. Can never be . + + + + + Returns the of the property with which to compare the subject with, or + if no match was found. + + + + + Represents a rule that defines which members of the expectation to include while comparing + two objects for structural equality. + + + + + Gets a value indicating whether this rule should override the default selection rules that include all members. + + + + + Adds or removes properties or fields to/from the collection of members that must be included while + comparing two objects for structural equality. + + + The node within the graph from which to select members. + + + A collection of members that was pre-populated by other selection rules. Can be empty. + Provides auxiliary information such as the configuration and such. + + The collection of members after applying this rule. Can contain less or more than was passed in. + + + + + Represents a node in the object graph that is being compared as part of a structural equivalency check. + This can be the root object, a collection item, a dictionary element, a property or a field. + + + + + The name of the variable on which a structural equivalency assertion is executed or + the default if reflection failed. + + + + + Gets the name of this node. + + + "Property2" + + + + + Gets the type of this node, e.g. the type of the field or property, or the type of the collection item. + + + + + Gets the type of the parent node, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the path from the root object UNTIL the current node, separated by dots or index/key brackets. + + + "Parent[0].Property2" + + + + + Gets the full path from the root object up to and including the name of the node. + + + "Parent[0]" + + + + + Gets a zero-based number representing the depth within the object graph + + + The root object has a depth of 0, the next nested object a depth of 1, etc. + See also this article + + + + + Gets the path including the description of the subject. + + + "property subject.Parent[0].Property2" + + + + + Gets a value indicating whether the current node is the root. + + + + + Gets a value indicating if the root of this graph is a collection. + + + + + Represents an object, dictionary key pair, collection item or member in an object graph. + + + + + Gets the type of the object + + + + + Gets the type of the parent, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the full path from the root object until the current node separated by dots. + + + + + Gets the compile-time type of the current object. If the current object is not the root object and the type is not , + then it returns the same as the property does. + + + + + Gets the run-time type of the current object. + + + + + Defines a rule that is used to determine whether the order of items in collections is relevant or not. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a member name and the target type. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a nested member path in the form of "Parent.NestedCollection[].Member" + + + + + Initializes a new instance of the class. + + is . + is empty. + is . + is empty. + + + + Requires the subject to have a member with the exact same name as the expectation has. + + + + + 2 + + + + Finds a member of the expectation with the exact same name, but doesn't require it. + + + + + 2 + + + + Provides contextual information to an . + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets either the compile-time or run-time type depending on the options provided by the caller. + + + + + Determines which members are included in the equivalency assertion + + + + + Supports recursively comparing two multi-dimensional arrays for equivalency using strict order for the array items + themselves. + + + + + The selected path starting at the first . + + + + + Selects a nested property to exclude. This ends the chain. + + + + + Adds the selected collection to the chain. + + + + + Collection of s. + + + + + Initializes a new collection of ordering rules. + + + + + Initializes a new collection of ordering rules based on an existing collection of ordering rules. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Determines whether the rules in this collection dictate strict ordering during the equivalency assertion on + the collection pointed to by . + + + + + Ordering rule that ensures that byte arrays are always compared in strict ordering since it would cause a + severe performance impact otherwise. + + + + + An ordering rule that basically states that the order of items in all collections is important. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Represents a rule for determining whether or not a certain collection within the object graph should be compared using + strict ordering. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + A specialized type of that represents a property of an object in a structural equivalency assertion. + + + + + Selection rule that adds all public fields of the expectation + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that adds all public properties of the expectation. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that removes a particular property from the structural comparison. + + + + + Selection rule that removes a particular member from the structural comparison based on a predicate. + + + + + 2 + + + + Selection rule that includes a particular property in the structural comparison. + + + + + Selection rule that includes a particular member in the structural comparison. + + + + + 2 + + + + Represents a selection context of a nested property + + + + + Represents the run-time behavior of a structural equivalency assertion. + + + + + Creates an instance of the equivalency assertions options based on defaults previously configured by the caller. + + + + + Gets an ordered collection of selection rules that define what members are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation members. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By + default, + ordering is irrelevant. + + + + + Gets value indicating whether the equality check will include nested collections and complex types. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Causes inclusion of only public properties of the subject as far as they are defined on the declared type. + + + This clears all previously registered selection rules. + + + + + Causes inclusion of only public properties of the subject based on its run-time type rather than its declared type. + + + This clears all previously registered selection rules. + + + + + Instructs the comparison to include public fields. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal fields. + + + + + Instructs the comparison to exclude fields. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to include public properties. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal properties. + + + + + Instructs the comparison to exclude properties. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to exclude non-browsable members in the expectation (members set to + ). It is not required that they be marked non-browsable in the subject. Use + to ignore non-browsable members in the subject. + + + + + Instructs the comparison to treat non-browsable members in the subject as though they do not exist. If you need to + ignore non-browsable members in the expectation, use . + + + + + Instructs the comparison to respect the expectation's runtime type. + + + + + Instructs the comparison to respect the expectation's declared type. + + + + + Excludes a (nested) property based on a predicate from the structural equality check. + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Tries to match the members of the expectation with equally named members on the subject. Ignores those + members that don't exist on the subject and previously registered matching rules. + + + + + Requires the subject to have members which are equally named to members on the expectation. + + + + + Overrides the comparison of subject and expectation to use provided + when the predicate is met. + + + The assertion to execute when the predicate is met. + + + + + Causes the structural equality comparison to recursively traverse the object graph and compare the fields and + properties of any nested objects and objects in collections. + + + This is the default behavior. You can override this using . + + + + + Stops the structural equality check from recursively comparing the members any nested objects. + + + If a property or field points to a complex type or collection, a simple call will + be done instead of recursively looking at the properties or fields of the nested object. + + + + + Causes the structural equality check to ignore any cyclic references. + + + By default, cyclic references within the object graph will cause an exception to be thrown. + + + + + Disables limitations on recursion depth when the structural equality check is configured to include nested objects + + + + + Clears all selection rules, including those that were added by default. + + + + + Clears all matching rules, including those that were added by default. + + + + + Adds a selection rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds a matching rule to the ones already added by default, and which is evaluated before all existing rules. + + + + + Adds an ordering rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds an equivalency step rule to the ones already added by default, and which is evaluated before previous + user-registered steps + + + + + Ensures the equivalency comparison will create and use an instance of + that implements , any time + when a property is of type . + + + + + Ensures the equivalency comparison will use the specified implementation of + any time when a property is of type . + + + + + Causes all collections to be compared in the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared in the order + in which the items appear in the expectation. + + + + + Causes all collections - except bytes - to be compared ignoring the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared ignoring the order + in which the items appear in the expectation. + + + + + Causes to compare Enum properties using the result of their ToString method. + + + By default, enums are compared by value. + + + + + Causes to compare Enum members using their underlying value only. + + + This is the default. + + + + + Ensures records by default are compared by value instead of their members. + + + + + Ensures records by default are compared by their members even though they override + the method. + + + This is the default. + + + + + Marks the as a type that should be compared by its members even though it may override + the method. + + + + + Marks as a type that should be compared by its members even though it may override + the method. + + is . + + + + Marks the as a value type which must be compared using its + method, regardless of it overriding it or not. + + + + + Marks as a value type which must be compared using its + method, regardless of it overriding it or not. + + is . + + + + Enables tracing the steps the equivalency validation followed to compare two graphs. + + + + + Instructs the equivalency comparison to try to convert the values of + matching properties before running any of the other steps. + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Defines additional overrides when used with + + + + + Allows overriding the way structural equality is applied to (nested) objects of type + + + + + + Allows overriding the way structural equality is applied to particular members. + + + A predicate based on the of the subject that is used to identify the property for which + the + override applies. + + + + + Represents a collection of assertion results obtained through a . + + + + + Adds the failures (if any) resulting from executing an assertion within a + identified by a key. + + + + + Returns the closest match compared to the set identified by the provided or + an empty array if one of the results represents a successful assertion. + + + The closest match is the set that contains the least amount of failures, or no failures at all, and preferably + the set that is identified by the . + + + + + Gets a value indicating whether this collection contains a set without any failures at all. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Attempts to convert the subject's property value to the expected type. + + + Whether or not the conversion is attempted depends on the . + + + + + Provides Reflection-backed meta-data information about a type implementing the interface. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface. Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface keyed to . + Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to convert an object into a dictionary typed to the and of the current . + + + if the conversion succeeded or otherwise. + + + + + Executes a single equivalency assertion on two collections, optionally recursive and with or without strict ordering. + + + + + Represents a composite equivalency step that passes the execution to all user-supplied steps that can handle the + current context. + + + + + Ensures that types that are marked as value types are treated as such. + + + + + Checks if the subject info setter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should have. + True if the subject info setter has the given access modifier, false otherwise. + + + + Checks if the subject info setter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should not have. + True if the subject info setter does not have the given access modifier, false otherwise. + + + + Checks if the subject info getter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should have. + True if the subject info getter has the given access modifier, false otherwise. + + + + Checks if the subject info getter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should not have. + True if the subject info getter does not have the given access modifier, false otherwise. + + + + Defines a function that takes the full path from the root object until the current object + in the equivalency operation separated by dots, and returns the trace message to log. + + + + + Represents an object that is used by the class to receive tracing statements on what is + happening during a structural equivalency comparison. + + + + + Writes a single line to the trace. + + + + + Starts a block that scopes an operation that should be written to the trace after the returned + is disposed. + + + + + Returns a copy of the trace. + + + + + Exposes tracing capabilities that can be used by the implementation of the equivalency algorithm + when an is provided. + + + + + Writes a single line to the currently configured . + + + If no tracer has been configured, the call will be ignored. + + + + + Starts a block that scopes an operation that will be written to the currently configured + after the returned disposable is disposed. + + + If no tracer has been configured for the , the call will be ignored. + + + + + Provides extension methods for monitoring and querying events. + + + + + Asserts that all occurrences of the event originates from the . + + + Returns only the events that comes from that sender. + + + + + Asserts that at least one occurrence of the events has some argument of the expected + type that matches the given predicate. + + + Returns only the events having some argument matching both type and predicate. + + is . + + + + Asserts that at least one occurrence of the events has arguments of the expected + type that pairwise match all the given predicates. + + + Returns only the events having arguments matching both type and all predicates. + + + If a is provided as predicate argument, the corresponding event parameter value is ignored. + + + + + Provides convenient assertion methods on a that can be + used to assert that certain events have been raised. + + + + + Gets the which is being asserted. + + + + + Asserts that an object has raised a particular event at least once. + + + The name of the event that should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised a particular event. + + + The name of the event that should not be raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised, or + to refer to all properties. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Static methods that aid in generic event subscription + + + + + Generates an eventhandler for an event of type eventSignature that calls RegisterEvent on recorder + when invoked. + + + + + Finds the Return Type of a Delegate. + + + + + Returns an Array of Types that make up a delegate's parameter signature. + + + + + Returns an array of types appended with an EventRecorder reference at the beginning. + + + + + Returns T/F Dependent on a Type Being a Delegate. + + + + + Returns the MethodInfo for the Delegate's "Invoke" Method. + + + + + Provides the metadata of a monitored event. + + + + + The name of the event member on the monitored object + + + + + The type of the event handler and event args. + + + + + Tracks the events an object raises. + + + + + Records activity for a single event. + + + + + Initializes a new instance of the class. + + The object events are recorded from + The name of the event that's recorded + A delegate to get the current date and time in UTC format. + Class used to generate a sequence in a thread-safe manner. + + + + The object events are recorded from + + + + + + + + Called by the auto-generated IL, to record information about a raised event. + + + + + Resets recorder to clear records of events raised so far. + + + + + Represents an (active) recording of all events that happen(ed) while monitoring an object. + + + + + The object events are recorded from + + + + + The name of the event that's recorded + + + + + The type of the event handler identified by . + + + + + Monitors events on a given source + + + + + Gets the object that is being monitored or if the object has been GCed. + + + + + Clears all recorded events from the monitor and continues monitoring. + + + + + Provides access to several assertion methods. + + + + + Gets the metadata of all the events that are currently being monitored. + + + + + Gets a collection of all events that have occurred since the monitor was created or + was called. + + + + + Represents an occurrence of a particular event. + + + + + The name of the event as defined on the monitored object. + + + + + The parameters that were passed to the event handler. + + + + + The exact date and time of the occurrence in . + + + + + The order in which this event was raised on the monitored object. + + + + + This class is used to store data about an intercepted event + + + + + Default constructor stores the parameters the event was raised with + + + + + The exact data and time in UTC format at which the event occurred. + + + + + Parameters for the event + + + + + The order in which this event was invoked on the monitored object. + + + + + Generates a sequence in a thread-safe manner. + + + + + Increments the current sequence. + + + + + Asserts that the thrown exception has a message that matches . + + The containing the thrown exception. + + The wildcard pattern with which the exception message is matched, where * and ? have special meanings. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + The containing the thrown exception. + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Represents the default exception in case no test framework is configured. + + + + + Represents an implicit or explicit scope within which multiple assertions can be collected. + + + This class is supposed to have a very short life time and is not safe to be used in assertion that cross thread-boundaries + such as when using or . + + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts an unnamed scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy. + + The assertion strategy for this scope. + is . + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy and parent assertion scope + + The assertion strategy for this scope. + The parent assertion scope for this scope. + is . + + + + Gets or sets the context of the current assertion scope, e.g. the path of the object graph + that is being asserted on. The context is provided by a which + only gets evaluated when its value is actually needed (in most cases during a failure). + + + + + Gets the current thread-specific assertion scope. + + + + + + + + Exposes the options the scope will use for formatting objects in case an assertion fails. + + + + + Adds an explanation of why the assertion is supposed to succeed to the scope. + + + + + + + + + + + + + + + + + Makes assertion fail when does not match . + + The occurrence description in natural language could then be inserted in failure message by using + {expectedOccurrence} placeholder in message parameters of and its + overloaded versions. + + + defining the number of expected occurrences. + The number of actual occurrences. + + + + + + + + + + + + + + + + Gets the identity of the caller associated with the current scope. + + + + + Adds a pre-formatted failure message to the current scope. + + + + + Adds a block of tracing to the scope for reporting when an assertion fails. + + + + + Tracks a keyed object in the current scope that is excluded from the failure message in case an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. The value is only calculated on failure. + + + + + Returns all failures that happened up to this point and ensures they will not cause + to fail the assertion. + + + + + Gets data associated with the current scope and identified by . + + + + + + + + + + + Allows the scope to assume that all assertions that happen within this scope are going to + be initiated by the same caller. + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Represents a collection of data items that are associated with an . + + + + + Enables chaining multiple assertions on an . + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Enables chaining multiple assertions from a call. + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Allows chaining multiple assertion scopes together using . + + + If the parent scope has captured a failed assertion, + this class ensures that successive assertions are no longer evaluated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Helper class for verifying a condition and/or throwing a test harness specific exception representing an assertion failure. + + + + + Gets an object that wraps and executes a conditional or unconditional assertion. + + + + + Represents assertion fail reason. Contains the message and arguments for message's numbered placeholders. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 args are supported in combination with a {reason}. + + + + + + Initializes a new instance of the class. + + + + + + + + Message to be displayed in case of failed assertion. May contain numbered + -style placeholders as well as specialized placeholders. + + + + + Arguments for the numbered -style placeholders of . + + + + + Throws a generic exception in case no other test harness is detected. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Represents a chaining object returned from to continue the assertion using + an object returned by a selector. + + + + + Specify the condition that must be satisfied upon the subject selected through a prior selector. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + The condition will not be evaluated if the prior assertion failed, + nor will throw any exceptions. + + is . + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + is . + + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + + + Allows to safely select the subject for successive assertions. + + + Selector which result is passed to successive calls to . + + + + + Specify the condition that must be satisfied. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + Messages may contain a few specialized placeholders. For instance, {reason} will be replaced with the reason + of the assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + will not be called unless the assertion is not met. + + Function returning object on demand. Called only when the assertion is not met. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + , + but postpones evaluation of the formatting arguments until the assertion really fails. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional lazily evaluated arguments to any numbered placeholders + + + + Specify the reason why you expect the condition to be . + + + A formatted phrase compatible with explaining why the condition should + be satisfied. If the phrase does not start with the word because, it is prepended to the message. + + If the format of or is not compatible with + , then a warning message is returned instead. + + + + Zero or more values to use for filling in any compatible placeholders. + + + + + Clears the expectation set by . + + + + + Sets the expectation part of the failure message when the assertion is not met. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Defines the name of the subject in case this cannot be extracted from the source code. + + + + + Forces the formatters, that support it, to add the necessary line breaks. + + + This is just shorthand for modifying the property. + + + + + Discards and returns the failures that happened up to now. + + + + + Defines a strategy for handling failures in a . + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Custom version of ICloneable that works on all frameworks. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an abstraction of a particular test framework such as MSTest, nUnit, etc. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Encapsulates expanding the various placeholders supported in a failure message. + + + + + Represents the reason for a structural equivalency assertion. + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Implements a wrapper around all supported test frameworks to throw the correct assertion exception. + + + + + Implements the XUnit (version 2) test framework adapter. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ new DateTime(2011, 3, 10)
+
+ you can write 3.March(2011)
+
+ Or even
+
+ 3.March(2011).At(09, 30) +
+ +
+ + + Returns a new value for the specified and + in the month January. + + + + + Returns a new value for the specified and + in the month February. + + + + + Returns a new value for the specified and + in the month March. + + + + + Returns a new value for the specified and + in the month April. + + + + + Returns a new value for the specified and + in the month May. + + + + + Returns a new value for the specified and + in the month June. + + + + + Returns a new value for the specified and + in the month July. + + + + + Returns a new value for the specified and + in the month August. + + + + + Returns a new value for the specified and + in the month September. + + + + + Returns a new value for the specified and + in the month October. + + + + + Returns a new value for the specified and + in the month November. + + + + + Returns a new value for the specified and + in the month December. + + + + + Returns a new value for the specified and . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value that is the current before the + specified . + + + + + Returns a new value that is the current after the + specified . + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns new that uses + as its datetime and as its offset. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ TimeSpan.FromHours(12)
+
+ you can write
+
+ 12.Hours()
+
+ Or even
+
+ 12.Hours().And(30.Minutes()). +
+ +
+ + + Represents the number of ticks that are in 1 microsecond. + + + + + Represents the number of ticks that are in 1 nanosecond. + + + + + Returns a based on a number of ticks. + + + + + Returns a based on a number of ticks. + + + + + Gets the nanoseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Gets the value of the current structure expressed in whole and fractional nanoseconds. + + + + + Gets the microseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of microseconds. + + + + + Returns a based on a number of microseconds. + + + + + Gets the value of the current structure expressed in whole and fractional microseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds, and add the specified + . + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes, and add the specified + . + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours, and add the specified + . + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days, and add the specified + . + + + + + Convenience method for chaining multiple calls to the methods provided by this class. + + + 23.Hours().And(59.Minutes()) + + + + + Provides extensions to write s with fluent syntax + + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + Contains static methods to help with exception assertions on actions. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Specialized value formatter that looks for static methods in the caller's assembly marked with the + . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of spaces to indent the members of this object by. + + The default value is 3. + + + + Determines whether this instance can handle the specified value. + + The value. + + if this instance can handle the specified value; otherwise, . + + + + + Selects which members of to format. + + The of the object being formatted. + The members of that will be included when formatting this object. + The default is all non-private members. + + + + Selects the name to display for . + + The of the object being formatted. + The name to be displayed for . + The default is . + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a method that can be used to format child values from inside an . + + + Represents the path from the current location to the child value. + + + The child value to format with the configured s. + + + + + This class is used by the class to collect all the output of the (nested calls of an) into + a the final representation. + + + The will ensure that the number of lines will be limited + to the maximum number of lines provided through its constructor. It will throw + a if the number of lines exceeds the maximum. + + + + + The number of spaces that should be used by every indentation level. + + + + + Returns the number of lines of text currently in the graph. + + + + + Starts a new line with the provided text fragment. Additional text can be added to + that same line through . + + + + + Starts a new line with the provided line of text that does not allow + adding more fragments of text. + + + + + Adds a new fragment of text to the current line. + + + + + Adds a new line if there are no lines and no fragment that would cause a new line. + + + + + Inserts an empty line as the first line unless it is already. + + + + + Increases the indentation of every line written into this text block until the returned disposable is disposed. + + + The amount of spacing used for each indentation level is determined by . + + + + + Returns the final textual multi-line representation of the object graph. + + + + + Write fragments that may be on a single line or span multiple lines, + and this is not known until later parts of the fragment are written. + + + + + Write the fragment at the position the graph was in when this instance was created. + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + Write the fragment. If more lines have been added since this instance was + created then also flush the line and indent the next line. + + + + + Provides services for formatting an object being used in an assertion in a human readable format. + + + + + Is used to detect recursive calls by implementations. + + + + + A list of objects responsible for formatting the objects represented by placeholders. + + + + + Returns a human-readable representation of a particular object. + + The value for which to create a . + + Indicates whether the formatter should use line breaks when the specific supports it. + + + A that represents this instance. + + + + + Removes a custom formatter that was previously added though . + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Ensures a custom formatter is included in the chain, just before the default formatter is executed. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Tracks the objects that were formatted as well as the path in the object graph of + that object. + + + Is used to detect the maximum recursion depth as well as cyclic references in the graph. + + + + + Provides information about the current formatting action. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + Determines the depth until which the library should try to render an object graph. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + A depth of 1 will only the display the members of the root object. + + + + + Sets the maximum number of lines of the failure message. + + + + Because of technical reasons, the actual output may be one or two lines longer. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a strategy for formatting an arbitrary value into a human-readable string representation. + + + Add custom formatters using . + + + + + Indicates + whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Returns a human-readable representation of . + + The value to format into a human-readable representation + + An object to write the textual representation to. + + + Contains additional information that the implementation should take into account. + + + Allows the formatter to recursively format any child objects. + + + DO NOT CALL directly, but use + instead. This will ensure cyclic dependencies are properly detected. + Also, the may throw + an that must be ignored by implementations of this interface. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The is responsible for formatting + boolean lambda expressions. + + + + + This step simplifies the lambda expression by replacing parts of it which do not depend on the lambda parameters + with the actual values of these sub-expressions. The simplified expression is much easier to read. + E.g. "(_.Text == "two") AndAlso (_.Number == 3)" + Instead of "(_.Text == value(FluentAssertions.Specs.Collections.GenericCollectionAssertionsSpecs+c__DisplayClass122_0).twoText) AndAlso (_.Number == 3)". + + + + + This step simplifies the lambda expression by removing unnecessary parentheses for root level chain of AND operators. + E.g. (_.Text == "two") AndAlso (_.Number == 3) AndAlso (_.OtherText == "foo") + Instead of ((_.Text == "two") AndAlso (_.Number == 3)) AndAlso (_.OtherText == "foo") + This simplification is only implemented for the chain of AND operators because this is the most common predicate scenario. + Similar logic can be implemented in the future for other operators. + + + + + Expression visitor which can detect whether the expression depends on parameters. + + + + + Expression visitor which can replace constant sub-expressions with constant values. + + + + + Expression visitor which can extract sub-expressions from an expression which has the following form: + (SubExpression1) AND (SubExpression2) ... AND (SubExpressionN) + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Provides a human readable version of a generic or non-generic + including its state. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Marks a static method as a kind of for a particular type. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Contains a number of extension methods for floating point . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that an object equals another object using its implementation.
+ Verification whether returns 0 is not done here, you should use + to verify this. +
+ The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object does not equal another object using its method.
+ Verification whether returns non-zero is not done here, you should use + to verify this. +
+ The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that the subject is ranked equal to another object. I.e. the result of returns 0. + To verify whether the objects are equal you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is not ranked equal to another object. I.e. the result of returns non-zero. + To verify whether the objects are not equal according to you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range (inclusive). + + + The maximum valid value of the range (inclusive). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + + The type that the subject is supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + + The type that the subject is not supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + + + + A method to generate additional information upon comparison failures. + + The current numeric value verified to be non-null. + The value to compare the current numeric value with. + + Returns the difference between a number value and the value. + Returns `null` if the compared numbers are small enough that a difference message is irrelevant. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the XML serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value implies the specified value. + + The right hand side of the implication + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the represents a value in the . + + + The expected that the current value must represent. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + Comparison is performed using + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not exactly equal to the value. + Comparison is performed using + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the offset. + + The expected offset of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the offset. + + The offset that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent + way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is not defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum has a specified flag + + The expected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum does not have a specified flag + + The unexpected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the matches the . + + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the is successful (2xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is redirection (3xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is either client (4xx) or server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is client error (4xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified using the provided . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that a value equals using its implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using its method. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a reference type object is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current object has not been initialized yet. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current object has been initialized. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + The expected type of the object. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the . + + + The type that the subject is supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + The type that the subject is not supposed to be. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is not the . + + + The type that the subject is not supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is assignable to a variable of type . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is assignable to a variable of given . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the object is not assignable to a variable of type . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is not assignable to a variable of given . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Returns the type of the subject the assertion applies on. + It should be a user-friendly name as it is included in the failure message. + + + + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the time difference of the current is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is equal to the + specified time. + + The expected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is not equal to the + specified time. + + The unexpected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that a string is exactly the same as another string, including the casing and any leading or trailing whitespace. + + The expected string. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is not expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to be equivalent to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination literal text and wildcard of + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string starts exactly with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string starts with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string contains another (fragment of a) string. + + + The (fragment of a) string that the current string should contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains another (fragment of a) string a set amount of times. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified a set amount of times, + including any leading or trailing whitespace, with the exception of the casing. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + + + Asserts that a string does not contain another (fragment of a) string. + + + The (fragment of a) string that the current string should not contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + + + Asserts that a string does not contain the specified string, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string has the specified length. + + The expected length of the string + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor nor white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or or white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in upper casing. + + + Be careful that numbers and special characters don't have casing, so + will always fail on a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in upper casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in lower casing. + + + Be careful that numbers and special characters don't have casing, so will always fail on + a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in lower casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Dedicated class for comparing two strings and generating consistent error messages. + + + + + Gets or sets a value indicating whether the subject should not match the pattern. + + + + + Gets or sets a value indicating whether the matching process should ignore any casing difference. + + + + + Ignores the difference between environment newline differences + + + + + Provides the logic and the display text for a . + + + + + Contains a number of methods to assert that an yields the expected result. + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an asynchronous method yields the expected result. + + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current will not complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current throws an exception of type . + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of type + within a specific timeout. + + The type of exception expected to be thrown. + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + The type of exception expected to not be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Invokes the subject and measures the sync execution time. + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that a synchronous method yields the expected result. + + + + + Asserts that the current throws an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + + The type of the exception it should throw. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The delegate is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the delegate should have stopped throwing any exception. + + + The time between subsequent invocations of the delegate. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Contains a number of methods to assert that a method yields the expected result. + + + + + Contains a number of methods to assert that an is in the correct state. + + + + + Gets the exception object of the exception thrown. + + + + + Gets the exception object of the exception thrown. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that the thrown exception has a message that matches . + + + The pattern to match against the exception message. This parameter can contain a combination of literal text and + wildcard (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + + This constructor is almost exact copy of the one accepting . + The original constructor shall stay in place in order to keep backward-compatibility + and to avoid unnecessary wrapping action in . + + is . + + + + Provides methods for asserting that the execution time of an satisfies certain conditions. + + + + + Initializes a new instance of the class. + + The execution on which time must be asserted. + + + + Checks the executing action if it satisfies a condition. + If the execution runs into an exception, then this will rethrow it. + + Condition to check on the current elapsed time. + Polling stops when condition returns the expected result. + The rate at which the condition is re-checked. + The elapsed time. (use this, don't measure twice) + + + + Asserts that the execution time of the operation is less than or equal to a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is less than a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than or equal to a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is within the expected duration. + by a specified precision. + + + The expected duration. + + + The maximum amount of time which the execution time may differ from the expected duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a synchronous function yields the expected result. + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Initializes a new instance of the class. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + is . + is . + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Implements base functionality for assertions on TaskCompletionSource. + + + + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that an assembly does not reference the specified assembly. + + The assembly which should not be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an assembly references the specified assembly. + + The assembly which should be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the assembly defines a type called and . + + The namespace of the class. + The name of the class. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + Asserts that the assembly is unsigned. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + Asserts that the assembly is signed with the specified public key. + + The base-16 string representation of the public key, like "e0851575614491c6d25018fadb75". + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + + Asserts that the current has the buffer size. + + The expected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a buffer size of . + + The unexpected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the position. + + The expected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an position. + + The unexpected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the length. + + The expected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an length. + + The unexpected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Extension methods for filtering a collection of types. + + + + + Filters to only include types decorated with a particular attribute. + + + + + Filters to only include types decorated with, or inherits from a parent class, a particular attribute. + + + + + Filters to only include types not decorated with a particular attribute. + + + + + Filters to only include types not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Filters to only include types where the namespace of type is exactly . + + + + + Filters to only include types where the namespace of type is starts with . + + + + + Filters to only include types that subclass the specified type, but NOT the same type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Filters to only include types that are classes. + + + + + Filters to only include types that are not classes. + + + + + Filters to only include types that are static. + + + + + Filters to only include types that are not static. + + + + + Filters to only include types that satisfies the passed. + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Extension methods for getting method and property selectors for a type. + + + + + Returns the types that are visible outside the specified . + + + + + Returns a type selector for the current . + + + + + Returns a type selector for the current . + + + + + Returns a method selector for the current . + + is . + + + + Returns a method selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Static class that allows for a 'fluent' selection of the types from an . + + + AllTypes.From(myAssembly)
+ .ThatImplement<ISomeInterface>
+ .Should()
+ .BeDecoratedWith<SomeAttribute>() +
+
+ + + Returns a for selecting the types that are visible outside the + specified . + + The assembly from which to select the types. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + The constructorInfo from which to select properties. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected member is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected member does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected method is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Allows for fluent selection of methods of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select methods. + is . + + + + Initializes a new instance of the class. + + The types from which to select methods. + is or contains . + + + + Only select the methods that are public or internal. + + + + + Only select the methods without a return value + + + + + Only select the methods with a return value + + + + + Only select the methods that return the specified type + + + + + Only select the methods that do not return the specified type + + + + + Only select the methods that are decorated with an attribute of the specified type. + + + + + Only select the methods that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the methods that are not decorated with an attribute of the specified type. + + + + + Only select the methods that are not decorated with and does not inherit from a parent class, an attribute of the specified type. + + + + + Only return methods that are abstract + + + + + Only return methods that are not abstract + + + + + Only return methods that are async. + + + + + Only return methods that are not async. + + + + + Only return methods that are static. + + + + + Only return methods that are not static. + + + + + Only return methods that are virtual. + + + + + Only return methods that are not virtual. + + + + + Select return types of the methods + + + + + The resulting objects. + + + + + Determines whether the specified method has a special name (like properties and events). + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Initializes a new instance of the class. + + The methods to assert. + is . + + + + Gets the object which value is being asserted. + + + + + Asserts that the selected methods are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods have specified . + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods don't have specified + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected property is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property returns a specified type. + + The expected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property does not return a specified type. + + The unexpected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent selection of properties of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select properties. + is . + + + + Initializes a new instance of the class. + + The types from which to select properties. + is or contains . + + + + Only select the properties that have at least one public or internal accessor + + + + + Only select the properties that are abstract + + + + + Only select the properties that are not abstract + + + + + Only select the properties that are static + + + + + Only select the properties that are not static + + + + + Only select the properties that are virtual + + + + + Only select the properties that are not virtual + + + + + Only select the properties that are decorated with an attribute of the specified type. + + + + + Only select the properties that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the properties that are not decorated with an attribute of the specified type. + + + + + Only select the properties that are not decorated with and does not inherit from a parent class an attribute of the specified type. + + + + + Only select the properties that return the specified type + + + + + Only select the properties that do not return the specified type + + + + + Select return types of the properties + + + + + The resulting objects. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Gets the object which value is being asserted. + + + + + Initializes a new instance of the class, for a number of objects. + + The properties to assert. + is . + + + + Asserts that the selected properties are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties do not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a meets certain expectations. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current is equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equal to the specified type. + + The expected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts than an instance of the subject type is assignable variable of type . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is assignable variable of given . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts than an instance of the subject type is not assignable variable of type . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is not assignable variable of given . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Creates an error message in case the specified type differs from the + type. + + + An empty if the two specified types are the same, or an error message that describes that + the two specified types are not the same. + + + + + Asserts that the current type is not equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current type is not equal to the specified type. + + The unexpected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, + the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an + attribute of type that matches the specified + . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements interface . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not implement . + + The interface that should be not implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not implement interface . + + The interface that should not be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not have a property named . + + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The interface whose member is being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current explicitly implements a method named + from interface . + + The interface whose member is being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has an indexer of type . + with parameter types . + + The type of the indexer. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an indexer that takes parameter types + . + + The expected indexer's parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a method named with parameter types + . + + The name of the method. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not expose a method named + with parameter types . + + The name of the method. + The method parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not have a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent filtering a list of types. + + + + + Initializes a new instance of the class. + + is or contains . + + + + The resulting objects. + + + + + Determines whether a type is a subclass of another type, but NOT the same type. + + + + + Determines whether a type is not a subclass of another type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Determines whether a type does not implement an interface (but is not the interface itself). + + + + + Determines whether a type is decorated with a particular attribute. + + + + + Determines whether a type is decorated with, or inherits from a parent class, a particular attribute. + + + + + Determines whether a type is not decorated with a particular attribute. + + + + + Determines whether a type is not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Determines whether the namespace of type is exactly . + + + + + Determines whether the namespace of type is exactly not . + + + + + Determines whether the namespace of type starts with . + + + + + Determines whether the namespace of type does not start with . + + + + + Filters and returns the types that are value types + + + + + Filters and returns the types that are not value types + + + + + Determines whether the type is a class + + + + + Determines whether the type is not a class + + + + + Filters and returns the types that are abstract + + + + + Filters and returns the types that are not abstract + + + + + Filters and returns the types that are sealed + + + + + Filters and returns the types that are not sealed + + + + + Filters and returns only the types that are interfaces + + + + + Filters and returns only the types that are not interfaces + + + + + Determines whether the type is static + + + + + Determines whether the type is not static + + + + + Allows to filter the types with the passed + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains a number of methods to assert that all s in a + meet certain expectations. + + + + + Initializes a new instance of the class. + + is or contains . + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected types are sealed + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the all are not sealed classes + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is in the specified . + + + The namespace that the type must be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not in the specified . + + + The namespace that the type must not be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current starts with the specified . + + + The namespace that the namespace of the type must start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current + does not starts with the specified . + + + The namespace that the namespace of the type must not start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the attribute. + + The expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the attribute, + using its implementation. + + The unexpected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a root element with the specified + name. + + The name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a root element with the specified + name. + + The full name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The full name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the + element, by using + + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the + element, using + . + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the + element, using a semantic equivalency + comparison. + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the element, using a semantic + equivalency comparison. + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an + is in the expected state./> + + + + + Initializes a new instance of the class. + + + + + + Asserts that the current has the specified + inner text. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified , + and . + + The name of the expected attribute + The namespace of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name, ignoring the namespace. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name and namespace. + + The name of the expected child element + The namespace of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the current is equivalent to the node. + + The expected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the node. + + The unexpected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Since net6.0 StringBuilder has additional overloads taking an AppendInterpolatedStringHandler + and optionally an IFormatProvider. + The overload here is polyfill for older target frameworks to avoid littering the code base with #ifs + in order to silence analyzers about dependending on the current culture instead of an invariant culture. + + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + + + Applied to a method that will never return under any circumstance. + + + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + + + Initializes the attribute with the specified parameter value. + + + The condition parameter value. Code after the method will be considered unreachable + by diagnostics if the argument to the associated parameter matches this value. + + + + + Gets the condition parameter value. + + + + + Specifies that an output may be null even if the corresponding type disallows it. + + + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + + + Specifies that the method or property will ensure that the listed field and property + members have not-null values when returning with the specified return value condition. + + + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + + + Gets field or property member names. + + + + + Specifies that an output will not be null even if the corresponding type allows it. + Specifies that an input argument was not null when the call returns. + + + + + Specifies that the output will be non-null if the named parameter is non-null. + + + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + Gets the return value condition. + + + + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + + + + + Specifies the syntax used in a string. + + + + + Initializes the with the identifier of the syntax used. + + The syntax identifier. + + + Initializes the with the identifier of the syntax used. + The syntax identifier. + Optional arguments associated with the specific syntax employed. + + + Gets the identifier of the syntax used. + + + Optional arguments associated with the specific syntax employed. + + + The syntax identifier for strings containing composite formats for string formatting. + + + The syntax identifier for strings containing date format specifiers. + + + The syntax identifier for strings containing date and time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing JavaScript Object Notation (JSON). + + + The syntax identifier for strings containing numeric format specifiers. + + + The syntax identifier for strings containing regular expressions. + + + The syntax identifier for strings containing time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing URIs. + + + The syntax identifier for strings containing XML. + + + + Used to indicate a byref escapes and is not scoped. + + + + There are several cases where the C# compiler treats a as implicitly + - where the compiler does not allow the to escape the method. + + + For example: + + for instance methods. + parameters that refer to types. + parameters. + + + + This attribute is used in those instances where the should be allowed to escape. + + + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + + + + + Represent a type can be used to index a collection either from the start or the end. + + Index is used by the C# compiler to support the new index syntax + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 } ; + int lastElement = someArray[^1]; // lastElement = 5 + + + + + Construct an Index using a value and indicating if the index is from the start or from the end. + The index value. it has to be zero or positive number. + Indicating if the index is from the start or from the end. + + If the Index constructed from the end, index value 1 means pointing at the last element and index value 0 means pointing at beyond last element. + + + + Create an Index pointing at first element. + + + Create an Index pointing at beyond last element. + + + Create an Index from the start at the position indicated by the value. + The index value from the start. + + + Create an Index from the end at the position indicated by the value. + The index value from the end. + + + Returns the index value. + + + Indicates whether the index is from the start or the end. + + + Calculate the offset from the start using the giving collection length. + The length of the collection that the Index will be used with. length has to be a positive value + + For performance reason, we don't validate the input length parameter and the returned offset value against negative values. + we don't validate either the returned offset is greater than the input length. + It is expected Index will be used with collections which always have non negative length/count. If the returned offset is negative and + then used to index a collection will get out of range exception which will be same affect as the validation. + + + + Indicates whether the current Index object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Index object is equal to another Index object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts integer number to an Index. + + + Converts the value of the current Index object to its equivalent string representation. + + + Represent a range has start and end indexes. + + Range is used by the C# compiler to support the range syntax. + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 }; + int[] subArray1 = someArray[0..2]; // { 1, 2 } + int[] subArray2 = someArray[1..^0]; // { 2, 3, 4, 5 } + + + + + Represent the inclusive start index of the Range. + + + Represent the exclusive end index of the Range. + + + Construct a Range object using the start and end indexes. + Represent the inclusive start index of the range. + Represent the exclusive end index of the range. + + + Indicates whether the current Range object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Range object is equal to another Range object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts the value of the current Range object to its equivalent string representation. + + + Create a Range object starting from start index to the end of the collection. + + + Create a Range object starting from first element in the collection to the end Index. + + + Create a Range object starting from first element to the end. + + + Calculate the start offset and length of range object using a collection length. + The length of the collection that the range will be used with. length has to be a positive value. + + For performance reason, we don't validate the input length parameter against negative values. + It is expected Range will be used with collections which always have non negative length/count. + We validate the range is inside the length scope though. + + + + + An attribute that allows parameters to receive the expression of other parameters. + + + + + Initializes a new instance of the class. + + The condition parameter value. + + + + Gets the parameter name the expression is retrieved from. + + + + + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + + + + + Creates a new instance of the type. + + The name of the feature to indicate. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Indicates which arguments to a method involving an interpolated string handler should be passed to that handler. + + + + + Initializes a new instance of the class. + + The name of the argument that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Initializes a new instance of the class. + + The names of the arguments that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Gets the names of the arguments that should be passed to the handler. + + may be used as the name of the receiver in an instance method. + + + + Indicates the attributed type is to be used as an interpolated string handler. + + + + + Reserved to be used by the compiler for tracking metadata. + This class should not be used by developers in source code. + + + + + Used to indicate to the compiler that a method should be called + in its containing module's initializer. + + + When one or more valid methods + with this attribute are found in a compilation, the compiler will + emit a module initializer which calls each of the attributed methods. + + Certain requirements are imposed on any method targeted with this attribute: + - The method must be `static`. + - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc. + - The method must be parameterless. + - The method must return `void`. + - The method must not be generic or be contained in a generic type. + - The method's effective accessibility must be `internal` or `public`. + + The specification for module initializers in the .NET runtime can be found here: + https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer + + + + + Specifies that a type has required members or that a member is required. + + + + + Used to indicate to the compiler that the .locals init flag should not be set in method headers. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + +
+
diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.dll b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.dll new file mode 100644 index 0000000..537a5b8 Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.dll differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.pdb b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.pdb new file mode 100644 index 0000000..dcb2b97 Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.pdb differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.xml b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.xml new file mode 100644 index 0000000..7023e13 --- /dev/null +++ b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netcoreapp3.0/FluentAssertions.xml @@ -0,0 +1,17078 @@ + + + + FluentAssertions + + + + + Initializes a new instance of the class. + + + + + Constraint which can be returned from an assertion which matches a condition and which will allow + further matches to be performed on the matched condition as well as the parent constraint. + + The type of the original constraint that was matched + The type of the matched object which the parent constraint matched + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + Just a convenience property that returns the same value as . + + + + + Contains extension methods for custom assertions in unit tests. + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Provides methods for asserting the execution time of a method or property. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + is . + + + + Provides methods for asserting the execution time of an action. + + An action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Provides methods for asserting the execution time of an async action. + + An async action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection of the provided . + Should be used to assert that a method that uses the keyword throws a particular exception. + + The object that exposes the method or property. + A reference to the method or property to force enumeration of. + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current of . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + is . + + + + Returns a object + that can be used to assert the current . + + + + + + Returns a object that can be used to assert the current . + + + + + + Returns a object that can be used to assert the methods returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + + Returns a object that can be used to assert the properties returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current System.Func{Task{T}}. + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Starts monitoring for its events. + + The object for which to monitor the events. + + An optional delegate that returns the current date and time in UTC format. + Will revert to if no delegate was provided. + + is . + + + + Safely casts the specified object to the type specified through . + + + Has been introduced to allow casting objects without breaking the fluent API. + + The to cast to + + + + + + + + + + + + + + + + You are asserting the itself. Remove the Should() method directly following And. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Holds any global options that control the behavior of FluentAssertions. + + + + + Allows configuring the defaults used during a structural equivalency assertion. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + An action that is used to configure the defaults. + + is . + + + + Represents a mutable plan consisting of steps that are executed while asserting a (collection of) object(s) + is structurally equivalent to another (collection of) object(s). + + + Members on this property are not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Gets the default formatting options used by the formatters in Fluent Assertions. + + + Members on this property should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Please note that this assertion cannot identify whether the previous assertion was successful or not. + In case it was not successful and it is running within an active + there is no current result to compare with. + So, this extension will compare with the default value. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Remove all whitespace until we find a non-whitespace character + + + + + Only keep one whitespace character if more than one follow each other. + + + + + Represents a stateful parsing strategy that is used to help identify the "caller" to use in an assertion message. + + + The strategies will be instantiated at the beginning of a "caller identification" task, and will live until + the statement can be identified (and thus some are stateful). + + + + + Given a symbol, the parsing strategy should add/remove from the statement if needed, and then return + - InProgress if the symbol isn't relevant to the strategies (so other strategies can be tried) + - Handled if an action has been taken (and no other strategies should be used for this symbol) + - Done if the statement is complete, and thus further symbols should be read. + + + + + Returns true if strategy is in the middle of a context (ex: strategy read "/*" and is waiting for "*/" + + + + + Used to notify the strategy that we have reached the end of the line (very useful to detect the end of + a single line comment). + + + + + Tries to extract the name of the variable or invocation on which the assertion is executed. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in descending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is null or does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is a subset of the . + + An with the expected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains the specified item. + + The expectation item. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection contains at least one item that matches the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in any order. Elements are compared + using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection contains at least one element that is assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the given type. + + + Object type that should not be in collection + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item matching the specified . + + The predicate that will be used to find the matching items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection ends with the specified . + + + The element that is expected to appear at the end of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their method. + + A params array with the expected elements. + + + + Asserts that two collections contain the same items in the same order, where equality is determined using a + . + + + The collection to compare the subject with. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches the supplied amount. + + The expected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches a condition stated by the . + + A predicate that yields the number of items that is expected to be in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection is greater than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is greater than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection has the supplied at the + supplied . + + The index where the element is expected + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly precedes the . + + The element that should succeed . + The expected element that should precede . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly succeeds the . + + The element that should precede . + The element that should succeed . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection has the same number of elements as . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection shares one or more items with the specified . + + The with the expected shared items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + /// + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection not is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is not null and contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is not a subset of the . + + An with the unexpected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain the supplied item. + + The element that is not expected to be in the collection + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection does not contain any items that match the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection does not contain the supplied items. Elements are compared + using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and are consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and consecutively. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + The predicate when evaluated should not be null. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the elements that are not expected. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection does not match the supplied amount. + + The unexpected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection does not have the same number of elements as . + + The other collection with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not share any items with the specified . + + The to compare to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection only contains items that match a predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + The predicate to group the items by. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection contains only items which meet + the criteria provided by the inspector. + + + The element inspector, which inspects each element in turn. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + The order of the predicates does not need to match the order of the elements. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection starts with the specified . + + + The element that is expected to appear at the start of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to have all elements in the specified . + Elements are compared using their implementation. + + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current dictionary contains all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The expected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current dictionary not to contain all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The unexpected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the dictionary contains the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the dictionary contains the specified value. Values are compared using + their implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns an enumerable consisting of all items in the first collection also appearing in the second. + + Enumerable.Intersect is not suitable because it drops any repeated elements. + + + + Asserts that the current dictionary does not contain the specified value. + Values are compared using their implementation. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary contains the specified for the supplied + . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified for the + supplied . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Stores an element's value and index in the maximum matching problem. + + The type of the element value. + + + + The index of the element in the maximum matching problem. + + + + + The value of the element in the maximum matching problem. + + + + + The class defines input for the maximum matching problem. + The input is a list of predicates and a list of elements. + The goal of the problem is to find such mapping between predicates and elements that would maximize number of matches. + A predicate can be mapped with only one element. + An element can be mapped with only one predicate. + + The type of elements which must be matched with predicates. + + + + The class defines the solution (output) for the maximum matching problem. + See documentation of for more details. + + The type of elements which must be matched with predicates. + + + + The class encapsulates the algorithm + for solving the maximum matching problem (see ). + See https://en.wikipedia.org/wiki/Maximum_cardinality_matching for more details.
+ A simplified variation of the Ford-Fulkerson algorithm is used for solving the problem. + See https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm for more details. +
+
+ + + Solves the maximum matching problem; + + + + + To find a solution which contains the specified predicate and increases the total number of matches + we:
+ - Search for a free element which matches the specified predicate.
+ - Or take over an element which was previously matched with another predicate and repeat the procedure for the previously matched predicate.
+ - We are basically searching for a path in the graph of matches between predicates and elements which would start at the specified predicate + and end at an unmatched element.
+ - Breadth first search used to traverse the graph.
+
+
+ + + Stores a predicate's expression and index in the maximum matching problem. + + The type of the element values in the maximum matching problems. + + + + The index of the predicate in the maximum matching problem. + + + + + The expression of the predicate. + + + + + Determines whether the predicate matches the specified element. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Asserts that a collection of string is equivalent to another collection of strings. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least one string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that the collection does not contain any string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Initializes a new instance of the class. + + + + + Gets the value of the object referred to by the key. + + + + + Default implementation for for production use. + + + + + Defines the key for the configuration of the test framework to be assumed in FluentAssertions. + + + + + Gets the active configuration, + + + + + Gets or sets the mode on how Fluent Assertions will find custom implementations of + . + + + + + Gets or sets the assembly name to scan for custom value formatters in case + is set to . + + + + + Gets or sets the name of the test framework to use. + + + If no name is provided, Fluent Assertions + will try to detect it by scanning the currently loaded assemblies. If it can't find a suitable provider, + and the run-time platform supports it, it'll try to get it from the . + + + + + Converts an existing to a but normalizes the + so that comparisons of converted instances retain the UTC/local agnostic behavior. + + + + + Searches for the first different element in two sequences using specified + + The type of the elements of the sequence. + The type of the elements of the sequence. + The first sequence to compare. + The second sequence to compare. + Method that is used to compare 2 elements with the same index. + Index at which two sequences have elements that are not equal, or -1 if enumerables are equal + + + + Gets the of an returning a property. + + is . + + + + Gets a dotted path of property names representing the property expression, including the declaring type. + + + E.g. Parent.Child.Sibling.Name. + + is . + + + + Validates that the expression can be used to construct a . + + is . + + + + Workaround to make dotnet_code_quality.null_check_validation_methods work + https://github.com/dotnet/roslyn-analyzers/issues/3451#issuecomment-606690452 + + + + + Represents an abstract timer that is used to make some of this library's timing dependent functionality better testable. + + + + + Will block the current thread until a time delay has passed. + + The time span to wait before completing the returned task + + + + Creates a task that will complete after a time delay. + + The time span to wait before completing the returned task + + A task that represents the time delay. + + + + + Creates a timer to measure the time to complete some arbitrary executions. + + + + + Used to provide access to the underlying for an object that wraps an underlying + collection. + + Collection type. + + + + A smarter enumerator that can provide information about the relative location (current, first, last) + of the current item within the collection without unnecessarily iterating the collection. + + + + + Abstracts a stopwatch so we can control time in unit tests. + + + + + The time elapsed since the timer was created through . + + + + + Encapsulates a dotted candidate to a (nested) member of a type as well as the + declaring type of the deepest member. + + + + + Initializes a new instance of the class. + + is . + + + + Initializes a new instance of the class. + + is . + + + + Gets a value indicating whether the current object represents a child member of the + or that it is the parent of that candidate. + + + + + Determines whether the current path is the same as when ignoring any specific indexes. + + + + + Gets a value indicating whether the current path contains an indexer like `[1]` instead of `[]`. + + + + + Returns a copy of the current object as if it represented an un-indexed item in a collection. + + + + + Returns the name of the member the current path points to without its parent path. + + + + + Compares two segments of a . + Sets the equal with any numeric index qualifier. + All other comparisons are default string equality. + + + + + Compares two segments of a . + + Left part of the comparison. + Right part of the comparison. + True if segments are equal, false if not. + + + + A sum of all possible . It's needed to calculate what options were used when decorating with . + They are a subset of which can be checked on a type and therefore this mask has to be applied to check only for options. + + + + + Initializes a new instance of the class. + + is . + + + + Maintains the framework-specific services. + + + + + Factory for starting a timer on demand. + + + + + Finds the first index at which the does not match the + string anymore, accounting for the specified . + + + + + Gets the quoted three characters at the specified index of a string, including the index itself. + + + + + Replaces all numeric indices from a path like "property[0].nested" and returns "property[].nested" + + + + + Determines whether a string contains a specific index like `[0]` instead of just `[]`. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Joins a string with one or more other strings using a specified separator. + + + Any string that is empty (including the original string) is ignored. + + + + + Changes the first character of a string to uppercase. + + + + + Appends tab character at the beginning of each line in a string. + + + + + + Counts the number of times a substring appears within a string by using the specified . + + The string to search in. + The substring to search for. + The option to use for comparison. + + + + Determines whether two objects refer to the same + member. + + + + + Returns the interfaces that the implements that are concrete + versions of the . + + + + + Finds the property by a case-sensitive name. + + + Returns if no such property exists. + + + + + Finds the field by a case-sensitive name. + + + Returns if no such property exists. + + + + + Check if the type is declared as abstract. + + Type to be checked + + + + Check if the type is declared as sealed. + + Type to be checked + + + + Check if the type is declared as static. + + Type to be checked + + + + Check if the type has a human-readable name. + + false for compiler generated type names, otherwise true. + + + + If the type provided is a nullable type, gets the underlying type. Returns the type itself otherwise. + + + + + Helper class to get all the public and internal fields and properties from a type. + + + + + Defines the modes in which custom implementations of + are detected as configured through . + + + + + Detection is disabled. + + + + + Only custom value formatters exposed through the assembly set in + are detected. + + + + + All custom value formatters in any assembly loaded in the current will be detected. + + + + + Marks a method as an extension to Fluent Assertions that either uses the built-in assertions + internally, or directly uses the Execute.Assertion. + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The object that is being extended. + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The object that is being extended. + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection has the same number of elements as . + + The object that is being extended. + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of columns as + . + + The object that is being extended. + The other with the unexpected number of + elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataRow objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of rows as + . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of rows as + . + + The other with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataSet objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Contains an extension method for custom assertions in unit tests related to DataTable objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency. + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + + Testing of any property can be overridden using the callback. Exclude specific properties using + . + + + If or a related function is + used and the exclusion matches the subject , then the equivalency test will never + fail. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of columns. + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. This can be overridden + by using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table (which also excludes the related field data in + objects) using or a related function. + + + + You can use + and related functions to exclude properties on other related System.Data types. + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of tables. + + + + + Asserts that an instance of contains exactly the expected number of tables in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of contains a table with the expected name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has tables with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has tables with all of the supplied expected table names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. This can be overridden by using the overload that takes + . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. This setting applies to all types recursively tested + as part of the . + + + Exclude specific properties using . + Exclude specific tables within the data set using + or a related function. You can also indicate that columns should be excluded within the + objects recursively tested as part of the using + or a related function. The method + can be used to exclude columns across all objects in the that share + the same name. + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of rows and columns. + + + + + Asserts that an instance of contains exactly the expected number of rows in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. This can be overridden by + using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table using + or a related function -- this excludes both the objects in + and associated field data in objects within the . + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides access to configuration for equivalency assertions on System.Data types (, + , , , , + ). + + The System.Data type being tested for equivalency. + + + + Specifies that the subject and the expectation should not be considered non-equivalent if their exact data types do not match. + + + + + Specifies that when comparing , columns that are unmatched between the subject and the expectation should be ignored. + + + + + Specifies the that should be used when comparing . By default, rows are matched by their index in the collection. But, if the has a set, it is possible to use to indicate that rows should be matched by their primary key values, irrespective of their index within the collection. + + The to use when comparing between the subject and the expectation. + + + + Specifies that when comparing objects that are in the state, only the current field values should be compared. Original field values are excluded from comparison. This only affects comparisons where both the subject and the expectation are in the modified state. + + + + + Excludes members of the objects under test from comparison by means of a predicate that selects members based on objects describing them. + + A functor that returns true if the parameter refers to a member that should be excluded. + + + + Excludes a member of the objects under test from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes an entire table from comparison. When comparing objects, if a table is present by the supplied name, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + The value for for which tables within a should be ignored. + + + + Excludes tables from comparison using names in an set. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An of values for for which tables within a should be ignored. + + + + Excludes tables from comparison using an array of table names. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An array of values for for which tables within a should be ignored. + + + + Excludes a column from comparison by . The column to be excluded is matched by the name of its associated and its own . + + A object that specifies which column should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes a column from comparison by the name of its associated and its own . + + The value for for which columns should be ignored. + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Exclude an enumerable set of columns from comparison by . For each item in the enumeration, the column to be excluded is matched by the name of its associated and its own . + + An object that specifies which column(s) should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by . For each element in the array, the column to be excluded is matched by the name of its associated and its own . + + An array of objects that specify which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an enumerable set of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Indicates how objects from different objects should be matched + up for equivalency comparisons. + + + + + Indicates that objects should be matched up by their index within the + collection. This is the default. + + + + + Indicates that objects should be matched up by the values they have for + the table's . For this to work, the rows must be from + objects with exactly equivalent + configuration. + + + + + Contains an extension method for custom assertions in unit tests related to Enum objects. + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Represents a mutable collection of equivalency steps that can be reordered and/or amended with additional + custom equivalency steps. + + + + + Adds a new after any of the built-in steps, with the exception of the final + . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Adds a new right after the specified . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new before any of the built-in steps. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new just before the . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all instances of the specified from the current step. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes each and every built-in . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all custom s. + + + This method should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Gets the value of the subject object graph. + + + + + Gets the value of the expected object graph. + + + + + Gets the run-time type of the current expectation object. + + + + + Returns either the run-time or compile-time type of the expectation based on the options provided by the caller. + + + If the expectation is a nullable type, it should return the type of the wrapped object. + + + + + Collects the members that need to be converted by the . + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Indication of how cyclic references should be handled when validating equality of nested properties. + + + + + Cyclic references will be ignored. + + + + + Cyclic references will result in an exception. + + + + + The object overrides , so use that. + + + + + The object does not seem to override , so compare by members + + + + + Compare using , whether or not the object overrides it. + + + + + Compare the members, regardless of an override exists or not. + + + + + Represents the run-time type-specific behavior of a structural equivalency assertion. + + + + + Excludes the specified (nested) member from the structural equality check. + + + + + Selects a collection to define exclusions at. + Allows to navigate deeper by using . + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Causes the collection identified by to be compared in the order + in which the items appear in the expectation. + + + + + Causes the collection identified by to be compared ignoring the order + in which the items appear in the expectation. + + + + + Creates a new set of options based on the current instance which acts on a a collection of the . + + + + + Maps a (nested) property or field of type to + a (nested) property or field of using lambda expressions. + + A field or property expression indicating the (nested) member to map from. + A field or property expression indicating the (nested) member to map to. + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are ignored. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a (nested) property or field of the expectation to a (nested) property or field of the subject using a path string. + + + A field or property path indicating the (nested) member to map from in the format Parent.Child.Collection[].Member. + + + A field or property path indicating the (nested) member to map to in the format Parent.Child.Collection[].Member. + + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are not allowed + and must be written as "[]". If the types of the members are different, the usual logic applies depending or not + if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using lambda expressions. + + A field or property expression indicating the member to map from. + A field or property expression indicating the member to map to. + + Only direct members of and can be + mapped to each other. Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using member names. + + A field or property name indicating the member to map from. + A field or property name indicating the member to map to. + + Only direct members of and can be + mapped to each other, so no . or [] are allowed. + Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Represents the run-time type-agnostic behavior of a structural equivalency assertion. + + + + + Convenient implementation of that will only invoke + + + + + Implements , but only gets called when the expected type matches . + + + + + Provides information on a particular property during an assertion for structural equality of two object graphs. + + + + + Is responsible for validating the equivalency of a subject with another object. + + + + + Ensures that all the rules remove the collection index from the path before processing it further. + + + + + Keeps track of objects and their location within an object graph so that cyclic references can be detected + and handled upon. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + The behavior of a cyclic reference is determined by the parameter. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an object tracked by the including it's location within an object graph. + + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . + 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + A specialized type of that represents a field of an object in a structural equivalency assertion. + + + + + Allows deferred fetching of the subject ID. + + + + + Provides the required information for executing an equality assertion between a subject and an expectation. + + The type of the subject. + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + Gets the value of the + + + + + Gets the value of the expectation object that was matched with the subject using a . + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Provides the run-time details of the class. + + + + + Gets an ordered collection of selection rules that define what members (e.g. properties or fields) are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation properties. + + + + + Gets a value indicating whether or not the assertion must perform a deep comparison. + + + + + Gets a value indicating whether recursion is allowed to continue indefinitely. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By default, + ordering is irrelevant. + + + + + Contains the rules for what properties to run an auto-conversion. + + + + + Gets value indicating how the enums should be compared. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets a value indicating whether the runtime type of the expectation should be used rather than the declared type. + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets a value indicating whether members on the subject marked with [] + and should be treated as though they don't exist. + + + + + Gets a value indicating whether members on the expectation marked with [] + and should be excluded. + + + + + Gets a value indicating whether records should be compared by value instead of their members + + + + + Gets the currently configured tracer, or if no tracing was configured. + + + + + Determines the right strategy for evaluating the equality of objects of this type. + + + + + Defines a step in the process of comparing two object graphs for structural equivalency. + + + + + Executes an operation such as an equivalency assertion on the provided . + + + Should return if the subject matches the expectation or if no additional assertions + have to be executed. Should return otherwise. + + + May throw when preconditions are not met or if it detects mismatching data. + + + + + Provides information on a particular property or field during an assertion for structural equality of two object graphs. + + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + A formatted phrase and the placeholder values explaining why the assertion is needed. + + + + + Gets an object that can be used by the equivalency algorithm to provide a trace when the + option is used. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + + + Creates a context from the current object intended to assert the equivalency of a nested member. + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a deep clone of the current context. + + + + + Runs a deep recursive equivalency assertion on the provided . + + + + + Exposes information about an object's member + + + + + Gets the type that declares the current member. + + + + + Gets the type that was used to determine this member. + + + + + Gets the value of the member from the provided + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Gets a value indicating whether the member is browsable in the source code editor. This is controlled with + . + + + + + Represents a field or property in an object graph. + + + + + Gets the name of the current member. + + + + + Gets the type of this member. + + + + + Gets the type that declares the current member. + + + + + Gets the full path from the root object until and including the current node separated by dots. + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Represents a rule that defines how to map the selected members of the expectation object to the properties + of the subject. + + + + + Attempts to find a member on the subject that should be compared with the + during a structural equality. + + + Whether or not a match is required or optional is up to the specific rule. If no match is found and this is not an issue, + simply return . + + + The of the subject's member for which a match must be found. Can never + be . + + + The subject object for which a matching member must be returned. Can never be . + + + + + Returns the of the property with which to compare the subject with, or + if no match was found. + + + + + Represents a rule that defines which members of the expectation to include while comparing + two objects for structural equality. + + + + + Gets a value indicating whether this rule should override the default selection rules that include all members. + + + + + Adds or removes properties or fields to/from the collection of members that must be included while + comparing two objects for structural equality. + + + The node within the graph from which to select members. + + + A collection of members that was pre-populated by other selection rules. Can be empty. + Provides auxiliary information such as the configuration and such. + + The collection of members after applying this rule. Can contain less or more than was passed in. + + + + + Represents a node in the object graph that is being compared as part of a structural equivalency check. + This can be the root object, a collection item, a dictionary element, a property or a field. + + + + + The name of the variable on which a structural equivalency assertion is executed or + the default if reflection failed. + + + + + Gets the name of this node. + + + "Property2" + + + + + Gets the type of this node, e.g. the type of the field or property, or the type of the collection item. + + + + + Gets the type of the parent node, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the path from the root object UNTIL the current node, separated by dots or index/key brackets. + + + "Parent[0].Property2" + + + + + Gets the full path from the root object up to and including the name of the node. + + + "Parent[0]" + + + + + Gets a zero-based number representing the depth within the object graph + + + The root object has a depth of 0, the next nested object a depth of 1, etc. + See also this article + + + + + Gets the path including the description of the subject. + + + "property subject.Parent[0].Property2" + + + + + Gets a value indicating whether the current node is the root. + + + + + Gets a value indicating if the root of this graph is a collection. + + + + + Represents an object, dictionary key pair, collection item or member in an object graph. + + + + + Gets the type of the object + + + + + Gets the type of the parent, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the full path from the root object until the current node separated by dots. + + + + + Gets the compile-time type of the current object. If the current object is not the root object and the type is not , + then it returns the same as the property does. + + + + + Gets the run-time type of the current object. + + + + + Defines a rule that is used to determine whether the order of items in collections is relevant or not. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a member name and the target type. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a nested member path in the form of "Parent.NestedCollection[].Member" + + + + + Initializes a new instance of the class. + + is . + is empty. + is . + is empty. + + + + Requires the subject to have a member with the exact same name as the expectation has. + + + + + 2 + + + + Finds a member of the expectation with the exact same name, but doesn't require it. + + + + + 2 + + + + Provides contextual information to an . + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets either the compile-time or run-time type depending on the options provided by the caller. + + + + + Determines which members are included in the equivalency assertion + + + + + Supports recursively comparing two multi-dimensional arrays for equivalency using strict order for the array items + themselves. + + + + + The selected path starting at the first . + + + + + Selects a nested property to exclude. This ends the chain. + + + + + Adds the selected collection to the chain. + + + + + Collection of s. + + + + + Initializes a new collection of ordering rules. + + + + + Initializes a new collection of ordering rules based on an existing collection of ordering rules. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Determines whether the rules in this collection dictate strict ordering during the equivalency assertion on + the collection pointed to by . + + + + + Ordering rule that ensures that byte arrays are always compared in strict ordering since it would cause a + severe performance impact otherwise. + + + + + An ordering rule that basically states that the order of items in all collections is important. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Represents a rule for determining whether or not a certain collection within the object graph should be compared using + strict ordering. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + A specialized type of that represents a property of an object in a structural equivalency assertion. + + + + + Selection rule that adds all public fields of the expectation + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that adds all public properties of the expectation. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that removes a particular property from the structural comparison. + + + + + Selection rule that removes a particular member from the structural comparison based on a predicate. + + + + + 2 + + + + Selection rule that includes a particular property in the structural comparison. + + + + + Selection rule that includes a particular member in the structural comparison. + + + + + 2 + + + + Represents a selection context of a nested property + + + + + Represents the run-time behavior of a structural equivalency assertion. + + + + + Creates an instance of the equivalency assertions options based on defaults previously configured by the caller. + + + + + Gets an ordered collection of selection rules that define what members are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation members. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By + default, + ordering is irrelevant. + + + + + Gets value indicating whether the equality check will include nested collections and complex types. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Causes inclusion of only public properties of the subject as far as they are defined on the declared type. + + + This clears all previously registered selection rules. + + + + + Causes inclusion of only public properties of the subject based on its run-time type rather than its declared type. + + + This clears all previously registered selection rules. + + + + + Instructs the comparison to include public fields. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal fields. + + + + + Instructs the comparison to exclude fields. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to include public properties. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal properties. + + + + + Instructs the comparison to exclude properties. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to exclude non-browsable members in the expectation (members set to + ). It is not required that they be marked non-browsable in the subject. Use + to ignore non-browsable members in the subject. + + + + + Instructs the comparison to treat non-browsable members in the subject as though they do not exist. If you need to + ignore non-browsable members in the expectation, use . + + + + + Instructs the comparison to respect the expectation's runtime type. + + + + + Instructs the comparison to respect the expectation's declared type. + + + + + Excludes a (nested) property based on a predicate from the structural equality check. + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Tries to match the members of the expectation with equally named members on the subject. Ignores those + members that don't exist on the subject and previously registered matching rules. + + + + + Requires the subject to have members which are equally named to members on the expectation. + + + + + Overrides the comparison of subject and expectation to use provided + when the predicate is met. + + + The assertion to execute when the predicate is met. + + + + + Causes the structural equality comparison to recursively traverse the object graph and compare the fields and + properties of any nested objects and objects in collections. + + + This is the default behavior. You can override this using . + + + + + Stops the structural equality check from recursively comparing the members any nested objects. + + + If a property or field points to a complex type or collection, a simple call will + be done instead of recursively looking at the properties or fields of the nested object. + + + + + Causes the structural equality check to ignore any cyclic references. + + + By default, cyclic references within the object graph will cause an exception to be thrown. + + + + + Disables limitations on recursion depth when the structural equality check is configured to include nested objects + + + + + Clears all selection rules, including those that were added by default. + + + + + Clears all matching rules, including those that were added by default. + + + + + Adds a selection rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds a matching rule to the ones already added by default, and which is evaluated before all existing rules. + + + + + Adds an ordering rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds an equivalency step rule to the ones already added by default, and which is evaluated before previous + user-registered steps + + + + + Ensures the equivalency comparison will create and use an instance of + that implements , any time + when a property is of type . + + + + + Ensures the equivalency comparison will use the specified implementation of + any time when a property is of type . + + + + + Causes all collections to be compared in the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared in the order + in which the items appear in the expectation. + + + + + Causes all collections - except bytes - to be compared ignoring the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared ignoring the order + in which the items appear in the expectation. + + + + + Causes to compare Enum properties using the result of their ToString method. + + + By default, enums are compared by value. + + + + + Causes to compare Enum members using their underlying value only. + + + This is the default. + + + + + Ensures records by default are compared by value instead of their members. + + + + + Ensures records by default are compared by their members even though they override + the method. + + + This is the default. + + + + + Marks the as a type that should be compared by its members even though it may override + the method. + + + + + Marks as a type that should be compared by its members even though it may override + the method. + + is . + + + + Marks the as a value type which must be compared using its + method, regardless of it overriding it or not. + + + + + Marks as a value type which must be compared using its + method, regardless of it overriding it or not. + + is . + + + + Enables tracing the steps the equivalency validation followed to compare two graphs. + + + + + Instructs the equivalency comparison to try to convert the values of + matching properties before running any of the other steps. + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Defines additional overrides when used with + + + + + Allows overriding the way structural equality is applied to (nested) objects of type + + + + + + Allows overriding the way structural equality is applied to particular members. + + + A predicate based on the of the subject that is used to identify the property for which + the + override applies. + + + + + Represents a collection of assertion results obtained through a . + + + + + Adds the failures (if any) resulting from executing an assertion within a + identified by a key. + + + + + Returns the closest match compared to the set identified by the provided or + an empty array if one of the results represents a successful assertion. + + + The closest match is the set that contains the least amount of failures, or no failures at all, and preferably + the set that is identified by the . + + + + + Gets a value indicating whether this collection contains a set without any failures at all. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Attempts to convert the subject's property value to the expected type. + + + Whether or not the conversion is attempted depends on the . + + + + + Provides Reflection-backed meta-data information about a type implementing the interface. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface. Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface keyed to . + Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to convert an object into a dictionary typed to the and of the current . + + + if the conversion succeeded or otherwise. + + + + + Executes a single equivalency assertion on two collections, optionally recursive and with or without strict ordering. + + + + + Represents a composite equivalency step that passes the execution to all user-supplied steps that can handle the + current context. + + + + + Ensures that types that are marked as value types are treated as such. + + + + + Checks if the subject info setter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should have. + True if the subject info setter has the given access modifier, false otherwise. + + + + Checks if the subject info setter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should not have. + True if the subject info setter does not have the given access modifier, false otherwise. + + + + Checks if the subject info getter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should have. + True if the subject info getter has the given access modifier, false otherwise. + + + + Checks if the subject info getter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should not have. + True if the subject info getter does not have the given access modifier, false otherwise. + + + + Defines a function that takes the full path from the root object until the current object + in the equivalency operation separated by dots, and returns the trace message to log. + + + + + Represents an object that is used by the class to receive tracing statements on what is + happening during a structural equivalency comparison. + + + + + Writes a single line to the trace. + + + + + Starts a block that scopes an operation that should be written to the trace after the returned + is disposed. + + + + + Returns a copy of the trace. + + + + + Exposes tracing capabilities that can be used by the implementation of the equivalency algorithm + when an is provided. + + + + + Writes a single line to the currently configured . + + + If no tracer has been configured, the call will be ignored. + + + + + Starts a block that scopes an operation that will be written to the currently configured + after the returned disposable is disposed. + + + If no tracer has been configured for the , the call will be ignored. + + + + + Provides extension methods for monitoring and querying events. + + + + + Asserts that all occurrences of the event originates from the . + + + Returns only the events that comes from that sender. + + + + + Asserts that at least one occurrence of the events has some argument of the expected + type that matches the given predicate. + + + Returns only the events having some argument matching both type and predicate. + + is . + + + + Asserts that at least one occurrence of the events has arguments of the expected + type that pairwise match all the given predicates. + + + Returns only the events having arguments matching both type and all predicates. + + + If a is provided as predicate argument, the corresponding event parameter value is ignored. + + + + + Provides convenient assertion methods on a that can be + used to assert that certain events have been raised. + + + + + Gets the which is being asserted. + + + + + Asserts that an object has raised a particular event at least once. + + + The name of the event that should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised a particular event. + + + The name of the event that should not be raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised, or + to refer to all properties. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Static methods that aid in generic event subscription + + + + + Generates an eventhandler for an event of type eventSignature that calls RegisterEvent on recorder + when invoked. + + + + + Finds the Return Type of a Delegate. + + + + + Returns an Array of Types that make up a delegate's parameter signature. + + + + + Returns an array of types appended with an EventRecorder reference at the beginning. + + + + + Returns T/F Dependent on a Type Being a Delegate. + + + + + Returns the MethodInfo for the Delegate's "Invoke" Method. + + + + + Provides the metadata of a monitored event. + + + + + The name of the event member on the monitored object + + + + + The type of the event handler and event args. + + + + + Tracks the events an object raises. + + + + + Records activity for a single event. + + + + + Initializes a new instance of the class. + + The object events are recorded from + The name of the event that's recorded + A delegate to get the current date and time in UTC format. + Class used to generate a sequence in a thread-safe manner. + + + + The object events are recorded from + + + + + + + + Called by the auto-generated IL, to record information about a raised event. + + + + + Resets recorder to clear records of events raised so far. + + + + + Represents an (active) recording of all events that happen(ed) while monitoring an object. + + + + + The object events are recorded from + + + + + The name of the event that's recorded + + + + + The type of the event handler identified by . + + + + + Monitors events on a given source + + + + + Gets the object that is being monitored or if the object has been GCed. + + + + + Clears all recorded events from the monitor and continues monitoring. + + + + + Provides access to several assertion methods. + + + + + Gets the metadata of all the events that are currently being monitored. + + + + + Gets a collection of all events that have occurred since the monitor was created or + was called. + + + + + Represents an occurrence of a particular event. + + + + + The name of the event as defined on the monitored object. + + + + + The parameters that were passed to the event handler. + + + + + The exact date and time of the occurrence in . + + + + + The order in which this event was raised on the monitored object. + + + + + This class is used to store data about an intercepted event + + + + + Default constructor stores the parameters the event was raised with + + + + + The exact data and time in UTC format at which the event occurred. + + + + + Parameters for the event + + + + + The order in which this event was invoked on the monitored object. + + + + + Generates a sequence in a thread-safe manner. + + + + + Increments the current sequence. + + + + + Asserts that the thrown exception has a message that matches . + + The containing the thrown exception. + + The wildcard pattern with which the exception message is matched, where * and ? have special meanings. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + The containing the thrown exception. + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Represents the default exception in case no test framework is configured. + + + + + Represents an implicit or explicit scope within which multiple assertions can be collected. + + + This class is supposed to have a very short life time and is not safe to be used in assertion that cross thread-boundaries + such as when using or . + + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts an unnamed scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy. + + The assertion strategy for this scope. + is . + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy and parent assertion scope + + The assertion strategy for this scope. + The parent assertion scope for this scope. + is . + + + + Gets or sets the context of the current assertion scope, e.g. the path of the object graph + that is being asserted on. The context is provided by a which + only gets evaluated when its value is actually needed (in most cases during a failure). + + + + + Gets the current thread-specific assertion scope. + + + + + + + + Exposes the options the scope will use for formatting objects in case an assertion fails. + + + + + Adds an explanation of why the assertion is supposed to succeed to the scope. + + + + + + + + + + + + + + + + + Makes assertion fail when does not match . + + The occurrence description in natural language could then be inserted in failure message by using + {expectedOccurrence} placeholder in message parameters of and its + overloaded versions. + + + defining the number of expected occurrences. + The number of actual occurrences. + + + + + + + + + + + + + + + + Gets the identity of the caller associated with the current scope. + + + + + Adds a pre-formatted failure message to the current scope. + + + + + Adds a block of tracing to the scope for reporting when an assertion fails. + + + + + Tracks a keyed object in the current scope that is excluded from the failure message in case an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. The value is only calculated on failure. + + + + + Returns all failures that happened up to this point and ensures they will not cause + to fail the assertion. + + + + + Gets data associated with the current scope and identified by . + + + + + + + + + + + Allows the scope to assume that all assertions that happen within this scope are going to + be initiated by the same caller. + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Represents a collection of data items that are associated with an . + + + + + Enables chaining multiple assertions on an . + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Enables chaining multiple assertions from a call. + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Allows chaining multiple assertion scopes together using . + + + If the parent scope has captured a failed assertion, + this class ensures that successive assertions are no longer evaluated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Helper class for verifying a condition and/or throwing a test harness specific exception representing an assertion failure. + + + + + Gets an object that wraps and executes a conditional or unconditional assertion. + + + + + Represents assertion fail reason. Contains the message and arguments for message's numbered placeholders. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 args are supported in combination with a {reason}. + + + + + + Initializes a new instance of the class. + + + + + + + + Message to be displayed in case of failed assertion. May contain numbered + -style placeholders as well as specialized placeholders. + + + + + Arguments for the numbered -style placeholders of . + + + + + Throws a generic exception in case no other test harness is detected. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Represents a chaining object returned from to continue the assertion using + an object returned by a selector. + + + + + Specify the condition that must be satisfied upon the subject selected through a prior selector. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + The condition will not be evaluated if the prior assertion failed, + nor will throw any exceptions. + + is . + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + is . + + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + + + Allows to safely select the subject for successive assertions. + + + Selector which result is passed to successive calls to . + + + + + Specify the condition that must be satisfied. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + Messages may contain a few specialized placeholders. For instance, {reason} will be replaced with the reason + of the assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + will not be called unless the assertion is not met. + + Function returning object on demand. Called only when the assertion is not met. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + , + but postpones evaluation of the formatting arguments until the assertion really fails. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional lazily evaluated arguments to any numbered placeholders + + + + Specify the reason why you expect the condition to be . + + + A formatted phrase compatible with explaining why the condition should + be satisfied. If the phrase does not start with the word because, it is prepended to the message. + + If the format of or is not compatible with + , then a warning message is returned instead. + + + + Zero or more values to use for filling in any compatible placeholders. + + + + + Clears the expectation set by . + + + + + Sets the expectation part of the failure message when the assertion is not met. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Defines the name of the subject in case this cannot be extracted from the source code. + + + + + Forces the formatters, that support it, to add the necessary line breaks. + + + This is just shorthand for modifying the property. + + + + + Discards and returns the failures that happened up to now. + + + + + Defines a strategy for handling failures in a . + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Custom version of ICloneable that works on all frameworks. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an abstraction of a particular test framework such as MSTest, nUnit, etc. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Encapsulates expanding the various placeholders supported in a failure message. + + + + + Represents the reason for a structural equivalency assertion. + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Implements a wrapper around all supported test frameworks to throw the correct assertion exception. + + + + + Implements the XUnit (version 2) test framework adapter. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ new DateTime(2011, 3, 10)
+
+ you can write 3.March(2011)
+
+ Or even
+
+ 3.March(2011).At(09, 30) +
+ +
+ + + Returns a new value for the specified and + in the month January. + + + + + Returns a new value for the specified and + in the month February. + + + + + Returns a new value for the specified and + in the month March. + + + + + Returns a new value for the specified and + in the month April. + + + + + Returns a new value for the specified and + in the month May. + + + + + Returns a new value for the specified and + in the month June. + + + + + Returns a new value for the specified and + in the month July. + + + + + Returns a new value for the specified and + in the month August. + + + + + Returns a new value for the specified and + in the month September. + + + + + Returns a new value for the specified and + in the month October. + + + + + Returns a new value for the specified and + in the month November. + + + + + Returns a new value for the specified and + in the month December. + + + + + Returns a new value for the specified and . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value that is the current before the + specified . + + + + + Returns a new value that is the current after the + specified . + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns new that uses + as its datetime and as its offset. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ TimeSpan.FromHours(12)
+
+ you can write
+
+ 12.Hours()
+
+ Or even
+
+ 12.Hours().And(30.Minutes()). +
+ +
+ + + Represents the number of ticks that are in 1 microsecond. + + + + + Represents the number of ticks that are in 1 nanosecond. + + + + + Returns a based on a number of ticks. + + + + + Returns a based on a number of ticks. + + + + + Gets the nanoseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Gets the value of the current structure expressed in whole and fractional nanoseconds. + + + + + Gets the microseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of microseconds. + + + + + Returns a based on a number of microseconds. + + + + + Gets the value of the current structure expressed in whole and fractional microseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds, and add the specified + . + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes, and add the specified + . + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours, and add the specified + . + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days, and add the specified + . + + + + + Convenience method for chaining multiple calls to the methods provided by this class. + + + 23.Hours().And(59.Minutes()) + + + + + Provides extensions to write s with fluent syntax + + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + Contains static methods to help with exception assertions on actions. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Specialized value formatter that looks for static methods in the caller's assembly marked with the + . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of spaces to indent the members of this object by. + + The default value is 3. + + + + Determines whether this instance can handle the specified value. + + The value. + + if this instance can handle the specified value; otherwise, . + + + + + Selects which members of to format. + + The of the object being formatted. + The members of that will be included when formatting this object. + The default is all non-private members. + + + + Selects the name to display for . + + The of the object being formatted. + The name to be displayed for . + The default is . + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a method that can be used to format child values from inside an . + + + Represents the path from the current location to the child value. + + + The child value to format with the configured s. + + + + + This class is used by the class to collect all the output of the (nested calls of an) into + a the final representation. + + + The will ensure that the number of lines will be limited + to the maximum number of lines provided through its constructor. It will throw + a if the number of lines exceeds the maximum. + + + + + The number of spaces that should be used by every indentation level. + + + + + Returns the number of lines of text currently in the graph. + + + + + Starts a new line with the provided text fragment. Additional text can be added to + that same line through . + + + + + Starts a new line with the provided line of text that does not allow + adding more fragments of text. + + + + + Adds a new fragment of text to the current line. + + + + + Adds a new line if there are no lines and no fragment that would cause a new line. + + + + + Inserts an empty line as the first line unless it is already. + + + + + Increases the indentation of every line written into this text block until the returned disposable is disposed. + + + The amount of spacing used for each indentation level is determined by . + + + + + Returns the final textual multi-line representation of the object graph. + + + + + Write fragments that may be on a single line or span multiple lines, + and this is not known until later parts of the fragment are written. + + + + + Write the fragment at the position the graph was in when this instance was created. + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + Write the fragment. If more lines have been added since this instance was + created then also flush the line and indent the next line. + + + + + Provides services for formatting an object being used in an assertion in a human readable format. + + + + + Is used to detect recursive calls by implementations. + + + + + A list of objects responsible for formatting the objects represented by placeholders. + + + + + Returns a human-readable representation of a particular object. + + The value for which to create a . + + Indicates whether the formatter should use line breaks when the specific supports it. + + + A that represents this instance. + + + + + Removes a custom formatter that was previously added though . + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Ensures a custom formatter is included in the chain, just before the default formatter is executed. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Tracks the objects that were formatted as well as the path in the object graph of + that object. + + + Is used to detect the maximum recursion depth as well as cyclic references in the graph. + + + + + Provides information about the current formatting action. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + Determines the depth until which the library should try to render an object graph. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + A depth of 1 will only the display the members of the root object. + + + + + Sets the maximum number of lines of the failure message. + + + + Because of technical reasons, the actual output may be one or two lines longer. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a strategy for formatting an arbitrary value into a human-readable string representation. + + + Add custom formatters using . + + + + + Indicates + whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Returns a human-readable representation of . + + The value to format into a human-readable representation + + An object to write the textual representation to. + + + Contains additional information that the implementation should take into account. + + + Allows the formatter to recursively format any child objects. + + + DO NOT CALL directly, but use + instead. This will ensure cyclic dependencies are properly detected. + Also, the may throw + an that must be ignored by implementations of this interface. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The is responsible for formatting + boolean lambda expressions. + + + + + This step simplifies the lambda expression by replacing parts of it which do not depend on the lambda parameters + with the actual values of these sub-expressions. The simplified expression is much easier to read. + E.g. "(_.Text == "two") AndAlso (_.Number == 3)" + Instead of "(_.Text == value(FluentAssertions.Specs.Collections.GenericCollectionAssertionsSpecs+c__DisplayClass122_0).twoText) AndAlso (_.Number == 3)". + + + + + This step simplifies the lambda expression by removing unnecessary parentheses for root level chain of AND operators. + E.g. (_.Text == "two") AndAlso (_.Number == 3) AndAlso (_.OtherText == "foo") + Instead of ((_.Text == "two") AndAlso (_.Number == 3)) AndAlso (_.OtherText == "foo") + This simplification is only implemented for the chain of AND operators because this is the most common predicate scenario. + Similar logic can be implemented in the future for other operators. + + + + + Expression visitor which can detect whether the expression depends on parameters. + + + + + Expression visitor which can replace constant sub-expressions with constant values. + + + + + Expression visitor which can extract sub-expressions from an expression which has the following form: + (SubExpression1) AND (SubExpression2) ... AND (SubExpressionN) + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Provides a human readable version of a generic or non-generic + including its state. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Marks a static method as a kind of for a particular type. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Contains a number of extension methods for floating point . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that an object equals another object using its implementation.
+ Verification whether returns 0 is not done here, you should use + to verify this. +
+ The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object does not equal another object using its method.
+ Verification whether returns non-zero is not done here, you should use + to verify this. +
+ The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that the subject is ranked equal to another object. I.e. the result of returns 0. + To verify whether the objects are equal you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is not ranked equal to another object. I.e. the result of returns non-zero. + To verify whether the objects are not equal according to you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range (inclusive). + + + The maximum valid value of the range (inclusive). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + + The type that the subject is supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + + The type that the subject is not supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + + + + A method to generate additional information upon comparison failures. + + The current numeric value verified to be non-null. + The value to compare the current numeric value with. + + Returns the difference between a number value and the value. + Returns `null` if the compared numbers are small enough that a difference message is irrelevant. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the XML serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value implies the specified value. + + The right hand side of the implication + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the represents a value in the . + + + The expected that the current value must represent. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + Comparison is performed using + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not exactly equal to the value. + Comparison is performed using + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the offset. + + The expected offset of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the offset. + + The offset that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent + way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is not defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum has a specified flag + + The expected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum does not have a specified flag + + The unexpected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the matches the . + + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the is successful (2xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is redirection (3xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is either client (4xx) or server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is client error (4xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified using the provided . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that a value equals using its implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using its method. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a reference type object is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current object has not been initialized yet. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current object has been initialized. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + The expected type of the object. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the . + + + The type that the subject is supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + The type that the subject is not supposed to be. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is not the . + + + The type that the subject is not supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is assignable to a variable of type . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is assignable to a variable of given . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the object is not assignable to a variable of type . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is not assignable to a variable of given . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Returns the type of the subject the assertion applies on. + It should be a user-friendly name as it is included in the failure message. + + + + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the time difference of the current is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is equal to the + specified time. + + The expected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is not equal to the + specified time. + + The unexpected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that a string is exactly the same as another string, including the casing and any leading or trailing whitespace. + + The expected string. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is not expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to be equivalent to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination literal text and wildcard of + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string starts exactly with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string starts with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string contains another (fragment of a) string. + + + The (fragment of a) string that the current string should contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains another (fragment of a) string a set amount of times. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified a set amount of times, + including any leading or trailing whitespace, with the exception of the casing. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + + + Asserts that a string does not contain another (fragment of a) string. + + + The (fragment of a) string that the current string should not contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + + + Asserts that a string does not contain the specified string, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string has the specified length. + + The expected length of the string + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor nor white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or or white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in upper casing. + + + Be careful that numbers and special characters don't have casing, so + will always fail on a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in upper casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in lower casing. + + + Be careful that numbers and special characters don't have casing, so will always fail on + a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in lower casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Dedicated class for comparing two strings and generating consistent error messages. + + + + + Gets or sets a value indicating whether the subject should not match the pattern. + + + + + Gets or sets a value indicating whether the matching process should ignore any casing difference. + + + + + Ignores the difference between environment newline differences + + + + + Provides the logic and the display text for a . + + + + + Contains a number of methods to assert that an yields the expected result. + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an asynchronous method yields the expected result. + + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current will not complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current throws an exception of type . + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of type + within a specific timeout. + + The type of exception expected to be thrown. + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + The type of exception expected to not be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Invokes the subject and measures the sync execution time. + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that a synchronous method yields the expected result. + + + + + Asserts that the current throws an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + + The type of the exception it should throw. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The delegate is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the delegate should have stopped throwing any exception. + + + The time between subsequent invocations of the delegate. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Contains a number of methods to assert that a method yields the expected result. + + + + + Contains a number of methods to assert that an is in the correct state. + + + + + Gets the exception object of the exception thrown. + + + + + Gets the exception object of the exception thrown. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that the thrown exception has a message that matches . + + + The pattern to match against the exception message. This parameter can contain a combination of literal text and + wildcard (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + + This constructor is almost exact copy of the one accepting . + The original constructor shall stay in place in order to keep backward-compatibility + and to avoid unnecessary wrapping action in . + + is . + + + + Provides methods for asserting that the execution time of an satisfies certain conditions. + + + + + Initializes a new instance of the class. + + The execution on which time must be asserted. + + + + Checks the executing action if it satisfies a condition. + If the execution runs into an exception, then this will rethrow it. + + Condition to check on the current elapsed time. + Polling stops when condition returns the expected result. + The rate at which the condition is re-checked. + The elapsed time. (use this, don't measure twice) + + + + Asserts that the execution time of the operation is less than or equal to a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is less than a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than or equal to a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is within the expected duration. + by a specified precision. + + + The expected duration. + + + The maximum amount of time which the execution time may differ from the expected duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a synchronous function yields the expected result. + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Initializes a new instance of the class. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + is . + is . + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Implements base functionality for assertions on TaskCompletionSource. + + + + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that an assembly does not reference the specified assembly. + + The assembly which should not be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an assembly references the specified assembly. + + The assembly which should be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the assembly defines a type called and . + + The namespace of the class. + The name of the class. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + Asserts that the assembly is unsigned. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + Asserts that the assembly is signed with the specified public key. + + The base-16 string representation of the public key, like "e0851575614491c6d25018fadb75". + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + + Asserts that the current has the buffer size. + + The expected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a buffer size of . + + The unexpected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the position. + + The expected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an position. + + The unexpected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the length. + + The expected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an length. + + The unexpected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Extension methods for filtering a collection of types. + + + + + Filters to only include types decorated with a particular attribute. + + + + + Filters to only include types decorated with, or inherits from a parent class, a particular attribute. + + + + + Filters to only include types not decorated with a particular attribute. + + + + + Filters to only include types not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Filters to only include types where the namespace of type is exactly . + + + + + Filters to only include types where the namespace of type is starts with . + + + + + Filters to only include types that subclass the specified type, but NOT the same type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Filters to only include types that are classes. + + + + + Filters to only include types that are not classes. + + + + + Filters to only include types that are static. + + + + + Filters to only include types that are not static. + + + + + Filters to only include types that satisfies the passed. + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Extension methods for getting method and property selectors for a type. + + + + + Returns the types that are visible outside the specified . + + + + + Returns a type selector for the current . + + + + + Returns a type selector for the current . + + + + + Returns a method selector for the current . + + is . + + + + Returns a method selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Static class that allows for a 'fluent' selection of the types from an . + + + AllTypes.From(myAssembly)
+ .ThatImplement<ISomeInterface>
+ .Should()
+ .BeDecoratedWith<SomeAttribute>() +
+
+ + + Returns a for selecting the types that are visible outside the + specified . + + The assembly from which to select the types. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + The constructorInfo from which to select properties. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected member is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected member does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected method is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Allows for fluent selection of methods of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select methods. + is . + + + + Initializes a new instance of the class. + + The types from which to select methods. + is or contains . + + + + Only select the methods that are public or internal. + + + + + Only select the methods without a return value + + + + + Only select the methods with a return value + + + + + Only select the methods that return the specified type + + + + + Only select the methods that do not return the specified type + + + + + Only select the methods that are decorated with an attribute of the specified type. + + + + + Only select the methods that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the methods that are not decorated with an attribute of the specified type. + + + + + Only select the methods that are not decorated with and does not inherit from a parent class, an attribute of the specified type. + + + + + Only return methods that are abstract + + + + + Only return methods that are not abstract + + + + + Only return methods that are async. + + + + + Only return methods that are not async. + + + + + Only return methods that are static. + + + + + Only return methods that are not static. + + + + + Only return methods that are virtual. + + + + + Only return methods that are not virtual. + + + + + Select return types of the methods + + + + + The resulting objects. + + + + + Determines whether the specified method has a special name (like properties and events). + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Initializes a new instance of the class. + + The methods to assert. + is . + + + + Gets the object which value is being asserted. + + + + + Asserts that the selected methods are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods have specified . + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods don't have specified + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected property is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property returns a specified type. + + The expected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property does not return a specified type. + + The unexpected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent selection of properties of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select properties. + is . + + + + Initializes a new instance of the class. + + The types from which to select properties. + is or contains . + + + + Only select the properties that have at least one public or internal accessor + + + + + Only select the properties that are abstract + + + + + Only select the properties that are not abstract + + + + + Only select the properties that are static + + + + + Only select the properties that are not static + + + + + Only select the properties that are virtual + + + + + Only select the properties that are not virtual + + + + + Only select the properties that are decorated with an attribute of the specified type. + + + + + Only select the properties that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the properties that are not decorated with an attribute of the specified type. + + + + + Only select the properties that are not decorated with and does not inherit from a parent class an attribute of the specified type. + + + + + Only select the properties that return the specified type + + + + + Only select the properties that do not return the specified type + + + + + Select return types of the properties + + + + + The resulting objects. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Gets the object which value is being asserted. + + + + + Initializes a new instance of the class, for a number of objects. + + The properties to assert. + is . + + + + Asserts that the selected properties are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties do not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a meets certain expectations. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current is equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equal to the specified type. + + The expected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts than an instance of the subject type is assignable variable of type . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is assignable variable of given . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts than an instance of the subject type is not assignable variable of type . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is not assignable variable of given . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Creates an error message in case the specified type differs from the + type. + + + An empty if the two specified types are the same, or an error message that describes that + the two specified types are not the same. + + + + + Asserts that the current type is not equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current type is not equal to the specified type. + + The unexpected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, + the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an + attribute of type that matches the specified + . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements interface . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not implement . + + The interface that should be not implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not implement interface . + + The interface that should not be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not have a property named . + + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The interface whose member is being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current explicitly implements a method named + from interface . + + The interface whose member is being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has an indexer of type . + with parameter types . + + The type of the indexer. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an indexer that takes parameter types + . + + The expected indexer's parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a method named with parameter types + . + + The name of the method. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not expose a method named + with parameter types . + + The name of the method. + The method parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not have a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent filtering a list of types. + + + + + Initializes a new instance of the class. + + is or contains . + + + + The resulting objects. + + + + + Determines whether a type is a subclass of another type, but NOT the same type. + + + + + Determines whether a type is not a subclass of another type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Determines whether a type does not implement an interface (but is not the interface itself). + + + + + Determines whether a type is decorated with a particular attribute. + + + + + Determines whether a type is decorated with, or inherits from a parent class, a particular attribute. + + + + + Determines whether a type is not decorated with a particular attribute. + + + + + Determines whether a type is not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Determines whether the namespace of type is exactly . + + + + + Determines whether the namespace of type is exactly not . + + + + + Determines whether the namespace of type starts with . + + + + + Determines whether the namespace of type does not start with . + + + + + Filters and returns the types that are value types + + + + + Filters and returns the types that are not value types + + + + + Determines whether the type is a class + + + + + Determines whether the type is not a class + + + + + Filters and returns the types that are abstract + + + + + Filters and returns the types that are not abstract + + + + + Filters and returns the types that are sealed + + + + + Filters and returns the types that are not sealed + + + + + Filters and returns only the types that are interfaces + + + + + Filters and returns only the types that are not interfaces + + + + + Determines whether the type is static + + + + + Determines whether the type is not static + + + + + Allows to filter the types with the passed + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains a number of methods to assert that all s in a + meet certain expectations. + + + + + Initializes a new instance of the class. + + is or contains . + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected types are sealed + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the all are not sealed classes + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is in the specified . + + + The namespace that the type must be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not in the specified . + + + The namespace that the type must not be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current starts with the specified . + + + The namespace that the namespace of the type must start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current + does not starts with the specified . + + + The namespace that the namespace of the type must not start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the attribute. + + The expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the attribute, + using its implementation. + + The unexpected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a root element with the specified + name. + + The name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a root element with the specified + name. + + The full name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The full name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the + element, by using + + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the + element, using + . + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the + element, using a semantic equivalency + comparison. + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the element, using a semantic + equivalency comparison. + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an + is in the expected state./> + + + + + Initializes a new instance of the class. + + + + + + Asserts that the current has the specified + inner text. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified , + and . + + The name of the expected attribute + The namespace of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name, ignoring the namespace. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name and namespace. + + The name of the expected child element + The namespace of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the current is equivalent to the node. + + The expected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the node. + + The unexpected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Since net6.0 StringBuilder has additional overloads taking an AppendInterpolatedStringHandler + and optionally an IFormatProvider. + The overload here is polyfill for older target frameworks to avoid littering the code base with #ifs + in order to silence analyzers about dependending on the current culture instead of an invariant culture. + + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + + + Specifies that the method or property will ensure that the listed field and property + members have not-null values when returning with the specified return value condition. + + + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + + + Gets field or property member names. + + + + + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + + + + + Specifies the syntax used in a string. + + + + + Initializes the with the identifier of the syntax used. + + The syntax identifier. + + + Initializes the with the identifier of the syntax used. + The syntax identifier. + Optional arguments associated with the specific syntax employed. + + + Gets the identifier of the syntax used. + + + Optional arguments associated with the specific syntax employed. + + + The syntax identifier for strings containing composite formats for string formatting. + + + The syntax identifier for strings containing date format specifiers. + + + The syntax identifier for strings containing date and time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing JavaScript Object Notation (JSON). + + + The syntax identifier for strings containing numeric format specifiers. + + + The syntax identifier for strings containing regular expressions. + + + The syntax identifier for strings containing time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing URIs. + + + The syntax identifier for strings containing XML. + + + + Used to indicate a byref escapes and is not scoped. + + + + There are several cases where the C# compiler treats a as implicitly + - where the compiler does not allow the to escape the method. + + + For example: + + for instance methods. + parameters that refer to types. + parameters. + + + + This attribute is used in those instances where the should be allowed to escape. + + + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + + + + + + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + + + + + Creates a new instance of the type. + + The name of the feature to indicate. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Indicates which arguments to a method involving an interpolated string handler should be passed to that handler. + + + + + Initializes a new instance of the class. + + The name of the argument that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Initializes a new instance of the class. + + The names of the arguments that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Gets the names of the arguments that should be passed to the handler. + + may be used as the name of the receiver in an instance method. + + + + Indicates the attributed type is to be used as an interpolated string handler. + + + + + Reserved to be used by the compiler for tracking metadata. + This class should not be used by developers in source code. + + + + + Used to indicate to the compiler that a method should be called + in its containing module's initializer. + + + When one or more valid methods + with this attribute are found in a compilation, the compiler will + emit a module initializer which calls each of the attributed methods. + + Certain requirements are imposed on any method targeted with this attribute: + - The method must be `static`. + - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc. + - The method must be parameterless. + - The method must return `void`. + - The method must not be generic or be contained in a generic type. + - The method's effective accessibility must be `internal` or `public`. + + The specification for module initializers in the .NET runtime can be found here: + https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer + + + + + Specifies that a type has required members or that a member is required. + + + + + Used to indicate to the compiler that the .locals init flag should not be set in method headers. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + +
+
diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.dll b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.dll new file mode 100644 index 0000000..91f3eae Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.dll differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.pdb b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.pdb new file mode 100644 index 0000000..55860bb Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.pdb differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.xml b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.xml new file mode 100644 index 0000000..86de773 --- /dev/null +++ b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.0/FluentAssertions.xml @@ -0,0 +1,16961 @@ + + + + FluentAssertions + + + + + Initializes a new instance of the class. + + + + + Constraint which can be returned from an assertion which matches a condition and which will allow + further matches to be performed on the matched condition as well as the parent constraint. + + The type of the original constraint that was matched + The type of the matched object which the parent constraint matched + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + Just a convenience property that returns the same value as . + + + + + Contains extension methods for custom assertions in unit tests. + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Provides methods for asserting the execution time of a method or property. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + is . + + + + Provides methods for asserting the execution time of an action. + + An action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Provides methods for asserting the execution time of an async action. + + An async action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection of the provided . + Should be used to assert that a method that uses the keyword throws a particular exception. + + The object that exposes the method or property. + A reference to the method or property to force enumeration of. + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current of . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + is . + + + + Returns a object + that can be used to assert the current . + + + + + + Returns a object that can be used to assert the current . + + + + + + Returns a object that can be used to assert the methods returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + + Returns a object that can be used to assert the properties returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current System.Func{Task{T}}. + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Safely casts the specified object to the type specified through . + + + Has been introduced to allow casting objects without breaking the fluent API. + + The to cast to + + + + + + + + + + + + + + + + You are asserting the itself. Remove the Should() method directly following And. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Holds any global options that control the behavior of FluentAssertions. + + + + + Allows configuring the defaults used during a structural equivalency assertion. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + An action that is used to configure the defaults. + + is . + + + + Represents a mutable plan consisting of steps that are executed while asserting a (collection of) object(s) + is structurally equivalent to another (collection of) object(s). + + + Members on this property are not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Gets the default formatting options used by the formatters in Fluent Assertions. + + + Members on this property should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Please note that this assertion cannot identify whether the previous assertion was successful or not. + In case it was not successful and it is running within an active + there is no current result to compare with. + So, this extension will compare with the default value. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Remove all whitespace until we find a non-whitespace character + + + + + Only keep one whitespace character if more than one follow each other. + + + + + Represents a stateful parsing strategy that is used to help identify the "caller" to use in an assertion message. + + + The strategies will be instantiated at the beginning of a "caller identification" task, and will live until + the statement can be identified (and thus some are stateful). + + + + + Given a symbol, the parsing strategy should add/remove from the statement if needed, and then return + - InProgress if the symbol isn't relevant to the strategies (so other strategies can be tried) + - Handled if an action has been taken (and no other strategies should be used for this symbol) + - Done if the statement is complete, and thus further symbols should be read. + + + + + Returns true if strategy is in the middle of a context (ex: strategy read "/*" and is waiting for "*/" + + + + + Used to notify the strategy that we have reached the end of the line (very useful to detect the end of + a single line comment). + + + + + Tries to extract the name of the variable or invocation on which the assertion is executed. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in descending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is null or does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is a subset of the . + + An with the expected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains the specified item. + + The expectation item. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection contains at least one item that matches the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in any order. Elements are compared + using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection contains at least one element that is assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the given type. + + + Object type that should not be in collection + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item matching the specified . + + The predicate that will be used to find the matching items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection ends with the specified . + + + The element that is expected to appear at the end of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their method. + + A params array with the expected elements. + + + + Asserts that two collections contain the same items in the same order, where equality is determined using a + . + + + The collection to compare the subject with. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches the supplied amount. + + The expected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches a condition stated by the . + + A predicate that yields the number of items that is expected to be in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection is greater than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is greater than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection has the supplied at the + supplied . + + The index where the element is expected + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly precedes the . + + The element that should succeed . + The expected element that should precede . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly succeeds the . + + The element that should precede . + The element that should succeed . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection has the same number of elements as . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection shares one or more items with the specified . + + The with the expected shared items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + /// + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection not is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is not null and contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is not a subset of the . + + An with the unexpected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain the supplied item. + + The element that is not expected to be in the collection + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection does not contain any items that match the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection does not contain the supplied items. Elements are compared + using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and are consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and consecutively. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + The predicate when evaluated should not be null. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the elements that are not expected. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection does not match the supplied amount. + + The unexpected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection does not have the same number of elements as . + + The other collection with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not share any items with the specified . + + The to compare to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection only contains items that match a predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + The predicate to group the items by. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection contains only items which meet + the criteria provided by the inspector. + + + The element inspector, which inspects each element in turn. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + The order of the predicates does not need to match the order of the elements. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection starts with the specified . + + + The element that is expected to appear at the start of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to have all elements in the specified . + Elements are compared using their implementation. + + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current dictionary contains all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The expected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current dictionary not to contain all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The unexpected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the dictionary contains the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the dictionary contains the specified value. Values are compared using + their implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns an enumerable consisting of all items in the first collection also appearing in the second. + + Enumerable.Intersect is not suitable because it drops any repeated elements. + + + + Asserts that the current dictionary does not contain the specified value. + Values are compared using their implementation. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary contains the specified for the supplied + . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified for the + supplied . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Stores an element's value and index in the maximum matching problem. + + The type of the element value. + + + + The index of the element in the maximum matching problem. + + + + + The value of the element in the maximum matching problem. + + + + + The class defines input for the maximum matching problem. + The input is a list of predicates and a list of elements. + The goal of the problem is to find such mapping between predicates and elements that would maximize number of matches. + A predicate can be mapped with only one element. + An element can be mapped with only one predicate. + + The type of elements which must be matched with predicates. + + + + The class defines the solution (output) for the maximum matching problem. + See documentation of for more details. + + The type of elements which must be matched with predicates. + + + + The class encapsulates the algorithm + for solving the maximum matching problem (see ). + See https://en.wikipedia.org/wiki/Maximum_cardinality_matching for more details.
+ A simplified variation of the Ford-Fulkerson algorithm is used for solving the problem. + See https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm for more details. +
+
+ + + Solves the maximum matching problem; + + + + + To find a solution which contains the specified predicate and increases the total number of matches + we:
+ - Search for a free element which matches the specified predicate.
+ - Or take over an element which was previously matched with another predicate and repeat the procedure for the previously matched predicate.
+ - We are basically searching for a path in the graph of matches between predicates and elements which would start at the specified predicate + and end at an unmatched element.
+ - Breadth first search used to traverse the graph.
+
+
+ + + Stores a predicate's expression and index in the maximum matching problem. + + The type of the element values in the maximum matching problems. + + + + The index of the predicate in the maximum matching problem. + + + + + The expression of the predicate. + + + + + Determines whether the predicate matches the specified element. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Asserts that a collection of string is equivalent to another collection of strings. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least one string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that the collection does not contain any string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Initializes a new instance of the class. + + + + + Gets the value of the object referred to by the key. + + + + + Default implementation for for production use. + + + + + Defines the key for the configuration of the test framework to be assumed in FluentAssertions. + + + + + Gets the active configuration, + + + + + Gets or sets the mode on how Fluent Assertions will find custom implementations of + . + + + + + Gets or sets the assembly name to scan for custom value formatters in case + is set to . + + + + + Gets or sets the name of the test framework to use. + + + If no name is provided, Fluent Assertions + will try to detect it by scanning the currently loaded assemblies. If it can't find a suitable provider, + and the run-time platform supports it, it'll try to get it from the . + + + + + Converts an existing to a but normalizes the + so that comparisons of converted instances retain the UTC/local agnostic behavior. + + + + + Searches for the first different element in two sequences using specified + + The type of the elements of the sequence. + The type of the elements of the sequence. + The first sequence to compare. + The second sequence to compare. + Method that is used to compare 2 elements with the same index. + Index at which two sequences have elements that are not equal, or -1 if enumerables are equal + + + + Gets the of an returning a property. + + is . + + + + Gets a dotted path of property names representing the property expression, including the declaring type. + + + E.g. Parent.Child.Sibling.Name. + + is . + + + + Validates that the expression can be used to construct a . + + is . + + + + Workaround to make dotnet_code_quality.null_check_validation_methods work + https://github.com/dotnet/roslyn-analyzers/issues/3451#issuecomment-606690452 + + + + + Represents an abstract timer that is used to make some of this library's timing dependent functionality better testable. + + + + + Will block the current thread until a time delay has passed. + + The time span to wait before completing the returned task + + + + Creates a task that will complete after a time delay. + + The time span to wait before completing the returned task + + A task that represents the time delay. + + + + + Creates a timer to measure the time to complete some arbitrary executions. + + + + + Used to provide access to the underlying for an object that wraps an underlying + collection. + + Collection type. + + + + A smarter enumerator that can provide information about the relative location (current, first, last) + of the current item within the collection without unnecessarily iterating the collection. + + + + + Abstracts a stopwatch so we can control time in unit tests. + + + + + The time elapsed since the timer was created through . + + + + + Encapsulates a dotted candidate to a (nested) member of a type as well as the + declaring type of the deepest member. + + + + + Initializes a new instance of the class. + + is . + + + + Initializes a new instance of the class. + + is . + + + + Gets a value indicating whether the current object represents a child member of the + or that it is the parent of that candidate. + + + + + Determines whether the current path is the same as when ignoring any specific indexes. + + + + + Gets a value indicating whether the current path contains an indexer like `[1]` instead of `[]`. + + + + + Returns a copy of the current object as if it represented an un-indexed item in a collection. + + + + + Returns the name of the member the current path points to without its parent path. + + + + + Compares two segments of a . + Sets the equal with any numeric index qualifier. + All other comparisons are default string equality. + + + + + Compares two segments of a . + + Left part of the comparison. + Right part of the comparison. + True if segments are equal, false if not. + + + + A sum of all possible . It's needed to calculate what options were used when decorating with . + They are a subset of which can be checked on a type and therefore this mask has to be applied to check only for options. + + + + + Initializes a new instance of the class. + + is . + + + + Maintains the framework-specific services. + + + + + Factory for starting a timer on demand. + + + + + Finds the first index at which the does not match the + string anymore, accounting for the specified . + + + + + Gets the quoted three characters at the specified index of a string, including the index itself. + + + + + Replaces all numeric indices from a path like "property[0].nested" and returns "property[].nested" + + + + + Determines whether a string contains a specific index like `[0]` instead of just `[]`. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Joins a string with one or more other strings using a specified separator. + + + Any string that is empty (including the original string) is ignored. + + + + + Changes the first character of a string to uppercase. + + + + + Appends tab character at the beginning of each line in a string. + + + + + + Counts the number of times a substring appears within a string by using the specified . + + The string to search in. + The substring to search for. + The option to use for comparison. + + + + Determines whether two objects refer to the same + member. + + + + + Returns the interfaces that the implements that are concrete + versions of the . + + + + + Finds the property by a case-sensitive name. + + + Returns if no such property exists. + + + + + Finds the field by a case-sensitive name. + + + Returns if no such property exists. + + + + + Check if the type is declared as abstract. + + Type to be checked + + + + Check if the type is declared as sealed. + + Type to be checked + + + + Check if the type is declared as static. + + Type to be checked + + + + Check if the type has a human-readable name. + + false for compiler generated type names, otherwise true. + + + + If the type provided is a nullable type, gets the underlying type. Returns the type itself otherwise. + + + + + Helper class to get all the public and internal fields and properties from a type. + + + + + Defines the modes in which custom implementations of + are detected as configured through . + + + + + Detection is disabled. + + + + + Only custom value formatters exposed through the assembly set in + are detected. + + + + + All custom value formatters in any assembly loaded in the current will be detected. + + + + + Marks a method as an extension to Fluent Assertions that either uses the built-in assertions + internally, or directly uses the Execute.Assertion. + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The object that is being extended. + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The object that is being extended. + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection has the same number of elements as . + + The object that is being extended. + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of columns as + . + + The object that is being extended. + The other with the unexpected number of + elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataRow objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of rows as + . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of rows as + . + + The other with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataSet objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Contains an extension method for custom assertions in unit tests related to DataTable objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency. + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + + Testing of any property can be overridden using the callback. Exclude specific properties using + . + + + If or a related function is + used and the exclusion matches the subject , then the equivalency test will never + fail. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of columns. + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. This can be overridden + by using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table (which also excludes the related field data in + objects) using or a related function. + + + + You can use + and related functions to exclude properties on other related System.Data types. + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of tables. + + + + + Asserts that an instance of contains exactly the expected number of tables in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of contains a table with the expected name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has tables with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has tables with all of the supplied expected table names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. This can be overridden by using the overload that takes + . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. This setting applies to all types recursively tested + as part of the . + + + Exclude specific properties using . + Exclude specific tables within the data set using + or a related function. You can also indicate that columns should be excluded within the + objects recursively tested as part of the using + or a related function. The method + can be used to exclude columns across all objects in the that share + the same name. + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of rows and columns. + + + + + Asserts that an instance of contains exactly the expected number of rows in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. This can be overridden by + using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table using + or a related function -- this excludes both the objects in + and associated field data in objects within the . + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides access to configuration for equivalency assertions on System.Data types (, + , , , , + ). + + The System.Data type being tested for equivalency. + + + + Specifies that the subject and the expectation should not be considered non-equivalent if their exact data types do not match. + + + + + Specifies that when comparing , columns that are unmatched between the subject and the expectation should be ignored. + + + + + Specifies the that should be used when comparing . By default, rows are matched by their index in the collection. But, if the has a set, it is possible to use to indicate that rows should be matched by their primary key values, irrespective of their index within the collection. + + The to use when comparing between the subject and the expectation. + + + + Specifies that when comparing objects that are in the state, only the current field values should be compared. Original field values are excluded from comparison. This only affects comparisons where both the subject and the expectation are in the modified state. + + + + + Excludes members of the objects under test from comparison by means of a predicate that selects members based on objects describing them. + + A functor that returns true if the parameter refers to a member that should be excluded. + + + + Excludes a member of the objects under test from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes an entire table from comparison. When comparing objects, if a table is present by the supplied name, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + The value for for which tables within a should be ignored. + + + + Excludes tables from comparison using names in an set. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An of values for for which tables within a should be ignored. + + + + Excludes tables from comparison using an array of table names. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An array of values for for which tables within a should be ignored. + + + + Excludes a column from comparison by . The column to be excluded is matched by the name of its associated and its own . + + A object that specifies which column should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes a column from comparison by the name of its associated and its own . + + The value for for which columns should be ignored. + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Exclude an enumerable set of columns from comparison by . For each item in the enumeration, the column to be excluded is matched by the name of its associated and its own . + + An object that specifies which column(s) should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by . For each element in the array, the column to be excluded is matched by the name of its associated and its own . + + An array of objects that specify which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an enumerable set of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Indicates how objects from different objects should be matched + up for equivalency comparisons. + + + + + Indicates that objects should be matched up by their index within the + collection. This is the default. + + + + + Indicates that objects should be matched up by the values they have for + the table's . For this to work, the rows must be from + objects with exactly equivalent + configuration. + + + + + Contains an extension method for custom assertions in unit tests related to Enum objects. + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Represents a mutable collection of equivalency steps that can be reordered and/or amended with additional + custom equivalency steps. + + + + + Adds a new after any of the built-in steps, with the exception of the final + . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Adds a new right after the specified . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new before any of the built-in steps. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new just before the . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all instances of the specified from the current step. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes each and every built-in . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all custom s. + + + This method should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Gets the value of the subject object graph. + + + + + Gets the value of the expected object graph. + + + + + Gets the run-time type of the current expectation object. + + + + + Returns either the run-time or compile-time type of the expectation based on the options provided by the caller. + + + If the expectation is a nullable type, it should return the type of the wrapped object. + + + + + Collects the members that need to be converted by the . + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Indication of how cyclic references should be handled when validating equality of nested properties. + + + + + Cyclic references will be ignored. + + + + + Cyclic references will result in an exception. + + + + + The object overrides , so use that. + + + + + The object does not seem to override , so compare by members + + + + + Compare using , whether or not the object overrides it. + + + + + Compare the members, regardless of an override exists or not. + + + + + Represents the run-time type-specific behavior of a structural equivalency assertion. + + + + + Excludes the specified (nested) member from the structural equality check. + + + + + Selects a collection to define exclusions at. + Allows to navigate deeper by using . + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Causes the collection identified by to be compared in the order + in which the items appear in the expectation. + + + + + Causes the collection identified by to be compared ignoring the order + in which the items appear in the expectation. + + + + + Creates a new set of options based on the current instance which acts on a a collection of the . + + + + + Maps a (nested) property or field of type to + a (nested) property or field of using lambda expressions. + + A field or property expression indicating the (nested) member to map from. + A field or property expression indicating the (nested) member to map to. + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are ignored. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a (nested) property or field of the expectation to a (nested) property or field of the subject using a path string. + + + A field or property path indicating the (nested) member to map from in the format Parent.Child.Collection[].Member. + + + A field or property path indicating the (nested) member to map to in the format Parent.Child.Collection[].Member. + + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are not allowed + and must be written as "[]". If the types of the members are different, the usual logic applies depending or not + if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using lambda expressions. + + A field or property expression indicating the member to map from. + A field or property expression indicating the member to map to. + + Only direct members of and can be + mapped to each other. Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using member names. + + A field or property name indicating the member to map from. + A field or property name indicating the member to map to. + + Only direct members of and can be + mapped to each other, so no . or [] are allowed. + Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Represents the run-time type-agnostic behavior of a structural equivalency assertion. + + + + + Convenient implementation of that will only invoke + + + + + Implements , but only gets called when the expected type matches . + + + + + Provides information on a particular property during an assertion for structural equality of two object graphs. + + + + + Is responsible for validating the equivalency of a subject with another object. + + + + + Ensures that all the rules remove the collection index from the path before processing it further. + + + + + Keeps track of objects and their location within an object graph so that cyclic references can be detected + and handled upon. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + The behavior of a cyclic reference is determined by the parameter. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an object tracked by the including it's location within an object graph. + + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . + 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + A specialized type of that represents a field of an object in a structural equivalency assertion. + + + + + Allows deferred fetching of the subject ID. + + + + + Provides the required information for executing an equality assertion between a subject and an expectation. + + The type of the subject. + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + Gets the value of the + + + + + Gets the value of the expectation object that was matched with the subject using a . + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Provides the run-time details of the class. + + + + + Gets an ordered collection of selection rules that define what members (e.g. properties or fields) are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation properties. + + + + + Gets a value indicating whether or not the assertion must perform a deep comparison. + + + + + Gets a value indicating whether recursion is allowed to continue indefinitely. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By default, + ordering is irrelevant. + + + + + Contains the rules for what properties to run an auto-conversion. + + + + + Gets value indicating how the enums should be compared. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets a value indicating whether the runtime type of the expectation should be used rather than the declared type. + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets a value indicating whether members on the subject marked with [] + and should be treated as though they don't exist. + + + + + Gets a value indicating whether members on the expectation marked with [] + and should be excluded. + + + + + Gets a value indicating whether records should be compared by value instead of their members + + + + + Gets the currently configured tracer, or if no tracing was configured. + + + + + Determines the right strategy for evaluating the equality of objects of this type. + + + + + Defines a step in the process of comparing two object graphs for structural equivalency. + + + + + Executes an operation such as an equivalency assertion on the provided . + + + Should return if the subject matches the expectation or if no additional assertions + have to be executed. Should return otherwise. + + + May throw when preconditions are not met or if it detects mismatching data. + + + + + Provides information on a particular property or field during an assertion for structural equality of two object graphs. + + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + A formatted phrase and the placeholder values explaining why the assertion is needed. + + + + + Gets an object that can be used by the equivalency algorithm to provide a trace when the + option is used. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + + + Creates a context from the current object intended to assert the equivalency of a nested member. + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a deep clone of the current context. + + + + + Runs a deep recursive equivalency assertion on the provided . + + + + + Exposes information about an object's member + + + + + Gets the type that declares the current member. + + + + + Gets the type that was used to determine this member. + + + + + Gets the value of the member from the provided + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Gets a value indicating whether the member is browsable in the source code editor. This is controlled with + . + + + + + Represents a field or property in an object graph. + + + + + Gets the name of the current member. + + + + + Gets the type of this member. + + + + + Gets the type that declares the current member. + + + + + Gets the full path from the root object until and including the current node separated by dots. + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Represents a rule that defines how to map the selected members of the expectation object to the properties + of the subject. + + + + + Attempts to find a member on the subject that should be compared with the + during a structural equality. + + + Whether or not a match is required or optional is up to the specific rule. If no match is found and this is not an issue, + simply return . + + + The of the subject's member for which a match must be found. Can never + be . + + + The subject object for which a matching member must be returned. Can never be . + + + + + Returns the of the property with which to compare the subject with, or + if no match was found. + + + + + Represents a rule that defines which members of the expectation to include while comparing + two objects for structural equality. + + + + + Gets a value indicating whether this rule should override the default selection rules that include all members. + + + + + Adds or removes properties or fields to/from the collection of members that must be included while + comparing two objects for structural equality. + + + The node within the graph from which to select members. + + + A collection of members that was pre-populated by other selection rules. Can be empty. + Provides auxiliary information such as the configuration and such. + + The collection of members after applying this rule. Can contain less or more than was passed in. + + + + + Represents a node in the object graph that is being compared as part of a structural equivalency check. + This can be the root object, a collection item, a dictionary element, a property or a field. + + + + + The name of the variable on which a structural equivalency assertion is executed or + the default if reflection failed. + + + + + Gets the name of this node. + + + "Property2" + + + + + Gets the type of this node, e.g. the type of the field or property, or the type of the collection item. + + + + + Gets the type of the parent node, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the path from the root object UNTIL the current node, separated by dots or index/key brackets. + + + "Parent[0].Property2" + + + + + Gets the full path from the root object up to and including the name of the node. + + + "Parent[0]" + + + + + Gets a zero-based number representing the depth within the object graph + + + The root object has a depth of 0, the next nested object a depth of 1, etc. + See also this article + + + + + Gets the path including the description of the subject. + + + "property subject.Parent[0].Property2" + + + + + Gets a value indicating whether the current node is the root. + + + + + Gets a value indicating if the root of this graph is a collection. + + + + + Represents an object, dictionary key pair, collection item or member in an object graph. + + + + + Gets the type of the object + + + + + Gets the type of the parent, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the full path from the root object until the current node separated by dots. + + + + + Gets the compile-time type of the current object. If the current object is not the root object and the type is not , + then it returns the same as the property does. + + + + + Gets the run-time type of the current object. + + + + + Defines a rule that is used to determine whether the order of items in collections is relevant or not. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a member name and the target type. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a nested member path in the form of "Parent.NestedCollection[].Member" + + + + + Initializes a new instance of the class. + + is . + is empty. + is . + is empty. + + + + Requires the subject to have a member with the exact same name as the expectation has. + + + + + 2 + + + + Finds a member of the expectation with the exact same name, but doesn't require it. + + + + + 2 + + + + Provides contextual information to an . + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets either the compile-time or run-time type depending on the options provided by the caller. + + + + + Determines which members are included in the equivalency assertion + + + + + Supports recursively comparing two multi-dimensional arrays for equivalency using strict order for the array items + themselves. + + + + + The selected path starting at the first . + + + + + Selects a nested property to exclude. This ends the chain. + + + + + Adds the selected collection to the chain. + + + + + Collection of s. + + + + + Initializes a new collection of ordering rules. + + + + + Initializes a new collection of ordering rules based on an existing collection of ordering rules. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Determines whether the rules in this collection dictate strict ordering during the equivalency assertion on + the collection pointed to by . + + + + + Ordering rule that ensures that byte arrays are always compared in strict ordering since it would cause a + severe performance impact otherwise. + + + + + An ordering rule that basically states that the order of items in all collections is important. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Represents a rule for determining whether or not a certain collection within the object graph should be compared using + strict ordering. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + A specialized type of that represents a property of an object in a structural equivalency assertion. + + + + + Selection rule that adds all public fields of the expectation + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that adds all public properties of the expectation. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that removes a particular property from the structural comparison. + + + + + Selection rule that removes a particular member from the structural comparison based on a predicate. + + + + + 2 + + + + Selection rule that includes a particular property in the structural comparison. + + + + + Selection rule that includes a particular member in the structural comparison. + + + + + 2 + + + + Represents a selection context of a nested property + + + + + Represents the run-time behavior of a structural equivalency assertion. + + + + + Creates an instance of the equivalency assertions options based on defaults previously configured by the caller. + + + + + Gets an ordered collection of selection rules that define what members are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation members. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By + default, + ordering is irrelevant. + + + + + Gets value indicating whether the equality check will include nested collections and complex types. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Causes inclusion of only public properties of the subject as far as they are defined on the declared type. + + + This clears all previously registered selection rules. + + + + + Causes inclusion of only public properties of the subject based on its run-time type rather than its declared type. + + + This clears all previously registered selection rules. + + + + + Instructs the comparison to include public fields. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal fields. + + + + + Instructs the comparison to exclude fields. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to include public properties. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal properties. + + + + + Instructs the comparison to exclude properties. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to exclude non-browsable members in the expectation (members set to + ). It is not required that they be marked non-browsable in the subject. Use + to ignore non-browsable members in the subject. + + + + + Instructs the comparison to treat non-browsable members in the subject as though they do not exist. If you need to + ignore non-browsable members in the expectation, use . + + + + + Instructs the comparison to respect the expectation's runtime type. + + + + + Instructs the comparison to respect the expectation's declared type. + + + + + Excludes a (nested) property based on a predicate from the structural equality check. + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Tries to match the members of the expectation with equally named members on the subject. Ignores those + members that don't exist on the subject and previously registered matching rules. + + + + + Requires the subject to have members which are equally named to members on the expectation. + + + + + Overrides the comparison of subject and expectation to use provided + when the predicate is met. + + + The assertion to execute when the predicate is met. + + + + + Causes the structural equality comparison to recursively traverse the object graph and compare the fields and + properties of any nested objects and objects in collections. + + + This is the default behavior. You can override this using . + + + + + Stops the structural equality check from recursively comparing the members any nested objects. + + + If a property or field points to a complex type or collection, a simple call will + be done instead of recursively looking at the properties or fields of the nested object. + + + + + Causes the structural equality check to ignore any cyclic references. + + + By default, cyclic references within the object graph will cause an exception to be thrown. + + + + + Disables limitations on recursion depth when the structural equality check is configured to include nested objects + + + + + Clears all selection rules, including those that were added by default. + + + + + Clears all matching rules, including those that were added by default. + + + + + Adds a selection rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds a matching rule to the ones already added by default, and which is evaluated before all existing rules. + + + + + Adds an ordering rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds an equivalency step rule to the ones already added by default, and which is evaluated before previous + user-registered steps + + + + + Ensures the equivalency comparison will create and use an instance of + that implements , any time + when a property is of type . + + + + + Ensures the equivalency comparison will use the specified implementation of + any time when a property is of type . + + + + + Causes all collections to be compared in the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared in the order + in which the items appear in the expectation. + + + + + Causes all collections - except bytes - to be compared ignoring the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared ignoring the order + in which the items appear in the expectation. + + + + + Causes to compare Enum properties using the result of their ToString method. + + + By default, enums are compared by value. + + + + + Causes to compare Enum members using their underlying value only. + + + This is the default. + + + + + Ensures records by default are compared by value instead of their members. + + + + + Ensures records by default are compared by their members even though they override + the method. + + + This is the default. + + + + + Marks the as a type that should be compared by its members even though it may override + the method. + + + + + Marks as a type that should be compared by its members even though it may override + the method. + + is . + + + + Marks the as a value type which must be compared using its + method, regardless of it overriding it or not. + + + + + Marks as a value type which must be compared using its + method, regardless of it overriding it or not. + + is . + + + + Enables tracing the steps the equivalency validation followed to compare two graphs. + + + + + Instructs the equivalency comparison to try to convert the values of + matching properties before running any of the other steps. + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Defines additional overrides when used with + + + + + Allows overriding the way structural equality is applied to (nested) objects of type + + + + + + Allows overriding the way structural equality is applied to particular members. + + + A predicate based on the of the subject that is used to identify the property for which + the + override applies. + + + + + Represents a collection of assertion results obtained through a . + + + + + Adds the failures (if any) resulting from executing an assertion within a + identified by a key. + + + + + Returns the closest match compared to the set identified by the provided or + an empty array if one of the results represents a successful assertion. + + + The closest match is the set that contains the least amount of failures, or no failures at all, and preferably + the set that is identified by the . + + + + + Gets a value indicating whether this collection contains a set without any failures at all. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Attempts to convert the subject's property value to the expected type. + + + Whether or not the conversion is attempted depends on the . + + + + + Provides Reflection-backed meta-data information about a type implementing the interface. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface. Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface keyed to . + Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to convert an object into a dictionary typed to the and of the current . + + + if the conversion succeeded or otherwise. + + + + + Executes a single equivalency assertion on two collections, optionally recursive and with or without strict ordering. + + + + + Represents a composite equivalency step that passes the execution to all user-supplied steps that can handle the + current context. + + + + + Ensures that types that are marked as value types are treated as such. + + + + + Checks if the subject info setter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should have. + True if the subject info setter has the given access modifier, false otherwise. + + + + Checks if the subject info setter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should not have. + True if the subject info setter does not have the given access modifier, false otherwise. + + + + Checks if the subject info getter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should have. + True if the subject info getter has the given access modifier, false otherwise. + + + + Checks if the subject info getter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should not have. + True if the subject info getter does not have the given access modifier, false otherwise. + + + + Defines a function that takes the full path from the root object until the current object + in the equivalency operation separated by dots, and returns the trace message to log. + + + + + Represents an object that is used by the class to receive tracing statements on what is + happening during a structural equivalency comparison. + + + + + Writes a single line to the trace. + + + + + Starts a block that scopes an operation that should be written to the trace after the returned + is disposed. + + + + + Returns a copy of the trace. + + + + + Exposes tracing capabilities that can be used by the implementation of the equivalency algorithm + when an is provided. + + + + + Writes a single line to the currently configured . + + + If no tracer has been configured, the call will be ignored. + + + + + Starts a block that scopes an operation that will be written to the currently configured + after the returned disposable is disposed. + + + If no tracer has been configured for the , the call will be ignored. + + + + + Asserts that the thrown exception has a message that matches . + + The containing the thrown exception. + + The wildcard pattern with which the exception message is matched, where * and ? have special meanings. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + The containing the thrown exception. + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Represents the default exception in case no test framework is configured. + + + + + Represents an implicit or explicit scope within which multiple assertions can be collected. + + + This class is supposed to have a very short life time and is not safe to be used in assertion that cross thread-boundaries + such as when using or . + + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts an unnamed scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy. + + The assertion strategy for this scope. + is . + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy and parent assertion scope + + The assertion strategy for this scope. + The parent assertion scope for this scope. + is . + + + + Gets or sets the context of the current assertion scope, e.g. the path of the object graph + that is being asserted on. The context is provided by a which + only gets evaluated when its value is actually needed (in most cases during a failure). + + + + + Gets the current thread-specific assertion scope. + + + + + + + + Exposes the options the scope will use for formatting objects in case an assertion fails. + + + + + Adds an explanation of why the assertion is supposed to succeed to the scope. + + + + + + + + + + + + + + + + + Makes assertion fail when does not match . + + The occurrence description in natural language could then be inserted in failure message by using + {expectedOccurrence} placeholder in message parameters of and its + overloaded versions. + + + defining the number of expected occurrences. + The number of actual occurrences. + + + + + + + + + + + + + + + + Gets the identity of the caller associated with the current scope. + + + + + Adds a pre-formatted failure message to the current scope. + + + + + Adds a block of tracing to the scope for reporting when an assertion fails. + + + + + Tracks a keyed object in the current scope that is excluded from the failure message in case an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. The value is only calculated on failure. + + + + + Returns all failures that happened up to this point and ensures they will not cause + to fail the assertion. + + + + + Gets data associated with the current scope and identified by . + + + + + + + + + + + Allows the scope to assume that all assertions that happen within this scope are going to + be initiated by the same caller. + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Represents a collection of data items that are associated with an . + + + + + Enables chaining multiple assertions on an . + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Enables chaining multiple assertions from a call. + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Allows chaining multiple assertion scopes together using . + + + If the parent scope has captured a failed assertion, + this class ensures that successive assertions are no longer evaluated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Helper class for verifying a condition and/or throwing a test harness specific exception representing an assertion failure. + + + + + Gets an object that wraps and executes a conditional or unconditional assertion. + + + + + Represents assertion fail reason. Contains the message and arguments for message's numbered placeholders. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 args are supported in combination with a {reason}. + + + + + + Initializes a new instance of the class. + + + + + + + + Message to be displayed in case of failed assertion. May contain numbered + -style placeholders as well as specialized placeholders. + + + + + Arguments for the numbered -style placeholders of . + + + + + Throws a generic exception in case no other test harness is detected. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Represents a chaining object returned from to continue the assertion using + an object returned by a selector. + + + + + Specify the condition that must be satisfied upon the subject selected through a prior selector. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + The condition will not be evaluated if the prior assertion failed, + nor will throw any exceptions. + + is . + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + is . + + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + + + Allows to safely select the subject for successive assertions. + + + Selector which result is passed to successive calls to . + + + + + Specify the condition that must be satisfied. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + Messages may contain a few specialized placeholders. For instance, {reason} will be replaced with the reason + of the assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + will not be called unless the assertion is not met. + + Function returning object on demand. Called only when the assertion is not met. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + , + but postpones evaluation of the formatting arguments until the assertion really fails. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional lazily evaluated arguments to any numbered placeholders + + + + Specify the reason why you expect the condition to be . + + + A formatted phrase compatible with explaining why the condition should + be satisfied. If the phrase does not start with the word because, it is prepended to the message. + + If the format of or is not compatible with + , then a warning message is returned instead. + + + + Zero or more values to use for filling in any compatible placeholders. + + + + + Clears the expectation set by . + + + + + Sets the expectation part of the failure message when the assertion is not met. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Defines the name of the subject in case this cannot be extracted from the source code. + + + + + Forces the formatters, that support it, to add the necessary line breaks. + + + This is just shorthand for modifying the property. + + + + + Discards and returns the failures that happened up to now. + + + + + Defines a strategy for handling failures in a . + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Custom version of ICloneable that works on all frameworks. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an abstraction of a particular test framework such as MSTest, nUnit, etc. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Encapsulates expanding the various placeholders supported in a failure message. + + + + + Represents the reason for a structural equivalency assertion. + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Implements a wrapper around all supported test frameworks to throw the correct assertion exception. + + + + + Implements the XUnit (version 2) test framework adapter. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ new DateTime(2011, 3, 10)
+
+ you can write 3.March(2011)
+
+ Or even
+
+ 3.March(2011).At(09, 30) +
+ +
+ + + Returns a new value for the specified and + in the month January. + + + + + Returns a new value for the specified and + in the month February. + + + + + Returns a new value for the specified and + in the month March. + + + + + Returns a new value for the specified and + in the month April. + + + + + Returns a new value for the specified and + in the month May. + + + + + Returns a new value for the specified and + in the month June. + + + + + Returns a new value for the specified and + in the month July. + + + + + Returns a new value for the specified and + in the month August. + + + + + Returns a new value for the specified and + in the month September. + + + + + Returns a new value for the specified and + in the month October. + + + + + Returns a new value for the specified and + in the month November. + + + + + Returns a new value for the specified and + in the month December. + + + + + Returns a new value for the specified and . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value that is the current before the + specified . + + + + + Returns a new value that is the current after the + specified . + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns new that uses + as its datetime and as its offset. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ TimeSpan.FromHours(12)
+
+ you can write
+
+ 12.Hours()
+
+ Or even
+
+ 12.Hours().And(30.Minutes()). +
+ +
+ + + Represents the number of ticks that are in 1 microsecond. + + + + + Represents the number of ticks that are in 1 nanosecond. + + + + + Returns a based on a number of ticks. + + + + + Returns a based on a number of ticks. + + + + + Gets the nanoseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Gets the value of the current structure expressed in whole and fractional nanoseconds. + + + + + Gets the microseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of microseconds. + + + + + Returns a based on a number of microseconds. + + + + + Gets the value of the current structure expressed in whole and fractional microseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds, and add the specified + . + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes, and add the specified + . + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours, and add the specified + . + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days, and add the specified + . + + + + + Convenience method for chaining multiple calls to the methods provided by this class. + + + 23.Hours().And(59.Minutes()) + + + + + Provides extensions to write s with fluent syntax + + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + Contains static methods to help with exception assertions on actions. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Specialized value formatter that looks for static methods in the caller's assembly marked with the + . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of spaces to indent the members of this object by. + + The default value is 3. + + + + Determines whether this instance can handle the specified value. + + The value. + + if this instance can handle the specified value; otherwise, . + + + + + Selects which members of to format. + + The of the object being formatted. + The members of that will be included when formatting this object. + The default is all non-private members. + + + + Selects the name to display for . + + The of the object being formatted. + The name to be displayed for . + The default is . + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a method that can be used to format child values from inside an . + + + Represents the path from the current location to the child value. + + + The child value to format with the configured s. + + + + + This class is used by the class to collect all the output of the (nested calls of an) into + a the final representation. + + + The will ensure that the number of lines will be limited + to the maximum number of lines provided through its constructor. It will throw + a if the number of lines exceeds the maximum. + + + + + The number of spaces that should be used by every indentation level. + + + + + Returns the number of lines of text currently in the graph. + + + + + Starts a new line with the provided text fragment. Additional text can be added to + that same line through . + + + + + Starts a new line with the provided line of text that does not allow + adding more fragments of text. + + + + + Adds a new fragment of text to the current line. + + + + + Adds a new line if there are no lines and no fragment that would cause a new line. + + + + + Inserts an empty line as the first line unless it is already. + + + + + Increases the indentation of every line written into this text block until the returned disposable is disposed. + + + The amount of spacing used for each indentation level is determined by . + + + + + Returns the final textual multi-line representation of the object graph. + + + + + Write fragments that may be on a single line or span multiple lines, + and this is not known until later parts of the fragment are written. + + + + + Write the fragment at the position the graph was in when this instance was created. + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + Write the fragment. If more lines have been added since this instance was + created then also flush the line and indent the next line. + + + + + Provides services for formatting an object being used in an assertion in a human readable format. + + + + + Is used to detect recursive calls by implementations. + + + + + A list of objects responsible for formatting the objects represented by placeholders. + + + + + Returns a human-readable representation of a particular object. + + The value for which to create a . + + Indicates whether the formatter should use line breaks when the specific supports it. + + + A that represents this instance. + + + + + Removes a custom formatter that was previously added though . + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Ensures a custom formatter is included in the chain, just before the default formatter is executed. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Tracks the objects that were formatted as well as the path in the object graph of + that object. + + + Is used to detect the maximum recursion depth as well as cyclic references in the graph. + + + + + Provides information about the current formatting action. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + Determines the depth until which the library should try to render an object graph. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + A depth of 1 will only the display the members of the root object. + + + + + Sets the maximum number of lines of the failure message. + + + + Because of technical reasons, the actual output may be one or two lines longer. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a strategy for formatting an arbitrary value into a human-readable string representation. + + + Add custom formatters using . + + + + + Indicates + whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Returns a human-readable representation of . + + The value to format into a human-readable representation + + An object to write the textual representation to. + + + Contains additional information that the implementation should take into account. + + + Allows the formatter to recursively format any child objects. + + + DO NOT CALL directly, but use + instead. This will ensure cyclic dependencies are properly detected. + Also, the may throw + an that must be ignored by implementations of this interface. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The is responsible for formatting + boolean lambda expressions. + + + + + This step simplifies the lambda expression by replacing parts of it which do not depend on the lambda parameters + with the actual values of these sub-expressions. The simplified expression is much easier to read. + E.g. "(_.Text == "two") AndAlso (_.Number == 3)" + Instead of "(_.Text == value(FluentAssertions.Specs.Collections.GenericCollectionAssertionsSpecs+c__DisplayClass122_0).twoText) AndAlso (_.Number == 3)". + + + + + This step simplifies the lambda expression by removing unnecessary parentheses for root level chain of AND operators. + E.g. (_.Text == "two") AndAlso (_.Number == 3) AndAlso (_.OtherText == "foo") + Instead of ((_.Text == "two") AndAlso (_.Number == 3)) AndAlso (_.OtherText == "foo") + This simplification is only implemented for the chain of AND operators because this is the most common predicate scenario. + Similar logic can be implemented in the future for other operators. + + + + + Expression visitor which can detect whether the expression depends on parameters. + + + + + Expression visitor which can replace constant sub-expressions with constant values. + + + + + Expression visitor which can extract sub-expressions from an expression which has the following form: + (SubExpression1) AND (SubExpression2) ... AND (SubExpressionN) + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Provides a human readable version of a generic or non-generic + including its state. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Marks a static method as a kind of for a particular type. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Contains a number of extension methods for floating point . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that an object equals another object using its implementation.
+ Verification whether returns 0 is not done here, you should use + to verify this. +
+ The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object does not equal another object using its method.
+ Verification whether returns non-zero is not done here, you should use + to verify this. +
+ The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that the subject is ranked equal to another object. I.e. the result of returns 0. + To verify whether the objects are equal you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is not ranked equal to another object. I.e. the result of returns non-zero. + To verify whether the objects are not equal according to you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range (inclusive). + + + The maximum valid value of the range (inclusive). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + + The type that the subject is supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + + The type that the subject is not supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + + + + A method to generate additional information upon comparison failures. + + The current numeric value verified to be non-null. + The value to compare the current numeric value with. + + Returns the difference between a number value and the value. + Returns `null` if the compared numbers are small enough that a difference message is irrelevant. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the XML serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value implies the specified value. + + The right hand side of the implication + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the represents a value in the . + + + The expected that the current value must represent. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + Comparison is performed using + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not exactly equal to the value. + Comparison is performed using + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the offset. + + The expected offset of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the offset. + + The offset that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent + way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is not defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum has a specified flag + + The expected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum does not have a specified flag + + The unexpected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the matches the . + + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the is successful (2xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is redirection (3xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is either client (4xx) or server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is client error (4xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified using the provided . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that a value equals using its implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using its method. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a reference type object is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current object has not been initialized yet. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current object has been initialized. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + The expected type of the object. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the . + + + The type that the subject is supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + The type that the subject is not supposed to be. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is not the . + + + The type that the subject is not supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is assignable to a variable of type . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is assignable to a variable of given . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the object is not assignable to a variable of type . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is not assignable to a variable of given . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Returns the type of the subject the assertion applies on. + It should be a user-friendly name as it is included in the failure message. + + + + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the time difference of the current is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is equal to the + specified time. + + The expected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is not equal to the + specified time. + + The unexpected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that a string is exactly the same as another string, including the casing and any leading or trailing whitespace. + + The expected string. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is not expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to be equivalent to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination literal text and wildcard of + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string starts exactly with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string starts with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string contains another (fragment of a) string. + + + The (fragment of a) string that the current string should contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains another (fragment of a) string a set amount of times. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified a set amount of times, + including any leading or trailing whitespace, with the exception of the casing. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + + + Asserts that a string does not contain another (fragment of a) string. + + + The (fragment of a) string that the current string should not contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + + + Asserts that a string does not contain the specified string, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string has the specified length. + + The expected length of the string + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor nor white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or or white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in upper casing. + + + Be careful that numbers and special characters don't have casing, so + will always fail on a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in upper casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in lower casing. + + + Be careful that numbers and special characters don't have casing, so will always fail on + a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in lower casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Dedicated class for comparing two strings and generating consistent error messages. + + + + + Gets or sets a value indicating whether the subject should not match the pattern. + + + + + Gets or sets a value indicating whether the matching process should ignore any casing difference. + + + + + Ignores the difference between environment newline differences + + + + + Provides the logic and the display text for a . + + + + + Contains a number of methods to assert that an yields the expected result. + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an asynchronous method yields the expected result. + + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current will not complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current throws an exception of type . + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of type + within a specific timeout. + + The type of exception expected to be thrown. + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + The type of exception expected to not be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Invokes the subject and measures the sync execution time. + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that a synchronous method yields the expected result. + + + + + Asserts that the current throws an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + + The type of the exception it should throw. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The delegate is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the delegate should have stopped throwing any exception. + + + The time between subsequent invocations of the delegate. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Contains a number of methods to assert that a method yields the expected result. + + + + + Contains a number of methods to assert that an is in the correct state. + + + + + Gets the exception object of the exception thrown. + + + + + Gets the exception object of the exception thrown. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that the thrown exception has a message that matches . + + + The pattern to match against the exception message. This parameter can contain a combination of literal text and + wildcard (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + + This constructor is almost exact copy of the one accepting . + The original constructor shall stay in place in order to keep backward-compatibility + and to avoid unnecessary wrapping action in . + + is . + + + + Provides methods for asserting that the execution time of an satisfies certain conditions. + + + + + Initializes a new instance of the class. + + The execution on which time must be asserted. + + + + Checks the executing action if it satisfies a condition. + If the execution runs into an exception, then this will rethrow it. + + Condition to check on the current elapsed time. + Polling stops when condition returns the expected result. + The rate at which the condition is re-checked. + The elapsed time. (use this, don't measure twice) + + + + Asserts that the execution time of the operation is less than or equal to a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is less than a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than or equal to a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is within the expected duration. + by a specified precision. + + + The expected duration. + + + The maximum amount of time which the execution time may differ from the expected duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a synchronous function yields the expected result. + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Initializes a new instance of the class. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + is . + is . + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Implements base functionality for assertions on TaskCompletionSource. + + + + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that an assembly does not reference the specified assembly. + + The assembly which should not be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an assembly references the specified assembly. + + The assembly which should be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the assembly defines a type called and . + + The namespace of the class. + The name of the class. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + Asserts that the assembly is unsigned. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + Asserts that the assembly is signed with the specified public key. + + The base-16 string representation of the public key, like "e0851575614491c6d25018fadb75". + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the position. + + The expected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an position. + + The unexpected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the length. + + The expected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an length. + + The unexpected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Extension methods for filtering a collection of types. + + + + + Filters to only include types decorated with a particular attribute. + + + + + Filters to only include types decorated with, or inherits from a parent class, a particular attribute. + + + + + Filters to only include types not decorated with a particular attribute. + + + + + Filters to only include types not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Filters to only include types where the namespace of type is exactly . + + + + + Filters to only include types where the namespace of type is starts with . + + + + + Filters to only include types that subclass the specified type, but NOT the same type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Filters to only include types that are classes. + + + + + Filters to only include types that are not classes. + + + + + Filters to only include types that are static. + + + + + Filters to only include types that are not static. + + + + + Filters to only include types that satisfies the passed. + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Extension methods for getting method and property selectors for a type. + + + + + Returns the types that are visible outside the specified . + + + + + Returns a type selector for the current . + + + + + Returns a type selector for the current . + + + + + Returns a method selector for the current . + + is . + + + + Returns a method selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Static class that allows for a 'fluent' selection of the types from an . + + + AllTypes.From(myAssembly)
+ .ThatImplement<ISomeInterface>
+ .Should()
+ .BeDecoratedWith<SomeAttribute>() +
+
+ + + Returns a for selecting the types that are visible outside the + specified . + + The assembly from which to select the types. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + The constructorInfo from which to select properties. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected member is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected member does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected method is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Allows for fluent selection of methods of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select methods. + is . + + + + Initializes a new instance of the class. + + The types from which to select methods. + is or contains . + + + + Only select the methods that are public or internal. + + + + + Only select the methods without a return value + + + + + Only select the methods with a return value + + + + + Only select the methods that return the specified type + + + + + Only select the methods that do not return the specified type + + + + + Only select the methods that are decorated with an attribute of the specified type. + + + + + Only select the methods that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the methods that are not decorated with an attribute of the specified type. + + + + + Only select the methods that are not decorated with and does not inherit from a parent class, an attribute of the specified type. + + + + + Only return methods that are abstract + + + + + Only return methods that are not abstract + + + + + Only return methods that are async. + + + + + Only return methods that are not async. + + + + + Only return methods that are static. + + + + + Only return methods that are not static. + + + + + Only return methods that are virtual. + + + + + Only return methods that are not virtual. + + + + + Select return types of the methods + + + + + The resulting objects. + + + + + Determines whether the specified method has a special name (like properties and events). + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Initializes a new instance of the class. + + The methods to assert. + is . + + + + Gets the object which value is being asserted. + + + + + Asserts that the selected methods are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods have specified . + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods don't have specified + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected property is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property returns a specified type. + + The expected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property does not return a specified type. + + The unexpected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent selection of properties of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select properties. + is . + + + + Initializes a new instance of the class. + + The types from which to select properties. + is or contains . + + + + Only select the properties that have at least one public or internal accessor + + + + + Only select the properties that are abstract + + + + + Only select the properties that are not abstract + + + + + Only select the properties that are static + + + + + Only select the properties that are not static + + + + + Only select the properties that are virtual + + + + + Only select the properties that are not virtual + + + + + Only select the properties that are decorated with an attribute of the specified type. + + + + + Only select the properties that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the properties that are not decorated with an attribute of the specified type. + + + + + Only select the properties that are not decorated with and does not inherit from a parent class an attribute of the specified type. + + + + + Only select the properties that return the specified type + + + + + Only select the properties that do not return the specified type + + + + + Select return types of the properties + + + + + The resulting objects. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Gets the object which value is being asserted. + + + + + Initializes a new instance of the class, for a number of objects. + + The properties to assert. + is . + + + + Asserts that the selected properties are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties do not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a meets certain expectations. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current is equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equal to the specified type. + + The expected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts than an instance of the subject type is assignable variable of type . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is assignable variable of given . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts than an instance of the subject type is not assignable variable of type . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is not assignable variable of given . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Creates an error message in case the specified type differs from the + type. + + + An empty if the two specified types are the same, or an error message that describes that + the two specified types are not the same. + + + + + Asserts that the current type is not equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current type is not equal to the specified type. + + The unexpected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, + the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an + attribute of type that matches the specified + . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements interface . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not implement . + + The interface that should be not implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not implement interface . + + The interface that should not be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not have a property named . + + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The interface whose member is being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current explicitly implements a method named + from interface . + + The interface whose member is being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has an indexer of type . + with parameter types . + + The type of the indexer. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an indexer that takes parameter types + . + + The expected indexer's parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a method named with parameter types + . + + The name of the method. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not expose a method named + with parameter types . + + The name of the method. + The method parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not have a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent filtering a list of types. + + + + + Initializes a new instance of the class. + + is or contains . + + + + The resulting objects. + + + + + Determines whether a type is a subclass of another type, but NOT the same type. + + + + + Determines whether a type is not a subclass of another type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Determines whether a type does not implement an interface (but is not the interface itself). + + + + + Determines whether a type is decorated with a particular attribute. + + + + + Determines whether a type is decorated with, or inherits from a parent class, a particular attribute. + + + + + Determines whether a type is not decorated with a particular attribute. + + + + + Determines whether a type is not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Determines whether the namespace of type is exactly . + + + + + Determines whether the namespace of type is exactly not . + + + + + Determines whether the namespace of type starts with . + + + + + Determines whether the namespace of type does not start with . + + + + + Filters and returns the types that are value types + + + + + Filters and returns the types that are not value types + + + + + Determines whether the type is a class + + + + + Determines whether the type is not a class + + + + + Filters and returns the types that are abstract + + + + + Filters and returns the types that are not abstract + + + + + Filters and returns the types that are sealed + + + + + Filters and returns the types that are not sealed + + + + + Filters and returns only the types that are interfaces + + + + + Filters and returns only the types that are not interfaces + + + + + Determines whether the type is static + + + + + Determines whether the type is not static + + + + + Allows to filter the types with the passed + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains a number of methods to assert that all s in a + meet certain expectations. + + + + + Initializes a new instance of the class. + + is or contains . + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected types are sealed + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the all are not sealed classes + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is in the specified . + + + The namespace that the type must be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not in the specified . + + + The namespace that the type must not be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current starts with the specified . + + + The namespace that the namespace of the type must start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current + does not starts with the specified . + + + The namespace that the namespace of the type must not start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the attribute. + + The expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the attribute, + using its implementation. + + The unexpected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a root element with the specified + name. + + The name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a root element with the specified + name. + + The full name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The full name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the + element, by using + + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the + element, using + . + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the + element, using a semantic equivalency + comparison. + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the element, using a semantic + equivalency comparison. + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an + is in the expected state./> + + + + + Initializes a new instance of the class. + + + + + + Asserts that the current has the specified + inner text. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified , + and . + + The name of the expected attribute + The namespace of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name, ignoring the namespace. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name and namespace. + + The name of the expected child element + The namespace of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the current is equivalent to the node. + + The expected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the node. + + The unexpected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Since net6.0 StringBuilder has additional overloads taking an AppendInterpolatedStringHandler + and optionally an IFormatProvider. + The overload here is polyfill for older target frameworks to avoid littering the code base with #ifs + in order to silence analyzers about dependending on the current culture instead of an invariant culture. + + + + + Specifies that null is allowed as an input even if the corresponding type disallows it. + + + + + Specifies that null is disallowed as an input even if the corresponding type allows it. + + + + + Applied to a method that will never return under any circumstance. + + + + + Specifies that the method will not return if the associated Boolean parameter is passed the specified value. + + + + + Initializes the attribute with the specified parameter value. + + + The condition parameter value. Code after the method will be considered unreachable + by diagnostics if the argument to the associated parameter matches this value. + + + + + Gets the condition parameter value. + + + + + Specifies that an output may be null even if the corresponding type disallows it. + + + + + Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter may be null. + + + + Gets the return value condition. + + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + + + Specifies that the method or property will ensure that the listed field and property + members have not-null values when returning with the specified return value condition. + + + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + + + Gets field or property member names. + + + + + Specifies that an output will not be null even if the corresponding type allows it. + Specifies that an input argument was not null when the call returns. + + + + + Specifies that the output will be non-null if the named parameter is non-null. + + + + + Initializes the attribute with the associated parameter name. + + The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null. + + + + Gets the associated parameter name. + + + + + Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it. + + + + + Initializes the attribute with the specified return value condition. + + The return value condition. If the method returns this value, the associated parameter will not be null. + + + Gets the return value condition. + + + + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + + + + + Specifies the syntax used in a string. + + + + + Initializes the with the identifier of the syntax used. + + The syntax identifier. + + + Initializes the with the identifier of the syntax used. + The syntax identifier. + Optional arguments associated with the specific syntax employed. + + + Gets the identifier of the syntax used. + + + Optional arguments associated with the specific syntax employed. + + + The syntax identifier for strings containing composite formats for string formatting. + + + The syntax identifier for strings containing date format specifiers. + + + The syntax identifier for strings containing date and time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing JavaScript Object Notation (JSON). + + + The syntax identifier for strings containing numeric format specifiers. + + + The syntax identifier for strings containing regular expressions. + + + The syntax identifier for strings containing time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing URIs. + + + The syntax identifier for strings containing XML. + + + + Used to indicate a byref escapes and is not scoped. + + + + There are several cases where the C# compiler treats a as implicitly + - where the compiler does not allow the to escape the method. + + + For example: + + for instance methods. + parameters that refer to types. + parameters. + + + + This attribute is used in those instances where the should be allowed to escape. + + + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + + + + + Represent a type can be used to index a collection either from the start or the end. + + Index is used by the C# compiler to support the new index syntax + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 } ; + int lastElement = someArray[^1]; // lastElement = 5 + + + + + Construct an Index using a value and indicating if the index is from the start or from the end. + The index value. it has to be zero or positive number. + Indicating if the index is from the start or from the end. + + If the Index constructed from the end, index value 1 means pointing at the last element and index value 0 means pointing at beyond last element. + + + + Create an Index pointing at first element. + + + Create an Index pointing at beyond last element. + + + Create an Index from the start at the position indicated by the value. + The index value from the start. + + + Create an Index from the end at the position indicated by the value. + The index value from the end. + + + Returns the index value. + + + Indicates whether the index is from the start or the end. + + + Calculate the offset from the start using the giving collection length. + The length of the collection that the Index will be used with. length has to be a positive value + + For performance reason, we don't validate the input length parameter and the returned offset value against negative values. + we don't validate either the returned offset is greater than the input length. + It is expected Index will be used with collections which always have non negative length/count. If the returned offset is negative and + then used to index a collection will get out of range exception which will be same affect as the validation. + + + + Indicates whether the current Index object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Index object is equal to another Index object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts integer number to an Index. + + + Converts the value of the current Index object to its equivalent string representation. + + + Represent a range has start and end indexes. + + Range is used by the C# compiler to support the range syntax. + + int[] someArray = new int[5] { 1, 2, 3, 4, 5 }; + int[] subArray1 = someArray[0..2]; // { 1, 2 } + int[] subArray2 = someArray[1..^0]; // { 2, 3, 4, 5 } + + + + + Represent the inclusive start index of the Range. + + + Represent the exclusive end index of the Range. + + + Construct a Range object using the start and end indexes. + Represent the inclusive start index of the range. + Represent the exclusive end index of the range. + + + Indicates whether the current Range object is equal to another object of the same type. + An object to compare with this object + + + Indicates whether the current Range object is equal to another Range object. + An object to compare with this object + + + Returns the hash code for this instance. + + + Converts the value of the current Range object to its equivalent string representation. + + + Create a Range object starting from start index to the end of the collection. + + + Create a Range object starting from first element in the collection to the end Index. + + + Create a Range object starting from first element to the end. + + + Calculate the start offset and length of range object using a collection length. + The length of the collection that the range will be used with. length has to be a positive value. + + For performance reason, we don't validate the input length parameter against negative values. + It is expected Range will be used with collections which always have non negative length/count. + We validate the range is inside the length scope though. + + + + + An attribute that allows parameters to receive the expression of other parameters. + + + + + Initializes a new instance of the class. + + The condition parameter value. + + + + Gets the parameter name the expression is retrieved from. + + + + + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + + + + + Creates a new instance of the type. + + The name of the feature to indicate. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Indicates which arguments to a method involving an interpolated string handler should be passed to that handler. + + + + + Initializes a new instance of the class. + + The name of the argument that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Initializes a new instance of the class. + + The names of the arguments that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Gets the names of the arguments that should be passed to the handler. + + may be used as the name of the receiver in an instance method. + + + + Indicates the attributed type is to be used as an interpolated string handler. + + + + + Reserved to be used by the compiler for tracking metadata. + This class should not be used by developers in source code. + + + + + Used to indicate to the compiler that a method should be called + in its containing module's initializer. + + + When one or more valid methods + with this attribute are found in a compilation, the compiler will + emit a module initializer which calls each of the attributed methods. + + Certain requirements are imposed on any method targeted with this attribute: + - The method must be `static`. + - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc. + - The method must be parameterless. + - The method must return `void`. + - The method must not be generic or be contained in a generic type. + - The method's effective accessibility must be `internal` or `public`. + + The specification for module initializers in the .NET runtime can be found here: + https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer + + + + + Specifies that a type has required members or that a member is required. + + + + + Used to indicate to the compiler that the .locals init flag should not be set in method headers. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + +
+
diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.dll b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.dll new file mode 100644 index 0000000..04f1344 Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.dll differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.pdb b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.pdb new file mode 100644 index 0000000..e1b12ba Binary files /dev/null and b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.pdb differ diff --git a/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.xml b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.xml new file mode 100644 index 0000000..4acc70d --- /dev/null +++ b/RestApiTests/packages/FluentAssertions.6.12.0/lib/netstandard2.1/FluentAssertions.xml @@ -0,0 +1,17094 @@ + + + + FluentAssertions + + + + + Initializes a new instance of the class. + + + + + Constraint which can be returned from an assertion which matches a condition and which will allow + further matches to be performed on the matched condition as well as the parent constraint. + + The type of the original constraint that was matched + The type of the matched object which the parent constraint matched + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + + + Returns the single result of a prior assertion that is used to select a nested or collection item. + + + Just a convenience property that returns the same value as . + + + + + Contains extension methods for custom assertions in unit tests. + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + is . + is . + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Invokes the specified action on a subject so that you can chain it + with any of the assertions from + + + + + Provides methods for asserting the execution time of a method or property. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + is . + + + + Provides methods for asserting the execution time of an action. + + An action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Provides methods for asserting the execution time of an async action. + + An async action to measure the execution time of. + + Returns an object for asserting that the execution time matches certain conditions. + + is . + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection of the provided . + Should be used to assert that a method that uses the keyword throws a particular exception. + + The object that exposes the method or property. + A reference to the method or property to force enumeration of. + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current of . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns an assertions object that provides methods for asserting the state of a . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current nullable . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + is . + + + + Returns a object + that can be used to assert the current . + + + + + + Returns a object that can be used to assert the current . + + + + + + Returns a object that can be used to assert the methods returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + + Returns a object that can be used to assert the properties returned by the + current . + + + is . + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current System.Func{Task{T}}. + + + + + Returns a object that can be used to assert the + current . + + + + + Returns a object that can be used to assert the + current . + + + + + Starts monitoring for its events. + + The object for which to monitor the events. + + An optional delegate that returns the current date and time in UTC format. + Will revert to if no delegate was provided. + + is . + + + + Safely casts the specified object to the type specified through . + + + Has been introduced to allow casting objects without breaking the fluent API. + + The to cast to + + + + + + + + + + + + + + + + You are asserting the itself. Remove the Should() method directly following And. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Holds any global options that control the behavior of FluentAssertions. + + + + + Allows configuring the defaults used during a structural equivalency assertion. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + An action that is used to configure the defaults. + + is . + + + + Represents a mutable plan consisting of steps that are executed while asserting a (collection of) object(s) + is structurally equivalent to another (collection of) object(s). + + + Members on this property are not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Gets the default formatting options used by the formatters in Fluent Assertions. + + + Members on this property should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Please note that this assertion cannot identify whether the previous assertion was successful or not. + In case it was not successful and it is running within an active + there is no current result to compare with. + So, this extension will compare with the default value. + + + + + Asserts that the completed provides the specified result. + + The containing the . + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Remove all whitespace until we find a non-whitespace character + + + + + Only keep one whitespace character if more than one follow each other. + + + + + Represents a stateful parsing strategy that is used to help identify the "caller" to use in an assertion message. + + + The strategies will be instantiated at the beginning of a "caller identification" task, and will live until + the statement can be identified (and thus some are stateful). + + + + + Given a symbol, the parsing strategy should add/remove from the statement if needed, and then return + - InProgress if the symbol isn't relevant to the strategies (so other strategies can be tried) + - Handled if an action has been taken (and no other strategies should be used for this symbol) + - Done if the statement is complete, and thus further symbols should be read. + + + + + Returns true if strategy is in the middle of a context (ex: strategy read "/*" and is waiting for "*/" + + + + + Used to notify the strategy that we have reached the end of the line (very useful to detect the end of + a single line comment). + + + + + Tries to extract the name of the variable or invocation on which the assertion is executed. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all elements in a collection of objects are equivalent to a given object. + + + Objects within the collection are equivalent to given object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all items in the collection are of the exact specified type + + The expected type of the objects + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + Objects within the collections are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in ascending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Expects the current collection to have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Expects the current collection to have all elements in descending order. Elements are compared + using the given lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is null or does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is a subset of the . + + An with the expected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains the specified item. + + The expectation item. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection contains at least one item that matches the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in any order. Elements are compared + using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects contains at least one object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + using their implementation. + + An with the expected elements. + + + + Expects the current collection to contain the specified elements in the exact same order, and to be consecutive. + + + Elements are compared using their implementation. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection contains at least one element that is assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain any elements that are assignable to the given type. + + + Object type that should not be in collection + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain only a single item matching the specified . + + The predicate that will be used to find the matching items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection ends with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection ends with the specified . + + + The element that is expected to appear at the end of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their method. + + A params array with the expected elements. + + + + Asserts that two collections contain the same items in the same order, where equality is determined using a + . + + + The collection to compare the subject with. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches the supplied amount. + + The expected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection matches a condition stated by the . + + A predicate that yields the number of items that is expected to be in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection is greater than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is greater than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than or equal to the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the number of items in the collection is less than the supplied amount. + + The number to which the actual number items in the collection will be compared. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection has the supplied at the + supplied . + + The index where the element is expected + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly precedes the . + + The element that should succeed . + The expected element that should precede . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the element directly succeeds the . + + The element that should precede . + The element that should succeed . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection has the same number of elements as . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection shares one or more items with the specified . + + The with the expected shared items. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Expects the current collection not to contain all elements of the collection identified by , + regardless of the order. Elements are compared using their . + + An with the unexpected elements. + /// + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection is not ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in ascending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the value of the specified + implementation. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a collection not is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts the current collection does not have all elements in descending order. Elements are compared + using their implementation. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a collection is not ordered in descending order according to the provided lambda expression. + + + A lambda expression that should be used to determine the expected ordering between two objects. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that the collection is not null and contains at least 1 item. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection is not a subset of the . + + An with the unexpected superset. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current collection does not contain the supplied item. + + The element that is not expected to be in the collection + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the collection does not contain any items that match the predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection does not contain the supplied items. Elements are compared + using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects does not contain any object equivalent to another object. + + + Objects within the collection are equivalent to the expected object when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order, not necessarily consecutive. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and are consecutive. + + + Elements are compared using their implementation. + + A with the unexpected elements. + is . + + + + Asserts the current collection does not contain the specified elements in the exact same order and consecutively. + + + Elements are compared using their implementation. + + An with the unexpected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + The predicate when evaluated should not be null. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection not to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . + + An with the elements that are not expected. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the number of items in the collection does not match the supplied amount. + + The unexpected number of items in the collection. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection does not have the same number of elements as . + + The other collection with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not share any items with the specified . + + The to compare to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection only contains items that match a predicate. + + A predicate to match the items in the collection against. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + The predicate to group the items by. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection does not contain any duplicate items. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection contains only items which meet + the criteria provided by the inspector. + + + The element inspector, which inspects each element in turn. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements, which meet + the criteria provided by the element inspectors. + + + The element inspectors, which inspect each element in turn. The + total number of element inspectors must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + The order of the predicates does not need to match the order of the elements. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + is . + is empty. + + + + Asserts that a collection contains exactly a given number of elements which meet + the criteria provided by the element predicates. Assertion fails if it is not possible + to find a one-to-one mapping between the elements of the collection and the predicates. + + + The predicates that the elements of the collection must match. + The total number of predicates must exactly match the number of elements in the collection. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using their . + + + A collection of expected elements. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current collection starts with same elements in the same order as the collection identified by + . Elements are compared using . + + + A collection of expected elements. + + + A equality comparison the is used to determine whether two objects should be treated as equal. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection starts with the specified . + + + The element that is expected to appear at the start of the collection. The object's + is used to compare the element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Expects the current collection to have all elements in the specified . + Elements are compared using their implementation. + + + + + Asserts the current collection does not have all elements in ascending order. Elements are compared + using their implementation. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current dictionary contains all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The expected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts the current dictionary not to contain all the same key-value pairs as the + specified dictionary. Keys and values are compared using + their implementation. + + The unexpected dictionary + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that two dictionaries are equivalent. + + + The values within the dictionaries are equivalent when both object graphs have equally named properties with the same + value, irrespective of the type of those objects. Two properties are also equal if one type can be converted to another + and the result is equal. + The type of the values in the dictionaries are ignored as long as both dictionaries contain the same keys and + the values for each key are structurally equivalent. Notice that actual behavior is determined by the global + defaults managed by the class. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the dictionary contains the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + + + Asserts that the dictionary contains all of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The expected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified key. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected key + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + + + Asserts that the dictionary does not contain any of the specified keys. + Key comparison will honor the equality comparer of the dictionary when applicable. + + The unexpected keys + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the dictionary contains the specified value. Values are compared using + their implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + + + Asserts that the dictionary contains all of the specified values. Values are compared using + their implementation. + + The expected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns an enumerable consisting of all items in the first collection also appearing in the second. + + Enumerable.Intersect is not suitable because it drops any repeated elements. + + + + Asserts that the current dictionary does not contain the specified value. + Values are compared using their implementation. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + + + Asserts that the dictionary does not contain any of the specified values. Values are compared using + their implementation. + + The unexpected values + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected key/value pairs. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary contains the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The expected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary contains the specified for the supplied + . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected key/value pairs + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current dictionary does not contain the specified . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The unexpected + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current dictionary does not contain the specified for the + supplied . + Key comparison will honor the equality comparer of the dictionary when applicable. + Values are compared using their implementation. + + The key for which to validate the value + The value to validate + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Stores an element's value and index in the maximum matching problem. + + The type of the element value. + + + + The index of the element in the maximum matching problem. + + + + + The value of the element in the maximum matching problem. + + + + + The class defines input for the maximum matching problem. + The input is a list of predicates and a list of elements. + The goal of the problem is to find such mapping between predicates and elements that would maximize number of matches. + A predicate can be mapped with only one element. + An element can be mapped with only one predicate. + + The type of elements which must be matched with predicates. + + + + The class defines the solution (output) for the maximum matching problem. + See documentation of for more details. + + The type of elements which must be matched with predicates. + + + + The class encapsulates the algorithm + for solving the maximum matching problem (see ). + See https://en.wikipedia.org/wiki/Maximum_cardinality_matching for more details.
+ A simplified variation of the Ford-Fulkerson algorithm is used for solving the problem. + See https://en.wikipedia.org/wiki/Ford%E2%80%93Fulkerson_algorithm for more details. +
+
+ + + Solves the maximum matching problem; + + + + + To find a solution which contains the specified predicate and increases the total number of matches + we:
+ - Search for a free element which matches the specified predicate.
+ - Or take over an element which was previously matched with another predicate and repeat the procedure for the previously matched predicate.
+ - We are basically searching for a path in the graph of matches between predicates and elements which would start at the specified predicate + and end at an unmatched element.
+ - Breadth first search used to traverse the graph.
+
+
+ + + Stores a predicate's expression and index in the maximum matching problem. + + The type of the element values in the maximum matching problems. + + + + The index of the predicate in the maximum matching problem. + + + + + The expression of the predicate. + + + + + Determines whether the predicate matches the specified element. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Expects the current collection to contain all the same elements in the same order as the collection identified by + . Elements are compared using their . To ignore + the element order, use instead. + + An with the expected elements. + + + + Asserts that a collection of string is equivalent to another collection of strings. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a collection of objects is equivalent to another collection of objects. + + + The two collections are equivalent when they both contain the same strings in any order. To assert that the elements + are in the same order, use instead. + + An with the expected elements. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all strings in a collection of strings are equal to the given string. + + An expected . + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the collection contains at least one string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that the collection does not contain any string that matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in ascending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + . + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + + + + Asserts that a subsequence is ordered in descending order according to the value of the specified + and implementation. + + + A lambda expression that references the property that should be used to determine the expected ordering. + + + The object that should be used to determine the expected ordering. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Empty and single element collections are considered to be ordered both in ascending and descending order at the same time. + + is . + + + + Initializes a new instance of the class. + + + + + Gets the value of the object referred to by the key. + + + + + Default implementation for for production use. + + + + + Defines the key for the configuration of the test framework to be assumed in FluentAssertions. + + + + + Gets the active configuration, + + + + + Gets or sets the mode on how Fluent Assertions will find custom implementations of + . + + + + + Gets or sets the assembly name to scan for custom value formatters in case + is set to . + + + + + Gets or sets the name of the test framework to use. + + + If no name is provided, Fluent Assertions + will try to detect it by scanning the currently loaded assemblies. If it can't find a suitable provider, + and the run-time platform supports it, it'll try to get it from the . + + + + + Converts an existing to a but normalizes the + so that comparisons of converted instances retain the UTC/local agnostic behavior. + + + + + Searches for the first different element in two sequences using specified + + The type of the elements of the sequence. + The type of the elements of the sequence. + The first sequence to compare. + The second sequence to compare. + Method that is used to compare 2 elements with the same index. + Index at which two sequences have elements that are not equal, or -1 if enumerables are equal + + + + Gets the of an returning a property. + + is . + + + + Gets a dotted path of property names representing the property expression, including the declaring type. + + + E.g. Parent.Child.Sibling.Name. + + is . + + + + Validates that the expression can be used to construct a . + + is . + + + + Workaround to make dotnet_code_quality.null_check_validation_methods work + https://github.com/dotnet/roslyn-analyzers/issues/3451#issuecomment-606690452 + + + + + Represents an abstract timer that is used to make some of this library's timing dependent functionality better testable. + + + + + Will block the current thread until a time delay has passed. + + The time span to wait before completing the returned task + + + + Creates a task that will complete after a time delay. + + The time span to wait before completing the returned task + + A task that represents the time delay. + + + + + Creates a timer to measure the time to complete some arbitrary executions. + + + + + Used to provide access to the underlying for an object that wraps an underlying + collection. + + Collection type. + + + + A smarter enumerator that can provide information about the relative location (current, first, last) + of the current item within the collection without unnecessarily iterating the collection. + + + + + Abstracts a stopwatch so we can control time in unit tests. + + + + + The time elapsed since the timer was created through . + + + + + Encapsulates a dotted candidate to a (nested) member of a type as well as the + declaring type of the deepest member. + + + + + Initializes a new instance of the class. + + is . + + + + Initializes a new instance of the class. + + is . + + + + Gets a value indicating whether the current object represents a child member of the + or that it is the parent of that candidate. + + + + + Determines whether the current path is the same as when ignoring any specific indexes. + + + + + Gets a value indicating whether the current path contains an indexer like `[1]` instead of `[]`. + + + + + Returns a copy of the current object as if it represented an un-indexed item in a collection. + + + + + Returns the name of the member the current path points to without its parent path. + + + + + Compares two segments of a . + Sets the equal with any numeric index qualifier. + All other comparisons are default string equality. + + + + + Compares two segments of a . + + Left part of the comparison. + Right part of the comparison. + True if segments are equal, false if not. + + + + A sum of all possible . It's needed to calculate what options were used when decorating with . + They are a subset of which can be checked on a type and therefore this mask has to be applied to check only for options. + + + + + Initializes a new instance of the class. + + is . + + + + Maintains the framework-specific services. + + + + + Factory for starting a timer on demand. + + + + + Finds the first index at which the does not match the + string anymore, accounting for the specified . + + + + + Gets the quoted three characters at the specified index of a string, including the index itself. + + + + + Replaces all numeric indices from a path like "property[0].nested" and returns "property[].nested" + + + + + Determines whether a string contains a specific index like `[0]` instead of just `[]`. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Replaces all characters that might conflict with formatting placeholders with their escaped counterparts. + + + + + Joins a string with one or more other strings using a specified separator. + + + Any string that is empty (including the original string) is ignored. + + + + + Changes the first character of a string to uppercase. + + + + + Appends tab character at the beginning of each line in a string. + + + + + + Counts the number of times a substring appears within a string by using the specified . + + The string to search in. + The substring to search for. + The option to use for comparison. + + + + Determines whether two objects refer to the same + member. + + + + + Returns the interfaces that the implements that are concrete + versions of the . + + + + + Finds the property by a case-sensitive name. + + + Returns if no such property exists. + + + + + Finds the field by a case-sensitive name. + + + Returns if no such property exists. + + + + + Check if the type is declared as abstract. + + Type to be checked + + + + Check if the type is declared as sealed. + + Type to be checked + + + + Check if the type is declared as static. + + Type to be checked + + + + Check if the type has a human-readable name. + + false for compiler generated type names, otherwise true. + + + + If the type provided is a nullable type, gets the underlying type. Returns the type itself otherwise. + + + + + Helper class to get all the public and internal fields and properties from a type. + + + + + Defines the modes in which custom implementations of + are detected as configured through . + + + + + Detection is disabled. + + + + + Only custom value formatters exposed through the assembly set in + are detected. + + + + + All custom value formatters in any assembly loaded in the current will be detected. + + + + + Marks a method as an extension to Fluent Assertions that either uses the built-in assertions + internally, or directly uses the Execute.Assertion. + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The object that is being extended. + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The object that is being extended. + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection has the same number of elements as . + + The object that is being extended. + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of columns as + . + + The object that is being extended. + The other with the unexpected number of + elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataRow objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of rows as + . + + The other collection with the same expected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of rows as + . + + The other with the unexpected number of elements + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains an extension method for custom assertions in unit tests related to DataSet objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Contains an extension method for custom assertions in unit tests related to DataTable objects. + + + + + Returns a object that can be used to assert the + current . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Assert that the current collection of s has the same number of tables as + . + + The other with the same expected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Assert that the current collection of s does not have the same number of tables as + . + + The other with the unexpected number of tables + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency. + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data columns are equivalent when the following members have the same values: + + + AllowDBNull + AutoIncrement + AutoIncrementSeed + AutoIncrementStep + Caption + ColumnName + DataType + DateTimeMode + DefaultValue + Expression + ExtendedProperties + MaxLength + Namespace + Prefix + ReadOnly + Unique + + + + Testing of any property can be overridden using the callback. Exclude specific properties using + . + + + If or a related function is + used and the exclusion matches the subject , then the equivalency test will never + fail. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of columns. + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. This can be overridden + by using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data rows are equivalent when they contain identical field data for the row they represent, and + the following members have the same values: + + + HasErrors + RowState + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is part of a typed and is of a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table (which also excludes the related field data in + objects) using or a related function. + + + + You can use + and related functions to exclude properties on other related System.Data types. + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of tables. + + + + + Asserts that an instance of contains exactly the expected number of tables in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of contains a table with the expected name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has tables with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has tables with all of the supplied expected table names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. This can be overridden by using the overload that takes + . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data sets are equivalent when their and + collections are equivalent and the following members have the same values: + + + DataSetName + CaseSensitive + EnforceConstraints + HasErrors + Locale + Namespace + Prefix + RemotingFormat + SchemaSerializationMode + + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a custom subclass of (e.g. to provide + typed accessors for values contained by the ), then by default, + they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. This setting applies to all types recursively tested + as part of the . + + + Exclude specific properties using . + Exclude specific tables within the data set using + or a related function. You can also indicate that columns should be excluded within the + objects recursively tested as part of the using + or a related function. The method + can be used to exclude columns across all objects in the that share + the same name. + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides convenient assertion methods on a that can be + used to assert equivalency and the presence of rows and columns. + + + + + Asserts that an instance of contains exactly the expected number of rows in its collection. + + The expected number of rows. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has a column with the expected column name. + + The value that is expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An array of values expected in . + + + + Asserts that an instance of has columns with all of the supplied expected column names. + + An of string values expected in . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. This can be overridden by + using the overload that takes . + + A with the expected configuration. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an instance of is equivalent to another. + + + Data tables are equivalent when the following members have the same values: + + + TableName + CaseSensitive + DisplayExpression + HasErrors + Locale + Namespace + Prefix + RemotingFormat + + + In addition, the following collections must contain equivalent data: + + + ChildRelations + Columns + Constraints + ExtendedProperties + ParentRelations + PrimaryKey + Rows + + + The objects must be of the same type; if two objects + are equivalent in all ways, except that one is a typed that is a subclass + of , then by default, they will not be considered equivalent. + + + This, as well as testing of any property can be overridden using the callback. + By calling , two + objects of differing types can be considered equivalent. Exclude specific properties using + . + Exclude columns of the data table using + or a related function -- this excludes both the objects in + and associated field data in objects within the . + + + You can use + and related functions to exclude properties on other related System.Data types. + + + A with the expected configuration. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Provides access to configuration for equivalency assertions on System.Data types (, + , , , , + ). + + The System.Data type being tested for equivalency. + + + + Specifies that the subject and the expectation should not be considered non-equivalent if their exact data types do not match. + + + + + Specifies that when comparing , columns that are unmatched between the subject and the expectation should be ignored. + + + + + Specifies the that should be used when comparing . By default, rows are matched by their index in the collection. But, if the has a set, it is possible to use to indicate that rows should be matched by their primary key values, irrespective of their index within the collection. + + The to use when comparing between the subject and the expectation. + + + + Specifies that when comparing objects that are in the state, only the current field values should be compared. Original field values are excluded from comparison. This only affects comparisons where both the subject and the expectation are in the modified state. + + + + + Excludes members of the objects under test from comparison by means of a predicate that selects members based on objects describing them. + + A functor that returns true if the parameter refers to a member that should be excluded. + + + + Excludes a member of the objects under test from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes an entire table from comparison. When comparing objects, if a table is present by the supplied name, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + The value for for which tables within a should be ignored. + + + + Excludes tables from comparison using names in an set. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An of values for for which tables within a should be ignored. + + + + Excludes tables from comparison using an array of table names. When comparing objects, if a table is present by one of the supplied names, it is not considered for the purpose of determining equivalency. This configuration option has no effect when comparing other types of object, including . + + An array of values for for which tables within a should be ignored. + + + + Excludes a column from comparison by . The column to be excluded is matched by the name of its associated and its own . + + A object that specifies which column should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes a column from comparison by the name of its associated and its own . + + The value for for which columns should be ignored. + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Exclude an enumerable set of columns from comparison by . For each item in the enumeration, the column to be excluded is matched by the name of its associated and its own . + + An object that specifies which column(s) should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by . For each element in the array, the column to be excluded is matched by the name of its associated and its own . + + An array of objects that specify which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an enumerable set of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes an array of columns from comparison by name, within tables with a specified name./>. + + The value for for which columns should be ignored. + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + The value for for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes columns from comparison by comparing only the . If columns exist by the same name in multiple objects within a , they are all excluded from comparison. + + An array of values that specify the values for which columns should be ignored. + + When comparing objects (e.g. within ), excluded columns are ignored completely. When comparing objects, the data associated with excluded columns is ignored. + + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Excludes properties of from comparison by means of an that refers to the member in question. + + An that accesses the member to be excluded. + + + + Indicates how objects from different objects should be matched + up for equivalency comparisons. + + + + + Indicates that objects should be matched up by their index within the + collection. This is the default. + + + + + Indicates that objects should be matched up by the values they have for + the table's . For this to work, the rows must be from + objects with exactly equivalent + configuration. + + + + + Contains an extension method for custom assertions in unit tests related to Enum objects. + + + + + Returns an object that can be used to assert the + current . + + + + + Returns an object that can be used to assert the + current . + + + + + Represents a mutable collection of equivalency steps that can be reordered and/or amended with additional + custom equivalency steps. + + + + + Adds a new after any of the built-in steps, with the exception of the final + . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Adds a new right after the specified . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new before any of the built-in steps. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Inserts a new just before the . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all instances of the specified from the current step. + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes each and every built-in . + + + This method is not thread-safe and should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Removes all custom s. + + + This method should not be invoked on from within a unit test. + See the docs on how to safely use it. + + + + + Gets the value of the subject object graph. + + + + + Gets the value of the expected object graph. + + + + + Gets the run-time type of the current expectation object. + + + + + Returns either the run-time or compile-time type of the expectation based on the options provided by the caller. + + + If the expectation is a nullable type, it should return the type of the wrapped object. + + + + + Collects the members that need to be converted by the . + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + is . + + + + Indication of how cyclic references should be handled when validating equality of nested properties. + + + + + Cyclic references will be ignored. + + + + + Cyclic references will result in an exception. + + + + + The object overrides , so use that. + + + + + The object does not seem to override , so compare by members + + + + + Compare using , whether or not the object overrides it. + + + + + Compare the members, regardless of an override exists or not. + + + + + Represents the run-time type-specific behavior of a structural equivalency assertion. + + + + + Excludes the specified (nested) member from the structural equality check. + + + + + Selects a collection to define exclusions at. + Allows to navigate deeper by using . + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Causes the collection identified by to be compared in the order + in which the items appear in the expectation. + + + + + Causes the collection identified by to be compared ignoring the order + in which the items appear in the expectation. + + + + + Creates a new set of options based on the current instance which acts on a a collection of the . + + + + + Maps a (nested) property or field of type to + a (nested) property or field of using lambda expressions. + + A field or property expression indicating the (nested) member to map from. + A field or property expression indicating the (nested) member to map to. + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are ignored. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a (nested) property or field of the expectation to a (nested) property or field of the subject using a path string. + + + A field or property path indicating the (nested) member to map from in the format Parent.Child.Collection[].Member. + + + A field or property path indicating the (nested) member to map to in the format Parent.Child.Collection[].Member. + + + The members of the subject and the expectation must have the same parent. Also, indexes in collections are not allowed + and must be written as "[]". If the types of the members are different, the usual logic applies depending or not + if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using lambda expressions. + + A field or property expression indicating the member to map from. + A field or property expression indicating the member to map to. + + Only direct members of and can be + mapped to each other. Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Maps a direct property or field of type to + a direct property or field of using member names. + + A field or property name indicating the member to map from. + A field or property name indicating the member to map to. + + Only direct members of and can be + mapped to each other, so no . or [] are allowed. + Those types can appear anywhere in the object graphs that are being compared. + If the types of the members are different, the usual logic applies depending or not if conversion options were specified. + Fields can be mapped to properties and vice-versa. + + + + + Represents the run-time type-agnostic behavior of a structural equivalency assertion. + + + + + Convenient implementation of that will only invoke + + + + + Implements , but only gets called when the expected type matches . + + + + + Provides information on a particular property during an assertion for structural equality of two object graphs. + + + + + Is responsible for validating the equivalency of a subject with another object. + + + + + Ensures that all the rules remove the collection index from the path before processing it further. + + + + + Keeps track of objects and their location within an object graph so that cyclic references can be detected + and handled upon. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + The behavior of a cyclic reference is determined by the parameter. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an object tracked by the including it's location within an object graph. + + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . + 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + A specialized type of that represents a field of an object in a structural equivalency assertion. + + + + + Allows deferred fetching of the subject ID. + + + + + Provides the required information for executing an equality assertion between a subject and an expectation. + + The type of the subject. + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + Gets the value of the + + + + + Gets the value of the expectation object that was matched with the subject using a . + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Provides the run-time details of the class. + + + + + Gets an ordered collection of selection rules that define what members (e.g. properties or fields) are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation properties. + + + + + Gets a value indicating whether or not the assertion must perform a deep comparison. + + + + + Gets a value indicating whether recursion is allowed to continue indefinitely. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By default, + ordering is irrelevant. + + + + + Contains the rules for what properties to run an auto-conversion. + + + + + Gets value indicating how the enums should be compared. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets a value indicating whether the runtime type of the expectation should be used rather than the declared type. + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets a value indicating whether members on the subject marked with [] + and should be treated as though they don't exist. + + + + + Gets a value indicating whether members on the expectation marked with [] + and should be excluded. + + + + + Gets a value indicating whether records should be compared by value instead of their members + + + + + Gets the currently configured tracer, or if no tracing was configured. + + + + + Determines the right strategy for evaluating the equality of objects of this type. + + + + + Defines a step in the process of comparing two object graphs for structural equivalency. + + + + + Executes an operation such as an equivalency assertion on the provided . + + + Should return if the subject matches the expectation or if no additional assertions + have to be executed. Should return otherwise. + + + May throw when preconditions are not met or if it detects mismatching data. + + + + + Provides information on a particular property or field during an assertion for structural equality of two object graphs. + + + + + Gets the of the member that returned the current object, or if the current + object represents the root object. + + + + + A formatted phrase and the placeholder values explaining why the assertion is needed. + + + + + Gets an object that can be used by the equivalency algorithm to provide a trace when the + option is used. + + + + + Determines whether the specified object reference is a cyclic reference to the same object earlier in the + equivalency validation. + + + + + Creates a context from the current object intended to assert the equivalency of a nested member. + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a context from the current object intended to assert the equivalency of a collection item identified by . + + + + + Creates a deep clone of the current context. + + + + + Runs a deep recursive equivalency assertion on the provided . + + + + + Exposes information about an object's member + + + + + Gets the type that declares the current member. + + + + + Gets the type that was used to determine this member. + + + + + Gets the value of the member from the provided + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Gets a value indicating whether the member is browsable in the source code editor. This is controlled with + . + + + + + Represents a field or property in an object graph. + + + + + Gets the name of the current member. + + + + + Gets the type of this member. + + + + + Gets the type that declares the current member. + + + + + Gets the full path from the root object until and including the current node separated by dots. + + + + + Gets the access modifier for the getter of this member. + + + + + Gets the access modifier for the setter of this member. + + + + + Represents a rule that defines how to map the selected members of the expectation object to the properties + of the subject. + + + + + Attempts to find a member on the subject that should be compared with the + during a structural equality. + + + Whether or not a match is required or optional is up to the specific rule. If no match is found and this is not an issue, + simply return . + + + The of the subject's member for which a match must be found. Can never + be . + + + The subject object for which a matching member must be returned. Can never be . + + + + + Returns the of the property with which to compare the subject with, or + if no match was found. + + + + + Represents a rule that defines which members of the expectation to include while comparing + two objects for structural equality. + + + + + Gets a value indicating whether this rule should override the default selection rules that include all members. + + + + + Adds or removes properties or fields to/from the collection of members that must be included while + comparing two objects for structural equality. + + + The node within the graph from which to select members. + + + A collection of members that was pre-populated by other selection rules. Can be empty. + Provides auxiliary information such as the configuration and such. + + The collection of members after applying this rule. Can contain less or more than was passed in. + + + + + Represents a node in the object graph that is being compared as part of a structural equivalency check. + This can be the root object, a collection item, a dictionary element, a property or a field. + + + + + The name of the variable on which a structural equivalency assertion is executed or + the default if reflection failed. + + + + + Gets the name of this node. + + + "Property2" + + + + + Gets the type of this node, e.g. the type of the field or property, or the type of the collection item. + + + + + Gets the type of the parent node, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the path from the root object UNTIL the current node, separated by dots or index/key brackets. + + + "Parent[0].Property2" + + + + + Gets the full path from the root object up to and including the name of the node. + + + "Parent[0]" + + + + + Gets a zero-based number representing the depth within the object graph + + + The root object has a depth of 0, the next nested object a depth of 1, etc. + See also this article + + + + + Gets the path including the description of the subject. + + + "property subject.Parent[0].Property2" + + + + + Gets a value indicating whether the current node is the root. + + + + + Gets a value indicating if the root of this graph is a collection. + + + + + Represents an object, dictionary key pair, collection item or member in an object graph. + + + + + Gets the type of the object + + + + + Gets the type of the parent, e.g. the type that declares a property or field. + + + Is for the root object. + + + + + Gets the full path from the root object until the current node separated by dots. + + + + + Gets the compile-time type of the current object. If the current object is not the root object and the type is not , + then it returns the same as the property does. + + + + + Gets the run-time type of the current object. + + + + + Defines a rule that is used to determine whether the order of items in collections is relevant or not. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a member name and the target type. + + + + + Allows mapping a member (property or field) of the expectation to a differently named member + of the subject-under-test using a nested member path in the form of "Parent.NestedCollection[].Member" + + + + + Initializes a new instance of the class. + + is . + is empty. + is . + is empty. + + + + Requires the subject to have a member with the exact same name as the expectation has. + + + + + 2 + + + + Finds a member of the expectation with the exact same name, but doesn't require it. + + + + + 2 + + + + Provides contextual information to an . + + + + + Gets a value indicating whether and which properties should be considered. + + + + + Gets a value indicating whether and which fields should be considered. + + + + + Gets either the compile-time or run-time type depending on the options provided by the caller. + + + + + Determines which members are included in the equivalency assertion + + + + + Supports recursively comparing two multi-dimensional arrays for equivalency using strict order for the array items + themselves. + + + + + The selected path starting at the first . + + + + + Selects a nested property to exclude. This ends the chain. + + + + + Adds the selected collection to the chain. + + + + + Collection of s. + + + + + Initializes a new collection of ordering rules. + + + + + Initializes a new collection of ordering rules based on an existing collection of ordering rules. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Determines whether the rules in this collection dictate strict ordering during the equivalency assertion on + the collection pointed to by . + + + + + Ordering rule that ensures that byte arrays are always compared in strict ordering since it would cause a + severe performance impact otherwise. + + + + + An ordering rule that basically states that the order of items in all collections is important. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + Represents a rule for determining whether or not a certain collection within the object graph should be compared using + strict ordering. + + + + + Determines if ordering of the member referred to by the current is relevant. + + + + + A specialized type of that represents a property of an object in a structural equivalency assertion. + + + + + Selection rule that adds all public fields of the expectation + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that adds all public properties of the expectation. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Selection rule that removes a particular property from the structural comparison. + + + + + Selection rule that removes a particular member from the structural comparison based on a predicate. + + + + + 2 + + + + Selection rule that includes a particular property in the structural comparison. + + + + + Selection rule that includes a particular member in the structural comparison. + + + + + 2 + + + + Represents a selection context of a nested property + + + + + Represents the run-time behavior of a structural equivalency assertion. + + + + + Creates an instance of the equivalency assertions options based on defaults previously configured by the caller. + + + + + Gets an ordered collection of selection rules that define what members are included. + + + + + Gets an ordered collection of matching rules that determine which subject members are matched with which + expectation members. + + + + + Gets an ordered collection of Equivalency steps how a subject is compared with the expectation. + + + + + Gets an ordered collection of rules that determine whether or not the order of collections is important. By + default, + ordering is irrelevant. + + + + + Gets value indicating whether the equality check will include nested collections and complex types. + + + + + Gets value indicating how cyclic references should be handled. By default, it will throw an exception. + + + + + Causes inclusion of only public properties of the subject as far as they are defined on the declared type. + + + This clears all previously registered selection rules. + + + + + Causes inclusion of only public properties of the subject based on its run-time type rather than its declared type. + + + This clears all previously registered selection rules. + + + + + Instructs the comparison to include public fields. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal fields. + + + + + Instructs the comparison to exclude fields. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to include public properties. + + + This is part of the default behavior. + + + + + Instructs the comparison to include public and internal properties. + + + + + Instructs the comparison to exclude properties. + + + This does not preclude use of `Including`. + + + + + Instructs the comparison to exclude non-browsable members in the expectation (members set to + ). It is not required that they be marked non-browsable in the subject. Use + to ignore non-browsable members in the subject. + + + + + Instructs the comparison to treat non-browsable members in the subject as though they do not exist. If you need to + ignore non-browsable members in the expectation, use . + + + + + Instructs the comparison to respect the expectation's runtime type. + + + + + Instructs the comparison to respect the expectation's declared type. + + + + + Excludes a (nested) property based on a predicate from the structural equality check. + + + + + Includes the specified member in the equality check. + + + This overrides the default behavior of including all declared members. + + + + + Tries to match the members of the expectation with equally named members on the subject. Ignores those + members that don't exist on the subject and previously registered matching rules. + + + + + Requires the subject to have members which are equally named to members on the expectation. + + + + + Overrides the comparison of subject and expectation to use provided + when the predicate is met. + + + The assertion to execute when the predicate is met. + + + + + Causes the structural equality comparison to recursively traverse the object graph and compare the fields and + properties of any nested objects and objects in collections. + + + This is the default behavior. You can override this using . + + + + + Stops the structural equality check from recursively comparing the members any nested objects. + + + If a property or field points to a complex type or collection, a simple call will + be done instead of recursively looking at the properties or fields of the nested object. + + + + + Causes the structural equality check to ignore any cyclic references. + + + By default, cyclic references within the object graph will cause an exception to be thrown. + + + + + Disables limitations on recursion depth when the structural equality check is configured to include nested objects + + + + + Clears all selection rules, including those that were added by default. + + + + + Clears all matching rules, including those that were added by default. + + + + + Adds a selection rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds a matching rule to the ones already added by default, and which is evaluated before all existing rules. + + + + + Adds an ordering rule to the ones already added by default, and which is evaluated after all existing rules. + + + + + Adds an equivalency step rule to the ones already added by default, and which is evaluated before previous + user-registered steps + + + + + Ensures the equivalency comparison will create and use an instance of + that implements , any time + when a property is of type . + + + + + Ensures the equivalency comparison will use the specified implementation of + any time when a property is of type . + + + + + Causes all collections to be compared in the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared in the order + in which the items appear in the expectation. + + + + + Causes all collections - except bytes - to be compared ignoring the order in which the items appear in the expectation. + + + + + Causes the collection identified by the provided to be compared ignoring the order + in which the items appear in the expectation. + + + + + Causes to compare Enum properties using the result of their ToString method. + + + By default, enums are compared by value. + + + + + Causes to compare Enum members using their underlying value only. + + + This is the default. + + + + + Ensures records by default are compared by value instead of their members. + + + + + Ensures records by default are compared by their members even though they override + the method. + + + This is the default. + + + + + Marks the as a type that should be compared by its members even though it may override + the method. + + + + + Marks as a type that should be compared by its members even though it may override + the method. + + is . + + + + Marks the as a value type which must be compared using its + method, regardless of it overriding it or not. + + + + + Marks as a value type which must be compared using its + method, regardless of it overriding it or not. + + is . + + + + Enables tracing the steps the equivalency validation followed to compare two graphs. + + + + + Instructs the equivalency comparison to try to convert the values of + matching properties before running any of the other steps. + + + + + Instructs the equivalency comparison to try to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Instructs the equivalency comparison to prevent trying to convert the value of + a specific member on the expectation object before running any of the other steps. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Defines additional overrides when used with + + + + + Allows overriding the way structural equality is applied to (nested) objects of type + + + + + + Allows overriding the way structural equality is applied to particular members. + + + A predicate based on the of the subject that is used to identify the property for which + the + override applies. + + + + + Represents a collection of assertion results obtained through a . + + + + + Adds the failures (if any) resulting from executing an assertion within a + identified by a key. + + + + + Returns the closest match compared to the set identified by the provided or + an empty array if one of the results represents a successful assertion. + + + The closest match is the set that contains the least amount of failures, or no failures at all, and preferably + the set that is identified by the . + + + + + Gets a value indicating whether this collection contains a set without any failures at all. + + + + + Returns a string that represents the current object. + + + A string that represents the current object. + + 2 + + + + Attempts to convert the subject's property value to the expected type. + + + Whether or not the conversion is attempted depends on the . + + + + + Provides Reflection-backed meta-data information about a type implementing the interface. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface. Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to reflect on the provided and returns an instance of the + representing the single dictionary interface keyed to . + Will throw if the target implements more than one dictionary interface. + + > + The is used to describe the in failure messages. + + + + + Tries to convert an object into a dictionary typed to the and of the current . + + + if the conversion succeeded or otherwise. + + + + + Executes a single equivalency assertion on two collections, optionally recursive and with or without strict ordering. + + + + + Represents a composite equivalency step that passes the execution to all user-supplied steps that can handle the + current context. + + + + + Ensures that types that are marked as value types are treated as such. + + + + + Checks if the subject info setter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should have. + True if the subject info setter has the given access modifier, false otherwise. + + + + Checks if the subject info setter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info setter should not have. + True if the subject info setter does not have the given access modifier, false otherwise. + + + + Checks if the subject info getter has the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should have. + True if the subject info getter has the given access modifier, false otherwise. + + + + Checks if the subject info getter does not have the given access modifier. + + The subject info being checked. + The access modifier that the subject info getter should not have. + True if the subject info getter does not have the given access modifier, false otherwise. + + + + Defines a function that takes the full path from the root object until the current object + in the equivalency operation separated by dots, and returns the trace message to log. + + + + + Represents an object that is used by the class to receive tracing statements on what is + happening during a structural equivalency comparison. + + + + + Writes a single line to the trace. + + + + + Starts a block that scopes an operation that should be written to the trace after the returned + is disposed. + + + + + Returns a copy of the trace. + + + + + Exposes tracing capabilities that can be used by the implementation of the equivalency algorithm + when an is provided. + + + + + Writes a single line to the currently configured . + + + If no tracer has been configured, the call will be ignored. + + + + + Starts a block that scopes an operation that will be written to the currently configured + after the returned disposable is disposed. + + + If no tracer has been configured for the , the call will be ignored. + + + + + Provides extension methods for monitoring and querying events. + + + + + Asserts that all occurrences of the event originates from the . + + + Returns only the events that comes from that sender. + + + + + Asserts that at least one occurrence of the events has some argument of the expected + type that matches the given predicate. + + + Returns only the events having some argument matching both type and predicate. + + is . + + + + Asserts that at least one occurrence of the events has arguments of the expected + type that pairwise match all the given predicates. + + + Returns only the events having arguments matching both type and all predicates. + + + If a is provided as predicate argument, the corresponding event parameter value is ignored. + + + + + Provides convenient assertion methods on a that can be + used to assert that certain events have been raised. + + + + + Gets the which is being asserted. + + + + + Asserts that an object has raised a particular event at least once. + + + The name of the event that should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised a particular event. + + + The name of the event that should not be raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised, or + to refer to all properties. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object has not raised the event for a particular property. + + + A lambda expression referring to the property for which the property changed event should have been raised. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Static methods that aid in generic event subscription + + + + + Generates an eventhandler for an event of type eventSignature that calls RegisterEvent on recorder + when invoked. + + + + + Finds the Return Type of a Delegate. + + + + + Returns an Array of Types that make up a delegate's parameter signature. + + + + + Returns an array of types appended with an EventRecorder reference at the beginning. + + + + + Returns T/F Dependent on a Type Being a Delegate. + + + + + Returns the MethodInfo for the Delegate's "Invoke" Method. + + + + + Provides the metadata of a monitored event. + + + + + The name of the event member on the monitored object + + + + + The type of the event handler and event args. + + + + + Tracks the events an object raises. + + + + + Records activity for a single event. + + + + + Initializes a new instance of the class. + + The object events are recorded from + The name of the event that's recorded + A delegate to get the current date and time in UTC format. + Class used to generate a sequence in a thread-safe manner. + + + + The object events are recorded from + + + + + + + + Called by the auto-generated IL, to record information about a raised event. + + + + + Resets recorder to clear records of events raised so far. + + + + + Represents an (active) recording of all events that happen(ed) while monitoring an object. + + + + + The object events are recorded from + + + + + The name of the event that's recorded + + + + + The type of the event handler identified by . + + + + + Monitors events on a given source + + + + + Gets the object that is being monitored or if the object has been GCed. + + + + + Clears all recorded events from the monitor and continues monitoring. + + + + + Provides access to several assertion methods. + + + + + Gets the metadata of all the events that are currently being monitored. + + + + + Gets a collection of all events that have occurred since the monitor was created or + was called. + + + + + Represents an occurrence of a particular event. + + + + + The name of the event as defined on the monitored object. + + + + + The parameters that were passed to the event handler. + + + + + The exact date and time of the occurrence in . + + + + + The order in which this event was raised on the monitored object. + + + + + This class is used to store data about an intercepted event + + + + + Default constructor stores the parameters the event was raised with + + + + + The exact data and time in UTC format at which the event occurred. + + + + + Parameters for the event + + + + + The order in which this event was invoked on the monitored object. + + + + + Generates a sequence in a thread-safe manner. + + + + + Increments the current sequence. + + + + + Asserts that the thrown exception has a message that matches . + + The containing the thrown exception. + + The wildcard pattern with which the exception message is matched, where * and ? have special meanings. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + The containing the thrown exception. + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The expected type of the inner exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the exception. + The containing the thrown exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception has a parameter which name matches . + + The containing the thrown exception. + The expected name of the parameter + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Represents the default exception in case no test framework is configured. + + + + + Represents an implicit or explicit scope within which multiple assertions can be collected. + + + This class is supposed to have a very short life time and is not safe to be used in assertion that cross thread-boundaries + such as when using or . + + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts an unnamed scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy. + + The assertion strategy for this scope. + is . + + + + Starts a named scope within which multiple assertions can be executed + and which will not throw until the scope is disposed. + + + + + Starts a new scope based on the given assertion strategy and parent assertion scope + + The assertion strategy for this scope. + The parent assertion scope for this scope. + is . + + + + Gets or sets the context of the current assertion scope, e.g. the path of the object graph + that is being asserted on. The context is provided by a which + only gets evaluated when its value is actually needed (in most cases during a failure). + + + + + Gets the current thread-specific assertion scope. + + + + + + + + Exposes the options the scope will use for formatting objects in case an assertion fails. + + + + + Adds an explanation of why the assertion is supposed to succeed to the scope. + + + + + + + + + + + + + + + + + Makes assertion fail when does not match . + + The occurrence description in natural language could then be inserted in failure message by using + {expectedOccurrence} placeholder in message parameters of and its + overloaded versions. + + + defining the number of expected occurrences. + The number of actual occurrences. + + + + + + + + + + + + + + + + Gets the identity of the caller associated with the current scope. + + + + + Adds a pre-formatted failure message to the current scope. + + + + + Adds a block of tracing to the scope for reporting when an assertion fails. + + + + + Tracks a keyed object in the current scope that is excluded from the failure message in case an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. + + + + + Adds some information to the assertion scope that will be included in the message + that is emitted if an assertion fails. The value is only calculated on failure. + + + + + Returns all failures that happened up to this point and ensures they will not cause + to fail the assertion. + + + + + Gets data associated with the current scope and identified by . + + + + + + + + + + + Allows the scope to assume that all assertions that happen within this scope are going to + be initiated by the same caller. + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Represents a collection of data items that are associated with an . + + + + + Enables chaining multiple assertions on an . + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Enables chaining multiple assertions from a call. + + + + + Continuous the assertion chain if the previous assertion was successful. + + + + + Provides back-wards compatibility for code that expects to return a boolean. + + + + + Allows chaining multiple assertion scopes together using . + + + If the parent scope has captured a failed assertion, + this class ensures that successive assertions are no longer evaluated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Helper class for verifying a condition and/or throwing a test harness specific exception representing an assertion failure. + + + + + Gets an object that wraps and executes a conditional or unconditional assertion. + + + + + Represents assertion fail reason. Contains the message and arguments for message's numbered placeholders. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 args are supported in combination with a {reason}. + + + + + + Initializes a new instance of the class. + + + + + + + + Message to be displayed in case of failed assertion. May contain numbered + -style placeholders as well as specialized placeholders. + + + + + Arguments for the numbered -style placeholders of . + + + + + Throws a generic exception in case no other test harness is detected. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Represents a chaining object returned from to continue the assertion using + an object returned by a selector. + + + + + Specify the condition that must be satisfied upon the subject selected through a prior selector. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + The condition will not be evaluated if the prior assertion failed, + nor will throw any exceptions. + + is . + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + is . + + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + The will not be invoked if the prior assertion failed, + nor will throw any exceptions. + + + + + + + + + Allows to safely select the subject for successive assertions. + + + Selector which result is passed to successive calls to . + + + + + Specify the condition that must be satisfied. + + + If the assertion will be treated as successful and no exceptions will be thrown. + + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + Messages may contain a few specialized placeholders. For instance, {reason} will be replaced with the reason + of the assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + will not be called unless the assertion is not met. + + Function returning object on demand. Called only when the assertion is not met. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + . + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Sets the failure message when the assertion is not met, or completes the failure message set to a prior call to + , + but postpones evaluation of the formatting arguments until the assertion really fails. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + If an expectation was set through a prior call to , then the failure + message is appended to that expectation. + + + The format string that represents the failure message. + Optional lazily evaluated arguments to any numbered placeholders + + + + Specify the reason why you expect the condition to be . + + + A formatted phrase compatible with explaining why the condition should + be satisfied. If the phrase does not start with the word because, it is prepended to the message. + + If the format of or is not compatible with + , then a warning message is returned instead. + + + + Zero or more values to use for filling in any compatible placeholders. + + + + + Clears the expectation set by . + + + + + Sets the expectation part of the failure message when the assertion is not met. + + + In addition to the numbered -style placeholders, messages may contain a + few specialized placeholders as well. For instance, {reason} will be replaced with the reason of the + assertion as passed to . + + Other named placeholders will be replaced with the scope data passed through + and . + + + Finally, a description of the current subject can be passed through the {context:description} placeholder. + This is used in the message if no explicit context is specified through the constructor. + + + Note that only 10 are supported in combination with a {reason}. + + + The format string that represents the failure message. + Optional arguments to any numbered placeholders. + + + + Defines the name of the subject in case this cannot be extracted from the source code. + + + + + Forces the formatters, that support it, to add the necessary line breaks. + + + This is just shorthand for modifying the property. + + + + + Discards and returns the failures that happened up to now. + + + + + Defines a strategy for handling failures in a . + + + + + Returns the messages for the assertion failures that happened until now. + + + + + Instructs the strategy to handle a assertion failure. + + + + + Discards and returns the failure messages that happened up to now. + + + + + Will throw a combined exception for any failures have been collected. + + + + + Custom version of ICloneable that works on all frameworks. + + + + + Creates a new object that is a copy of the current instance. + + + A new object that is a copy of this instance. + + + + + Represents an abstraction of a particular test framework such as MSTest, nUnit, etc. + + + + + Gets a value indicating whether the corresponding test framework is currently available. + + + + + Throws a framework-specific exception to indicate a failing unit test. + + + + + Encapsulates expanding the various placeholders supported in a failure message. + + + + + Represents the reason for a structural equivalency assertion. + + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + + + Zero or more objects to format using the placeholders in . + + + + + Implements a wrapper around all supported test frameworks to throw the correct assertion exception. + + + + + Implements the XUnit (version 2) test framework adapter. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ new DateTime(2011, 3, 10)
+
+ you can write 3.March(2011)
+
+ Or even
+
+ 3.March(2011).At(09, 30) +
+ +
+ + + Returns a new value for the specified and + in the month January. + + + + + Returns a new value for the specified and + in the month February. + + + + + Returns a new value for the specified and + in the month March. + + + + + Returns a new value for the specified and + in the month April. + + + + + Returns a new value for the specified and + in the month May. + + + + + Returns a new value for the specified and + in the month June. + + + + + Returns a new value for the specified and + in the month July. + + + + + Returns a new value for the specified and + in the month August. + + + + + Returns a new value for the specified and + in the month September. + + + + + Returns a new value for the specified and + in the month October. + + + + + Returns a new value for the specified and + in the month November. + + + + + Returns a new value for the specified and + in the month December. + + + + + Returns a new value for the specified and . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with the specified + , and optionally . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value for the specified and time with + the kind set to . + + + + + Returns a new value that is the current before the + specified . + + + + + Returns a new value that is the current after the + specified . + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Gets the nanoseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Returns a new that adds the specified number of nanoseconds to the value of this instance. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Gets the microseconds component of the date represented by the current structure. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns a new that adds the specified number of microseconds to the value of this instance. + + + + + Returns new that uses + as its datetime and as its offset. + + + + + Extension methods on to allow for a more fluent way of specifying a . + + + Instead of
+
+ TimeSpan.FromHours(12)
+
+ you can write
+
+ 12.Hours()
+
+ Or even
+
+ 12.Hours().And(30.Minutes()). +
+ +
+ + + Represents the number of ticks that are in 1 microsecond. + + + + + Represents the number of ticks that are in 1 nanosecond. + + + + + Returns a based on a number of ticks. + + + + + Returns a based on a number of ticks. + + + + + Gets the nanoseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Returns a based on a number of nanoseconds. + + + .NET's smallest resolutions is 100 nanoseconds. Any nanoseconds passed in + lower than .NET's resolution will be rounded using the default rounding + algorithm in Math.Round(). + + + + + Gets the value of the current structure expressed in whole and fractional nanoseconds. + + + + + Gets the microseconds component of the time interval represented by the current structure. + + + + + Returns a based on a number of microseconds. + + + + + Returns a based on a number of microseconds. + + + + + Gets the value of the current structure expressed in whole and fractional microseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of milliseconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds. + + + + + Returns a based on a number of seconds, and add the specified + . + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes. + + + + + Returns a based on a number of minutes, and add the specified + . + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours. + + + + + Returns a based on a number of hours, and add the specified + . + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days. + + + + + Returns a based on a number of days, and add the specified + . + + + + + Convenience method for chaining multiple calls to the methods provided by this class. + + + 23.Hours().And(59.Minutes()) + + + + + Provides extensions to write s with fluent syntax + + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + This is the equivalent to + + is less than zero. + + + + Contains static methods to help with exception assertions on actions. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Invokes the specified action so that you can assert that it throws an exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Forces enumerating a collection. Should be used to assert that a method that uses the + keyword throws a particular exception. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Specialized value formatter that looks for static methods in the caller's assembly marked with the + . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of spaces to indent the members of this object by. + + The default value is 3. + + + + Determines whether this instance can handle the specified value. + + The value. + + if this instance can handle the specified value; otherwise, . + + + + + Selects which members of to format. + + The of the object being formatted. + The members of that will be included when formatting this object. + The default is all non-private members. + + + + Selects the name to display for . + + The of the object being formatted. + The name to be displayed for . + The default is . + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The number of items to include when formatting this object. + + The default value is 32. + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a method that can be used to format child values from inside an . + + + Represents the path from the current location to the child value. + + + The child value to format with the configured s. + + + + + This class is used by the class to collect all the output of the (nested calls of an) into + a the final representation. + + + The will ensure that the number of lines will be limited + to the maximum number of lines provided through its constructor. It will throw + a if the number of lines exceeds the maximum. + + + + + The number of spaces that should be used by every indentation level. + + + + + Returns the number of lines of text currently in the graph. + + + + + Starts a new line with the provided text fragment. Additional text can be added to + that same line through . + + + + + Starts a new line with the provided line of text that does not allow + adding more fragments of text. + + + + + Adds a new fragment of text to the current line. + + + + + Adds a new line if there are no lines and no fragment that would cause a new line. + + + + + Inserts an empty line as the first line unless it is already. + + + + + Increases the indentation of every line written into this text block until the returned disposable is disposed. + + + The amount of spacing used for each indentation level is determined by . + + + + + Returns the final textual multi-line representation of the object graph. + + + + + Write fragments that may be on a single line or span multiple lines, + and this is not known until later parts of the fragment are written. + + + + + Write the fragment at the position the graph was in when this instance was created. + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + + If more lines have been added since this instance was created then write the + fragment on a new line, otherwise write it on the same line. + + + + + Write the fragment. If more lines have been added since this instance was + created then also flush the line and indent the next line. + + + + + Provides services for formatting an object being used in an assertion in a human readable format. + + + + + Is used to detect recursive calls by implementations. + + + + + A list of objects responsible for formatting the objects represented by placeholders. + + + + + Returns a human-readable representation of a particular object. + + The value for which to create a . + + Indicates whether the formatter should use line breaks when the specific supports it. + + + A that represents this instance. + + + + + Removes a custom formatter that was previously added though . + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Ensures a custom formatter is included in the chain, just before the default formatter is executed. + + + This method is not thread-safe and should not be invoked from within a unit test. + See the docs on how to safely use it. + + + + + Tracks the objects that were formatted as well as the path in the object graph of + that object. + + + Is used to detect the maximum recursion depth as well as cyclic references in the graph. + + + + + Provides information about the current formatting action. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + + + Indicates whether the formatter should use line breaks when the supports it. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + Determines the depth until which the library should try to render an object graph. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + A depth of 1 will only the display the members of the root object. + + + + + Sets the maximum number of lines of the failure message. + + + + Because of technical reasons, the actual output may be one or two lines longer. + + + This value should not changed on from within a unit test. + See the docs on how to safely use it. + + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Represents a strategy for formatting an arbitrary value into a human-readable string representation. + + + Add custom formatters using . + + + + + Indicates + whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Returns a human-readable representation of . + + The value to format into a human-readable representation + + An object to write the textual representation to. + + + Contains additional information that the implementation should take into account. + + + Allows the formatter to recursively format any child objects. + + + DO NOT CALL directly, but use + instead. This will ensure cyclic dependencies are properly detected. + Also, the may throw + an that must be ignored by implementations of this interface. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + The is responsible for formatting + boolean lambda expressions. + + + + + This step simplifies the lambda expression by replacing parts of it which do not depend on the lambda parameters + with the actual values of these sub-expressions. The simplified expression is much easier to read. + E.g. "(_.Text == "two") AndAlso (_.Number == 3)" + Instead of "(_.Text == value(FluentAssertions.Specs.Collections.GenericCollectionAssertionsSpecs+c__DisplayClass122_0).twoText) AndAlso (_.Number == 3)". + + + + + This step simplifies the lambda expression by removing unnecessary parentheses for root level chain of AND operators. + E.g. (_.Text == "two") AndAlso (_.Number == 3) AndAlso (_.OtherText == "foo") + Instead of ((_.Text == "two") AndAlso (_.Number == 3)) AndAlso (_.OtherText == "foo") + This simplification is only implemented for the chain of AND operators because this is the most common predicate scenario. + Similar logic can be implemented in the future for other operators. + + + + + Expression visitor which can detect whether the expression depends on parameters. + + + + + Expression visitor which can replace constant sub-expressions with constant values. + + + + + Expression visitor which can extract sub-expressions from an expression which has the following form: + (SubExpression1) AND (SubExpression2) ... AND (SubExpressionN) + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Provides a human readable version of a generic or non-generic + including its state. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Marks a static method as a kind of for a particular type. + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Indicates whether the current can handle the specified . + + The value for which to create a . + + if the current can handle the specified value; otherwise, . + + + + + Contains a number of extension methods for floating point . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is close to another value within a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts an integral value is not within another value by a specified value. + + The object that is being extended. + + The nearby value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + Does not throw if null subject value approximates null value. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value approximates another value as close as possible. + + The object that is being extended. + + The expected value to compare the actual value with. + + + The maximum amount of which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a floating point value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a double value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + Throws if both subject and are null. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts a decimal value does not approximate another value by a given amount. + + The object that is being extended. + + The unexpected value to compare the actual value with. + + + The minimum exclusive amount of which the two values should differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that an object equals another object using its implementation.
+ Verification whether returns 0 is not done here, you should use + to verify this. +
+ The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object does not equal another object using its method.
+ Verification whether returns non-zero is not done here, you should use + to verify this. +
+ The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + +
+ + + Asserts that the subject is ranked equal to another object. I.e. the result of returns 0. + To verify whether the objects are equal you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is not ranked equal to another object. I.e. the result of returns non-zero. + To verify whether the objects are not equal according to you must use . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is less than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the subject is greater than or equal to another object according to its implementation of . + + + The object to pass to the subject's method. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable numeric value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is exactly the same as the value. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the integral number value is not the same as the value. + + The unexpected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is less than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the numeric value is greater than or equal to the specified value. + + The value to compare the current numeric value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range (inclusive). + + + The maximum valid value of the range (inclusive). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is not within a range. + + + Where the range is continuous or incremental depends on the actual type of the value. + + + The minimum valid value of the range. + + + The maximum valid value of the range. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + + The type that the subject is supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + + The type that the subject is not supposed to be of. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the is satisfied. + + + The predicate which must be satisfied + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + + + + A method to generate additional information upon comparison failures. + + The current numeric value verified to be non-null. + The value to compare the current numeric value with. + + Returns the difference between a number value and the value. + Returns `null` if the compared numbers are small enough that a difference message is irrelevant. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the binary serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object can be serialized and deserialized using the data contract serializer and that it stills retains + the values of all members. + + + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object can be serialized and deserialized using the XML serializer and that it stills retains + the values of all members. + + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value implies the specified value. + + The right hand side of the implication + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the represents a value in the . + + + The expected that the current value must represent. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current represents the same point in time as the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not represent the same point in time as the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value, including its offset. + Comparison is performed using + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not exactly equal to the value. + Comparison is performed using + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values must differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is before the specified value. + + The that the current value is expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not before the specified value. + + The that the current value is not expected to be before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or before the specified value. + + The that the current value is expected to be on or before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor before the specified value. + + The that the current value is not expected to be on nor before. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is after the specified value. + + The that the current value is expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not after the specified value. + + The that the current value is not expected to be after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is either on, or after the specified value. + + The that the current value is expected to be on or after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is neither on, nor after the specified value. + + The that the current value is expected not to be on nor after. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the year. + + The expected year of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the year. + + The year that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the month. + + The expected month of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the month. + + The month that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the day. + + The expected day of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the day. + + The day that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the hour. + + The expected hour of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the hour. + + The hour that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the minute. + + The expected minutes of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the minute. + + The minute that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the second. + + The expected seconds of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the second. + + The second that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the offset. + + The expected offset of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the offset. + + The offset that should not be in the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns a object that can be used to assert that the current + exceeds the specified compared to another . + + + The amount of time that the current should exceed compared to another . + + + + + Returns a object that can be used to assert that the current + is equal to or exceeds the specified compared to another . + + + The amount of time that the current should be equal or exceed compared to + another . + + + + + Returns a object that can be used to assert that the current + differs exactly the specified compared to another . + + + The amount of time that the current should differ exactly compared to another . + + + + + Returns a object that can be used to assert that the current + is within the specified compared to another . + + + The amount of time that the current should be within another . + + + + + Returns a object that can be used to assert that the current + differs at maximum the specified compared to another . + + + The maximum amount of time that the current should differ compared to another . + + + + + Asserts that the current has the date. + + The expected date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not the date. + + The date that is not to match the date portion of the current value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that two objects differ in the expected way. + + + You can use the and + for a more fluent + way of specifying a or a . + + + + + Asserts that a occurs a specified amount of time before another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a occurs a specified amount of time after another . + + + The to compare the subject with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current or is not equal to the value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current value of is not defined inside the enum. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is exactly equal to the value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same numeric value as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have the same name as . + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum has a specified flag + + The expected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an enum does not have a specified flag + + The unexpected flag. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the matches the . + + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Contains a number of methods to assert that a is in the correct state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is equal to the GUID. + + The expected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + The format of is invalid. + + + + Asserts that the is not equal to the GUID. + + The unexpected value to compare the actual value with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the is successful (2xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is redirection (3xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is either client (4xx) or server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is client error (4xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is server error (5xx). + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable boolean value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not equal to the specified value. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + You can use the + for a more fluent way of specifying a . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a nullable value is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the value is equal to the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified using the provided . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that a value equals using its implementation. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value equals using the provided . + + The expected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value does not equal using its method. + + The unexpected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value does not equal using the provided . + + The unexpected value + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The expected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The expected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + Notice that actual behavior is determined by the global defaults managed by . + + The unexpected element. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object is not equivalent to another object. + + + Objects are equivalent when both object graphs have equally named properties with the same value, + irrespective of the type of those objects. Two properties are also equal if one type can be converted to another and the result is equal. + The type of a collection property is ignored as long as the collection implements and all + items in the collection are structurally equal. + + The unexpected element. + + A reference to the configuration object that can be used + to influence the way the object graphs are compared. You can also provide an alternative instance of the + class. The global defaults are determined by the + class. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a value is one of the specified . + + + The values that are valid. + + + An equality comparer to compare values. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that a reference type object is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the current object has not been initialized yet. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current object has been initialized. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to the exact same object as another object reference. + + The expected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that an object reference refers to a different object than another object reference refers to. + + The unexpected object + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the specified type . + + The expected type of the object. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is of the . + + + The type that the subject is supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is not of the specified type . + + The type that the subject is not supposed to be. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the object is not the . + + + The type that the subject is not supposed to be. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the object is assignable to a variable of type . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is assignable to a variable of given . + + The type to which the object should be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the object is not assignable to a variable of type . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the object is not assignable to a variable of given . + + The type to which the object should not be assignable to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts that the is satisfied. + + The predicate which must be satisfied by the . + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Returns the type of the subject the assertion applies on. + It should be a user-friendly name as it is included in the failure message. + + + + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Contains a number of methods to assert that a nullable is in the expected state. + + + + + Gets the object which value is being asserted. + + + + + Asserts that the time difference of the current is greater than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than zero. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is equal to the + specified time. + + The expected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is not equal to the + specified time. + + The unexpected time difference + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is less than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the time difference of the current is greater than or equal to the + specified time. + + The time difference to which the current value will be compared + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The expected time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + Asserts that the current is not within the specified time + from the specified value. + + + Use this assertion when, for example the database truncates datetimes to nearest 20ms. If you want to assert to the exact datetime, + use . + + + The time to compare the actual value with. + + + The maximum amount of time which the two values may differ. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that a string is exactly the same as another string, including the casing and any leading or trailing whitespace. + + The expected string. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + + + Asserts that the is one of the specified . + + + The values that are valid. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as another string, including any leading or trailing whitespace, with + the exception of the casing. + + + The string that the subject is not expected to be equivalent to. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not exactly the same as the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to be equivalent to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination literal text and wildcard of + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string does not match the . + + + The pattern to match against the subject. This parameter can contain a combination of literal text and wildcard + (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + is . + is empty. + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string matches a regular expression with expected occurrence + + + The regular expression with which the subject is matched. + + + A constraint specifying the expected amount of times a regex should match a string. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string matches a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not match a regular expression. + + + The regular expression with which the subject is matched. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string starts exactly with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string starts with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not start with the specified value, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to start with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end exactly with the specified , + including the casing and any leading or trailing whitespace. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string ends with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string does not end with the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to end with. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that a string contains another (fragment of a) string. + + + The (fragment of a) string that the current string should contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains another (fragment of a) string a set amount of times. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified , + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains the specified a set amount of times, + including any leading or trailing whitespace, with the exception of the casing. + + + The (fragment of a) string that the current string should contain. + + + A constraint specifying the amount of times a substring should be present within the test subject. + It can be created by invoking static methods Once, Twice, Thrice, or Times(int) + on the classes , , , , and . + For example, or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains all values present in . + + + The values that should all be present in the string + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string contains at least one value present in ,. + + + The values that should will be tested against the string + + + + + Asserts that a string does not contain another (fragment of a) string. + + + The (fragment of a) string that the current string should not contain. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain all of the strings provided in . The string + may contain some subset of the provided values. + + + The values that should not be present in the string + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string does not contain any of the strings provided in . + + + The values that should not be present in the string + + + + + Asserts that a string does not contain the specified string, + including any leading or trailing whitespace, with the exception of the casing. + + The string that the subject is not expected to contain. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is not . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string has the specified length. + + The expected length of the string + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is neither nor nor white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that a string is either or or white space + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in upper casing. + + + Be careful that numbers and special characters don't have casing, so + will always fail on a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in upper casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are in lower casing. + + + Be careful that numbers and special characters don't have casing, so will always fail on + a string that contains anything but alphabetic characters. + In those cases, we recommend using . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that all characters in a string are not in lower casing. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Dedicated class for comparing two strings and generating consistent error messages. + + + + + Gets or sets a value indicating whether the subject should not match the pattern. + + + + + Gets or sets a value indicating whether the matching process should ignore any casing difference. + + + + + Ignores the difference between environment newline differences + + + + + Provides the logic and the display text for a . + + + + + Contains a number of methods to assert that an yields the expected result. + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an asynchronous method yields the expected result. + + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current will not complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current throws an exception of type . + + The type of exception expected to be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of type + within a specific timeout. + + The type of exception expected to be thrown. + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + The type of exception expected to not be thrown. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Invokes the subject and measures the sync execution time. + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that a synchronous method yields the expected result. + + + + + Asserts that the current throws an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw an exception of type . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current throws an exception of the exact type (and not a derived exception type). + + + The type of the exception it should throw. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + Returns an object that allows asserting additional members of the thrown exception. + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The delegate is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the delegate should have stopped throwing any exception. + + + The time between subsequent invocations of the delegate. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Contains a number of methods to assert that a method yields the expected result. + + + + + Contains a number of methods to assert that an is in the correct state. + + + + + Gets the exception object of the exception thrown. + + + + + Gets the exception object of the exception thrown. + + + + + Returns the type of the subject the assertion applies on. + + + + + Asserts that the thrown exception has a message that matches . + + + The pattern to match against the exception message. This parameter can contain a combination of literal text and + wildcard (* and ?) characters, but it doesn't support regular expressions. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + can be a combination of literal and wildcard characters, + but it doesn't support regular expressions. The following wildcard specifiers are permitted in + . + + + Wildcard character + Description + + + * (asterisk) + Zero or more characters in that position. + + + ? (question mark) + Exactly one character in that position. + + + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of type . + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the thrown exception contains an inner exception of the exact type (and not a derived exception type). + + The expected type of the inner exception. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the exception matches a particular condition. + + + The condition that the exception must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + is . + + + + Initializes a new instance of the class. + + The action of which the execution time must be asserted. + The description of the action to be asserted. + + This constructor is almost exact copy of the one accepting . + The original constructor shall stay in place in order to keep backward-compatibility + and to avoid unnecessary wrapping action in . + + is . + + + + Provides methods for asserting that the execution time of an satisfies certain conditions. + + + + + Initializes a new instance of the class. + + The execution on which time must be asserted. + + + + Checks the executing action if it satisfies a condition. + If the execution runs into an exception, then this will rethrow it. + + Condition to check on the current elapsed time. + Polling stops when condition returns the expected result. + The rate at which the condition is re-checked. + The elapsed time. (use this, don't measure twice) + + + + Asserts that the execution time of the operation is less than or equal to a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is less than a specified amount of time. + + + The maximum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than or equal to a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is greater than a specified amount of time. + + + The minimum allowed duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the execution time of the operation is within the expected duration. + by a specified precision. + + + The expected duration. + + + The maximum amount of time which the execution time may differ from the expected duration. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is negative. + + + + + + + Contains a number of methods to assert that a synchronous function yields the expected result. + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Asserts that the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not throw any exception. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current stops throwing any exception + after a specified amount of time. + + + The is invoked. If it raises an exception, + the invocation is repeated until it either stops raising any exceptions + or the specified wait time is exceeded. + + + The time after which the should have stopped throwing any exception. + + + The time between subsequent invocations of the . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + or are negative. + + + + Initializes a new instance of the class. + + The object that exposes the method or property. + A reference to the method or property to measure the execution time of. + is . + is . + + + + Asserts that the of the current will complete within the specified time. + + The allowed time span for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the of the current will not complete within the specified time. + + The time span to wait for the operation. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Implements base functionality for assertions on TaskCompletionSource. + + + + + + + + Monitors the specified task whether it completes withing the remaining time span. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that an assembly does not reference the specified assembly. + + The assembly which should not be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that an assembly references the specified assembly. + + The assembly which should be referenced. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the assembly defines a type called and . + + The namespace of the class. + The name of the class. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + Asserts that the assembly is unsigned. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + Asserts that the assembly is signed with the specified public key. + + The base-16 string representation of the public key, like "e0851575614491c6d25018fadb75". + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + + Asserts that the current has the buffer size. + + The expected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a buffer size of . + + The unexpected buffer size of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the current is writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not writable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not seekable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not readable. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the position. + + The expected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an position. + + The unexpected position of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the length. + + The expected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an length. + + The unexpected length of the current stream. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not read-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not write-only. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Extension methods for filtering a collection of types. + + + + + Filters to only include types decorated with a particular attribute. + + + + + Filters to only include types decorated with, or inherits from a parent class, a particular attribute. + + + + + Filters to only include types not decorated with a particular attribute. + + + + + Filters to only include types not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Filters to only include types where the namespace of type is exactly . + + + + + Filters to only include types where the namespace of type is starts with . + + + + + Filters to only include types that subclass the specified type, but NOT the same type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Filters to only include types that are classes. + + + + + Filters to only include types that are not classes. + + + + + Filters to only include types that are static. + + + + + Filters to only include types that are not static. + + + + + Filters to only include types that satisfies the passed. + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Extension methods for getting method and property selectors for a type. + + + + + Returns the types that are visible outside the specified . + + + + + Returns a type selector for the current . + + + + + Returns a type selector for the current . + + + + + Returns a method selector for the current . + + is . + + + + Returns a method selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Returns a property selector for the current . + + is . + + + + Static class that allows for a 'fluent' selection of the types from an . + + + AllTypes.From(myAssembly)
+ .ThatImplement<ISomeInterface>
+ .Should()
+ .BeDecoratedWith<SomeAttribute>() +
+
+ + + Returns a for selecting the types that are visible outside the + specified . + + The assembly from which to select the types. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Initializes a new instance of the class. + + The constructorInfo from which to select properties. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected member is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected member is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected member has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected member does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected method is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method is not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return void. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected method does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Allows for fluent selection of methods of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select methods. + is . + + + + Initializes a new instance of the class. + + The types from which to select methods. + is or contains . + + + + Only select the methods that are public or internal. + + + + + Only select the methods without a return value + + + + + Only select the methods with a return value + + + + + Only select the methods that return the specified type + + + + + Only select the methods that do not return the specified type + + + + + Only select the methods that are decorated with an attribute of the specified type. + + + + + Only select the methods that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the methods that are not decorated with an attribute of the specified type. + + + + + Only select the methods that are not decorated with and does not inherit from a parent class, an attribute of the specified type. + + + + + Only return methods that are abstract + + + + + Only return methods that are not abstract + + + + + Only return methods that are async. + + + + + Only return methods that are not async. + + + + + Only return methods that are static. + + + + + Only return methods that are not static. + + + + + Only return methods that are virtual. + + + + + Only return methods that are not virtual. + + + + + Select return types of the methods + + + + + The resulting objects. + + + + + Determines whether the specified method has a special name (like properties and events). + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Initializes a new instance of the class. + + The methods to assert. + is . + + + + Gets the object which value is being asserted. + + + + + Asserts that the selected methods are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not async. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods are not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected methods have specified . + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected methods don't have specified + + The expected access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a is in the expected state. + + + + + Asserts that the selected property is virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property is not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a setter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property has a getter with the specified C# access modifier. + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the selected property does not have a getter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property returns a specified type. + + The expected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property returns . + + The expected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected property does not return a specified type. + + The unexpected type of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected property does not return . + + The unexpected return type. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent selection of properties of a type through reflection. + + + + + Initializes a new instance of the class. + + The type from which to select properties. + is . + + + + Initializes a new instance of the class. + + The types from which to select properties. + is or contains . + + + + Only select the properties that have at least one public or internal accessor + + + + + Only select the properties that are abstract + + + + + Only select the properties that are not abstract + + + + + Only select the properties that are static + + + + + Only select the properties that are not static + + + + + Only select the properties that are virtual + + + + + Only select the properties that are not virtual + + + + + Only select the properties that are decorated with an attribute of the specified type. + + + + + Only select the properties that are decorated with, or inherits from a parent class, an attribute of the specified type. + + + + + Only select the properties that are not decorated with an attribute of the specified type. + + + + + Only select the properties that are not decorated with and does not inherit from a parent class an attribute of the specified type. + + + + + Only select the properties that return the specified type + + + + + Only select the properties that do not return the specified type + + + + + Select return types of the properties + + + + + The resulting objects. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains assertions for the objects returned by the parent . + + + + + Gets the object which value is being asserted. + + + + + Initializes a new instance of the class, for a number of objects. + + The properties to assert. + is . + + + + Asserts that the selected properties are virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not virtual. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties do not have a setter. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the selected properties are not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + + + + Contains a number of methods to assert that a meets certain expectations. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current is equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equal to the specified type. + + The expected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts than an instance of the subject type is assignable variable of type . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is assignable variable of given . + + The type to which instances of the type should be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Asserts than an instance of the subject type is not assignable variable of type . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + + + + Asserts than an instance of the subject type is not assignable variable of given . + + The type to which instances of the type should not be assignable. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + An which can be used to chain assertions. + is . + + + + Creates an error message in case the specified type differs from the + type. + + + An empty if the two specified types are the same, or an error message that describes that + the two specified types are not the same. + + + + + Asserts that the current type is not equal to the specified type. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current type is not equal to the specified type. + + The unexpected type + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, + the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an + attribute of type that matches the specified + . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current implements interface . + + The interface that should be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not implement . + + The interface that should be not implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not implement interface . + + The interface that should not be implemented. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is derived from . + + The type that should be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not derived from . + + The type that should not be derived from. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not sealed. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not abstract. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current is not static. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a class. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current has a property of type named + . + + The type of the property. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not have a property named . + + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current explicitly implements a property named + from interface . + + The interface whose member is being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The type of the interface. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + + + + Asserts that the current does not explicitly implement a property named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the property. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current explicitly implements a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current explicitly implements a method named + from interface . + + The interface whose member is being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The type of the interface. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + is empty. + is . + + + + Asserts that the current does not explicitly implement a method named + from interface . + + The interface whose member is not being explicitly implemented. + The name of the method. + The expected types of the method parameters. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has an indexer of type . + with parameter types . + + The type of the indexer. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an indexer that takes parameter types + . + + The expected indexer's parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a method named with parameter types + . + + The name of the method. + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current does not expose a method named + with parameter types . + + The name of the method. + The method parameter types. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + is . + + + + Asserts that the current has a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have a constructor with . + + The parameter types for the indexer. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current does not have a default constructor. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified C# . + + The expected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current does not have the specified C# . + + The unexpected C# access modifier. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + is not a value. + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an implicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not have an explicit conversion operator that converts + into . + + The type to convert from. + The type to convert to. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Allows for fluent filtering a list of types. + + + + + Initializes a new instance of the class. + + is or contains . + + + + The resulting objects. + + + + + Determines whether a type is a subclass of another type, but NOT the same type. + + + + + Determines whether a type is not a subclass of another type. + + + + + Determines whether a type implements an interface (but is not the interface itself). + + + + + Determines whether a type does not implement an interface (but is not the interface itself). + + + + + Determines whether a type is decorated with a particular attribute. + + + + + Determines whether a type is decorated with, or inherits from a parent class, a particular attribute. + + + + + Determines whether a type is not decorated with a particular attribute. + + + + + Determines whether a type is not decorated with and does not inherit from a parent class, a particular attribute. + + + + + Determines whether the namespace of type is exactly . + + + + + Determines whether the namespace of type is exactly not . + + + + + Determines whether the namespace of type starts with . + + + + + Determines whether the namespace of type does not start with . + + + + + Filters and returns the types that are value types + + + + + Filters and returns the types that are not value types + + + + + Determines whether the type is a class + + + + + Determines whether the type is not a class + + + + + Filters and returns the types that are abstract + + + + + Filters and returns the types that are not abstract + + + + + Filters and returns the types that are sealed + + + + + Filters and returns the types that are not sealed + + + + + Filters and returns only the types that are interfaces + + + + + Filters and returns only the types that are not interfaces + + + + + Determines whether the type is static + + + + + Determines whether the type is not static + + + + + Allows to filter the types with the passed + + + + + Returns T for the types which are or ; the type itself otherwise + + + + + Returns T for the types which are or implement the ; the type itself otherwise + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + 1 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + Contains a number of methods to assert that all s in a + meet certain expectations. + + + + + Initializes a new instance of the class. + + is or contains . + + + + Gets the object which value is being asserted. + + + + + Asserts that the current is decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is decorated with, or inherits from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is decorated with, or inherits from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current is not decorated with and does not inherit from a parent class, the specified . + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not decorated with and does not inherit from a parent class, an attribute of type + that matches the specified . + + + The predicate that the attribute must match. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the selected types are sealed + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the all are not sealed classes + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is in the specified . + + + The namespace that the type must be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not in the specified . + + + The namespace that the type must not be in. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current starts with the specified . + + + The namespace that the namespace of the type must start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the namespace of the current + does not starts with the specified . + + + The namespace that the namespace of the type must not start with. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the attribute. + + The expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the attribute, + using its implementation. + + The unexpected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the document, + using its implementation. + + The expected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to the document, + using its implementation. + + The unexpected document + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a root element with the specified + name. + + The name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a root element with the specified + name. + + The full name of the expected root element of the current document. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has a direct + child element with the specified name. + + + The full name of the expected child element of the current document's element. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the element of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current document's element. + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Initializes a new instance of the class. + + + + + Asserts that the current equals the + element, by using + + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current does not equal the + element, using + . + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is equivalent to the + element, using a semantic equivalency + comparison. + + The expected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the element, using a semantic + equivalency comparison. + + The unexpected element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has the specified value. + + The expected value + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has an attribute with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + is empty. + + + + Asserts that the current has a direct child element with the specified + name. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The full name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Asserts that the of the current has the specified occurrence of + child elements with the specified name. + + + The name of the expected child element of the current element's . + + + A constraint specifying the number of times the specified elements should appear. + + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + is . + + + + Returns the type of the subject the assertion applies on. + + + + + Contains a number of methods to assert that an + is in the expected state./> + + + + + Initializes a new instance of the class. + + + + + + Asserts that the current has the specified + inner text. + + The expected value. + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified + and . + + The name of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has an attribute + with the specified , + and . + + The name of the expected attribute + The namespace of the expected attribute + The value of the expected attribute + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name, ignoring the namespace. + + The name of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current has a direct child element with the specified + name and namespace. + + The name of the expected child element + The namespace of the expected child element + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Contains a number of methods to assert that an is in the expected state. + + + + + Asserts that the current is equivalent to the node. + + The expected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Asserts that the current is not equivalent to + the node. + + The unexpected node + + A formatted phrase as is supported by explaining why the assertion + is needed. If the phrase does not start with the word because, it is prepended automatically. + + + Zero or more objects to format using the placeholders in . + + + + + Returns the type of the subject the assertion applies on. + + + + + Since net6.0 StringBuilder has additional overloads taking an AppendInterpolatedStringHandler + and optionally an IFormatProvider. + The overload here is polyfill for older target frameworks to avoid littering the code base with #ifs + in order to silence analyzers about dependending on the current culture instead of an invariant culture. + + + + + Specifies that the method or property will ensure that the listed field and property members have not-null values. + + + + + Initializes the attribute with a field or property member. + + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the list of field and property members. + + The list of field and property members that are promised to be not-null. + + + + Gets field or property member names. + + + + + Specifies that the method or property will ensure that the listed field and property + members have not-null values when returning with the specified return value condition. + + + + + Initializes the attribute with the specified return value condition and a field or property member. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The field or property member that is promised to be not-null. + + + + Initializes the attribute with the specified return value condition and list of field and property members. + + The return value condition. If the method returns this value, the associated parameter will not be null. + The list of field and property members that are promised to be not-null. + + + + Gets the return value condition. + + + + + Gets field or property member names. + + + + + Specifies that this constructor sets all required members for the current type, + and callers do not need to set any required members themselves. + + + + + Specifies the syntax used in a string. + + + + + Initializes the with the identifier of the syntax used. + + The syntax identifier. + + + Initializes the with the identifier of the syntax used. + The syntax identifier. + Optional arguments associated with the specific syntax employed. + + + Gets the identifier of the syntax used. + + + Optional arguments associated with the specific syntax employed. + + + The syntax identifier for strings containing composite formats for string formatting. + + + The syntax identifier for strings containing date format specifiers. + + + The syntax identifier for strings containing date and time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing JavaScript Object Notation (JSON). + + + The syntax identifier for strings containing numeric format specifiers. + + + The syntax identifier for strings containing regular expressions. + + + The syntax identifier for strings containing time format specifiers. + + + The syntax identifier for strings containing format specifiers. + + + The syntax identifier for strings containing URIs. + + + The syntax identifier for strings containing XML. + + + + Used to indicate a byref escapes and is not scoped. + + + + There are several cases where the C# compiler treats a as implicitly + - where the compiler does not allow the to escape the method. + + + For example: + + for instance methods. + parameters that refer to types. + parameters. + + + + This attribute is used in those instances where the should be allowed to escape. + + + Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for + API authors to understand the lifetime implications of applying this attribute and how it may impact their users. + + + + + + An attribute that allows parameters to receive the expression of other parameters. + + + + + Initializes a new instance of the class. + + The condition parameter value. + + + + Gets the parameter name the expression is retrieved from. + + + + + Indicates that compiler support for a particular feature is required for the location where this attribute is applied. + + + + + Creates a new instance of the type. + + The name of the feature to indicate. + + + + The name of the compiler feature. + + + + + If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand . + + + + + The used for the ref structs C# feature. + + + + + The used for the required members C# feature. + + + + + Indicates which arguments to a method involving an interpolated string handler should be passed to that handler. + + + + + Initializes a new instance of the class. + + The name of the argument that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Initializes a new instance of the class. + + The names of the arguments that should be passed to the handler. + may be used as the name of the receiver in an instance method. + + + + Gets the names of the arguments that should be passed to the handler. + + may be used as the name of the receiver in an instance method. + + + + Indicates the attributed type is to be used as an interpolated string handler. + + + + + Reserved to be used by the compiler for tracking metadata. + This class should not be used by developers in source code. + + + + + Used to indicate to the compiler that a method should be called + in its containing module's initializer. + + + When one or more valid methods + with this attribute are found in a compilation, the compiler will + emit a module initializer which calls each of the attributed methods. + + Certain requirements are imposed on any method targeted with this attribute: + - The method must be `static`. + - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc. + - The method must be parameterless. + - The method must return `void`. + - The method must not be generic or be contained in a generic type. + - The method's effective accessibility must be `internal` or `public`. + + The specification for module initializers in the .NET runtime can be found here: + https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer + + + + + Specifies that a type has required members or that a member is required. + + + + + Used to indicate to the compiler that the .locals init flag should not be set in method headers. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified message. + + An optional message associated with this attribute instance. + + + + Returns the optional message associated with this attribute instance. + + + + + Returns the optional URL associated with this attribute instance. + + +
+