From 2692db37ab1ae587ef349b69061c85017b24f77c Mon Sep 17 00:00:00 2001
From: George Mauer
Date: Mon, 15 Aug 2016 09:18:00 -0600
Subject: [PATCH 1/2] dont swallow exceptions when there is no message
---
Target/GelfConverter.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Target/GelfConverter.cs b/Target/GelfConverter.cs
index e846df9..2326a41 100644
--- a/Target/GelfConverter.cs
+++ b/Target/GelfConverter.cs
@@ -16,7 +16,7 @@ public JObject GetGelfJson(LogEventInfo logEventInfo, string facility)
{
//Retrieve the formatted message from LogEventInfo
var logEventMessage = logEventInfo.FormattedMessage;
- if (logEventMessage == null) return null;
+ if (logEventMessage == null && logEventInfo.Exception == null) return null;
//If we are dealing with an exception, pass exception properties to LogEventInfo properties
if (logEventInfo.Exception != null)
From ed862ba30fc35d5180ce273367218dcfdc36228e Mon Sep 17 00:00:00 2001
From: George Mauer
Date: Tue, 20 Jun 2017 10:41:08 -0500
Subject: [PATCH 2/2] simple tester project that can write to the surge graylog
instance
---
.gitignore | 4 +-
ConsoleRunner/App.config | 6 +-
ConsoleRunner/Gelf4NLog.ConsoleRunner.csproj | 146 +-
ConsoleRunner/Program.cs | 99 +-
.../lib/Ploeh.AutoFixture.XML | 8167 ---------
.../lib/Ploeh.AutoFixture.dll | Bin 147968 -> 0 bytes
.../lib/Ploeh.SemanticComparison.XML | 387 -
.../lib/Ploeh.SemanticComparison.dll | Bin 23552 -> 0 bytes
.../lib/net40/Gelf4NLog.Target.dll | Bin 12800 -> 0 bytes
.../LumenWorks.Framework.IO.dll | Bin 37376 -> 0 bytes
packages/Moq.4.0.10827/License.txt | 39 -
packages/Moq.4.0.10827/Moq.4.0.10827.nupkg | Bin 1605195 -> 0 bytes
packages/Moq.4.0.10827/Moq.chm | Bin 541525 -> 0 bytes
packages/Moq.4.0.10827/lib/NET35/Moq.dll | Bin 507392 -> 0 bytes
packages/Moq.4.0.10827/lib/NET35/Moq.pdb | Bin 357888 -> 0 bytes
packages/Moq.4.0.10827/lib/NET35/Moq.xml | 5768 -------
packages/Moq.4.0.10827/lib/NET40/Moq.dll | Bin 488448 -> 0 bytes
packages/Moq.4.0.10827/lib/NET40/Moq.pdb | Bin 343552 -> 0 bytes
packages/Moq.4.0.10827/lib/NET40/Moq.xml | 5120 ------
.../lib/Silverlight4/Castle.Core.dll | Bin 239616 -> 0 bytes
.../lib/Silverlight4/Moq.Silverlight.dll | Bin 139264 -> 0 bytes
.../lib/Silverlight4/Moq.Silverlight.pdb | Bin 341504 -> 0 bytes
.../lib/Silverlight4/Moq.Silverlight.xml | 5101 ------
.../NLog.2.0.0.2000/NLog.2.0.0.2000.nupkg | Bin 1628952 -> 0 bytes
packages/NLog.2.0.0.2000/lib/net20/NLog.dll | Bin 376832 -> 0 bytes
packages/NLog.2.0.0.2000/lib/net20/NLog.xml | 14286 ---------------
packages/NLog.2.0.0.2000/lib/net35/NLog.dll | Bin 380928 -> 0 bytes
packages/NLog.2.0.0.2000/lib/net35/NLog.xml | 14403 ----------------
packages/NLog.2.0.0.2000/lib/net40/NLog.dll | Bin 388096 -> 0 bytes
packages/NLog.2.0.0.2000/lib/net40/NLog.xml | 14353 ---------------
packages/NLog.2.0.0.2000/lib/sl2/NLog.dll | Bin 202752 -> 0 bytes
packages/NLog.2.0.0.2000/lib/sl2/NLog.xml | 9119 ----------
packages/NLog.2.0.0.2000/lib/sl3-wp/NLog.dll | Bin 199680 -> 0 bytes
packages/NLog.2.0.0.2000/lib/sl3-wp/NLog.xml | 8978 ----------
packages/NLog.2.0.0.2000/lib/sl3/NLog.dll | Bin 204288 -> 0 bytes
packages/NLog.2.0.0.2000/lib/sl3/NLog.xml | 9141 ----------
.../lib/sl4-windowsphone71/NLog.dll | Bin 203776 -> 0 bytes
.../lib/sl4-windowsphone71/NLog.xml | 9135 ----------
packages/NLog.2.0.0.2000/lib/sl4/NLog.dll | Bin 215552 -> 0 bytes
packages/NLog.2.0.0.2000/lib/sl4/NLog.xml | 9542 ----------
.../NUnit.2.6.0.12054/NUnit.2.6.0.12054.nupkg | Bin 93979 -> 0 bytes
.../NUnit.2.6.0.12054/lib/nunit.framework.dll | Bin 143360 -> 0 bytes
.../NUnit.2.6.0.12054/lib/nunit.framework.xml | 10845 ------------
packages/NUnit.2.6.0.12054/license.txt | 15 -
.../lib/net20/Newtonsoft.Json.dll | Bin 390144 -> 0 bytes
.../lib/net20/Newtonsoft.Json.xml | 8204 ---------
.../lib/net35/Newtonsoft.Json.dll | Bin 350208 -> 0 bytes
.../lib/net35/Newtonsoft.Json.xml | 7340 --------
.../lib/net40/Newtonsoft.Json.dll | Bin 374784 -> 0 bytes
.../lib/net40/Newtonsoft.Json.xml | 7583 --------
.../lib/sl3-wp/Newtonsoft.Json.dll | Bin 318464 -> 0 bytes
.../lib/sl3-wp/Newtonsoft.Json.xml | 6883 --------
.../sl4-windowsphone71/Newtonsoft.Json.dll | Bin 318464 -> 0 bytes
.../sl4-windowsphone71/Newtonsoft.Json.xml | 6883 --------
.../lib/sl4/Newtonsoft.Json.dll | Bin 321536 -> 0 bytes
.../lib/sl4/Newtonsoft.Json.xml | 6905 --------
.../lib/winrt45/Newtonsoft.Json.dll | Bin 348160 -> 0 bytes
.../lib/winrt45/Newtonsoft.Json.xml | 7101 --------
.../lib/net20/Newtonsoft.Json.dll | Bin 389120 -> 0 bytes
.../lib/net20/Newtonsoft.Json.xml | 8204 ---------
.../lib/net35/Newtonsoft.Json.dll | Bin 349184 -> 0 bytes
.../lib/net35/Newtonsoft.Json.xml | 7340 --------
.../lib/net40/Newtonsoft.Json.dll | Bin 373760 -> 0 bytes
.../lib/net40/Newtonsoft.Json.xml | 7583 --------
.../lib/sl3-wp/Newtonsoft.Json.dll | Bin 317440 -> 0 bytes
.../lib/sl3-wp/Newtonsoft.Json.xml | 6883 --------
.../sl4-windowsphone71/Newtonsoft.Json.dll | Bin 317440 -> 0 bytes
.../sl4-windowsphone71/Newtonsoft.Json.xml | 6883 --------
.../lib/sl4/Newtonsoft.Json.dll | Bin 320000 -> 0 bytes
.../lib/sl4/Newtonsoft.Json.xml | 6905 --------
.../lib/winrt45/Newtonsoft.Json.dll | Bin 348672 -> 0 bytes
.../lib/winrt45/Newtonsoft.Json.xml | 7101 --------
packages/repositories.config | 6 -
73 files changed, 128 insertions(+), 226330 deletions(-)
delete mode 100644 packages/AutoFixture.2.11.1/lib/Ploeh.AutoFixture.XML
delete mode 100644 packages/AutoFixture.2.11.1/lib/Ploeh.AutoFixture.dll
delete mode 100644 packages/AutoFixture.2.11.1/lib/Ploeh.SemanticComparison.XML
delete mode 100644 packages/AutoFixture.2.11.1/lib/Ploeh.SemanticComparison.dll
delete mode 100644 packages/Gelf4NLog.Target.1.0.0.2/lib/net40/Gelf4NLog.Target.dll
delete mode 100644 packages/LumenWorks.Framework.IO/LumenWorks.Framework.IO.dll
delete mode 100644 packages/Moq.4.0.10827/License.txt
delete mode 100644 packages/Moq.4.0.10827/Moq.4.0.10827.nupkg
delete mode 100644 packages/Moq.4.0.10827/Moq.chm
delete mode 100644 packages/Moq.4.0.10827/lib/NET35/Moq.dll
delete mode 100644 packages/Moq.4.0.10827/lib/NET35/Moq.pdb
delete mode 100644 packages/Moq.4.0.10827/lib/NET35/Moq.xml
delete mode 100644 packages/Moq.4.0.10827/lib/NET40/Moq.dll
delete mode 100644 packages/Moq.4.0.10827/lib/NET40/Moq.pdb
delete mode 100644 packages/Moq.4.0.10827/lib/NET40/Moq.xml
delete mode 100644 packages/Moq.4.0.10827/lib/Silverlight4/Castle.Core.dll
delete mode 100644 packages/Moq.4.0.10827/lib/Silverlight4/Moq.Silverlight.dll
delete mode 100644 packages/Moq.4.0.10827/lib/Silverlight4/Moq.Silverlight.pdb
delete mode 100644 packages/Moq.4.0.10827/lib/Silverlight4/Moq.Silverlight.xml
delete mode 100644 packages/NLog.2.0.0.2000/NLog.2.0.0.2000.nupkg
delete mode 100644 packages/NLog.2.0.0.2000/lib/net20/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/net20/NLog.xml
delete mode 100644 packages/NLog.2.0.0.2000/lib/net35/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/net35/NLog.xml
delete mode 100644 packages/NLog.2.0.0.2000/lib/net40/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/net40/NLog.xml
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl2/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl2/NLog.xml
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl3-wp/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl3-wp/NLog.xml
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl3/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl3/NLog.xml
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl4-windowsphone71/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl4-windowsphone71/NLog.xml
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl4/NLog.dll
delete mode 100644 packages/NLog.2.0.0.2000/lib/sl4/NLog.xml
delete mode 100644 packages/NUnit.2.6.0.12054/NUnit.2.6.0.12054.nupkg
delete mode 100644 packages/NUnit.2.6.0.12054/lib/nunit.framework.dll
delete mode 100644 packages/NUnit.2.6.0.12054/lib/nunit.framework.xml
delete mode 100644 packages/NUnit.2.6.0.12054/license.txt
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/net20/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/net20/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/net35/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/net35/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/net40/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/net40/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/sl3-wp/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/sl3-wp/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/sl4-windowsphone71/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/sl4-windowsphone71/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/sl4/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/sl4/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/winrt45/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.6/lib/winrt45/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/net20/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/net20/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/net35/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/net35/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/net40/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/net40/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/sl3-wp/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/sl3-wp/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/sl4-windowsphone71/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/sl4-windowsphone71/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/sl4/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/sl4/Newtonsoft.Json.xml
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/winrt45/Newtonsoft.Json.dll
delete mode 100644 packages/Newtonsoft.Json.4.5.7/lib/winrt45/Newtonsoft.Json.xml
delete mode 100644 packages/repositories.config
diff --git a/.gitignore b/.gitignore
index 82edb74..842b7ab 100644
--- a/.gitignore
+++ b/.gitignore
@@ -51,7 +51,7 @@ _ReSharper*/
~$*
#NuGet
-# packages/
+packages/
*.nupkg
#ncrunch
@@ -59,4 +59,4 @@ _ReSharper*/
*crunch*.local.xml
# visual studio database projects
-*.dbmdl
\ No newline at end of file
+*.dbmdl
diff --git a/ConsoleRunner/App.config b/ConsoleRunner/App.config
index 531dc2a..7c7f4cd 100644
--- a/ConsoleRunner/App.config
+++ b/ConsoleRunner/App.config
@@ -18,9 +18,9 @@
/>
diff --git a/ConsoleRunner/Gelf4NLog.ConsoleRunner.csproj b/ConsoleRunner/Gelf4NLog.ConsoleRunner.csproj
index 62d8082..f9deec5 100644
--- a/ConsoleRunner/Gelf4NLog.ConsoleRunner.csproj
+++ b/ConsoleRunner/Gelf4NLog.ConsoleRunner.csproj
@@ -1,79 +1,81 @@
-
-
-
- Debug
- x86
- 8.0.30703
- 2.0
- {A6E29782-E22C-4B2A-938F-5A4C8A1BC117}
- Exe
- Properties
- Gelf4NLog.ConsoleRunner
- Gelf4NLog.ConsoleRunner
- v4.0
- Client
- 512
-
-
- x86
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
-
-
- x86
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
-
-
-
- False
- ..\packages\Gelf4NLog.Target.1.0.0.2\lib\net40\Gelf4NLog.Target.dll
-
-
- ..\packages\LumenWorks.Framework.IO\LumenWorks.Framework.IO.dll
-
-
- ..\packages\Newtonsoft.Json.4.5.7\lib\net40\Newtonsoft.Json.dll
-
-
- ..\packages\NLog.2.0.0.2000\lib\net40\NLog.dll
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Designer
-
-
- Always
-
-
-
-
+
+
+
+ Debug
+ x86
+ 8.0.30703
+ 2.0
+ {A6E29782-E22C-4B2A-938F-5A4C8A1BC117}
+ Exe
+ Properties
+ Gelf4NLog.ConsoleRunner
+ Gelf4NLog.ConsoleRunner
+ v4.0
+ Client
+ 512
+
+
+ x86
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ x86
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+ ..\packages\LumenWorks.Framework.IO\LumenWorks.Framework.IO.dll
+
+
+ ..\packages\Newtonsoft.Json.4.5.7\lib\net40\Newtonsoft.Json.dll
+
+
+ ..\packages\NLog.2.0.0.2000\lib\net40\NLog.dll
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Designer
+
+
+ Always
+
+
+
+
+
+ {8a614770-aec9-42ad-87ba-ccd53f880a55}
+ Gelf4NLog.Target
+
+
+
+ -->
\ No newline at end of file
diff --git a/ConsoleRunner/Program.cs b/ConsoleRunner/Program.cs
index c771d38..cc72508 100644
--- a/ConsoleRunner/Program.cs
+++ b/ConsoleRunner/Program.cs
@@ -4,54 +4,53 @@
using LumenWorks.Framework.IO.Csv;
using NLog;
-namespace Gelf4NLog.ConsoleRunner
-{
- class Program
- {
- private static readonly Random Random = new Random();
- private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
-
- static void Main()
- {
- while (true)
- {
- var comic = GetNextComic();
-
- var eventInfo = new LogEventInfo
- {
- Message = comic.Title,
- Level = LogLevel.Info,
- };
- eventInfo.Properties.Add("Publisher", comic.Publisher);
- eventInfo.Properties.Add("ReleaseDate", comic.ReleaseDate);
-
- Logger.Log(eventInfo);
-
- Thread.Sleep(1000);
- }
- }
-
- private static Comic GetNextComic()
- {
- var nextComicIndex = Random.Next(1, 400);
-
- using (var csv = new CsvReader(new StreamReader("comics.csv"), false))
- {
- csv.MoveTo(nextComicIndex);
- return new Comic
- {
- Title = csv[2],
- Publisher = csv[1],
- ReleaseDate = csv[0]
- };
- }
- }
- }
-
- class Comic
- {
- public string Title { get; set; }
- public string ReleaseDate { get; set; }
- public string Publisher { get; set; }
- }
+namespace Gelf4NLog.ConsoleRunner {
+ class Program {
+ private static readonly Random Random = new Random();
+ private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
+
+ static void Main() {
+ Logger.LogException(LogLevel.Error, "a specially crafted error just for you", new InvalidOperationException("Testy error"));
+ Logger.Log(new LogEventInfo {
+ Level = LogLevel.Error,
+ Message = null,
+ Exception = new InvalidOperationException("And here it is"),
+ });
+ Logger.Info("and now we're done");
+ return;
+ while (true) {
+ var comic = GetNextComic();
+
+ var eventInfo = new LogEventInfo {
+ Message = comic.Title,
+ Level = LogLevel.Info,
+ };
+ eventInfo.Properties.Add("Publisher", comic.Publisher);
+ eventInfo.Properties.Add("ReleaseDate", comic.ReleaseDate);
+
+ Logger.Log(eventInfo);
+
+ Thread.Sleep(1000);
+ }
+ }
+
+ private static Comic GetNextComic() {
+ var nextComicIndex = Random.Next(1, 400);
+
+ using (var csv = new CsvReader(new StreamReader("comics.csv"), false)) {
+ csv.MoveTo(nextComicIndex);
+ return new Comic {
+ Title = csv[2],
+ Publisher = csv[1],
+ ReleaseDate = csv[0]
+ };
+ }
+ }
+ }
+
+ class Comic {
+ public string Title { get; set; }
+ public string ReleaseDate { get; set; }
+ public string Publisher { get; set; }
+ }
}
diff --git a/packages/AutoFixture.2.11.1/lib/Ploeh.AutoFixture.XML b/packages/AutoFixture.2.11.1/lib/Ploeh.AutoFixture.XML
deleted file mode 100644
index abae948..0000000
--- a/packages/AutoFixture.2.11.1/lib/Ploeh.AutoFixture.XML
+++ /dev/null
@@ -1,8167 +0,0 @@
-
-
-
- Ploeh.AutoFixture
-
-
-
-
- A Decorator of that applies behaviors when
- is invoked.
-
- The type of specimen to customize.
-
-
- In this context, a behavior is an that
- is used to decorate the composed by the decorated
- with decorating builders.
-
-
- This can be used to ensure that the composed builder is decorated with appropriate builders
- such as or .
-
-
-
-
-
- Provides statements that can be used to control how specimens are created and
- post-processed.
-
- The type of specimen to customize.
-
-
-
- Provides statements that can be used to control how specimens are created.
-
- The type of specimen.
-
-
-
- Composes instances of .
-
-
-
-
- Composes a new instance.
-
- A new instance.
-
-
-
- Specifies a function that defines how to create a specimen from a seed.
-
- The factory used to create specimens from seeds.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies an that can create specimens of the
- appropriate type. Mostly for advanced scenarios.
-
-
- An that can create specimens of the appropriate type.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
- This method is mostly intended for advanced scenarios where a more loosely coupled
- strategy is desired to create specimens, but the advantages of the strongly typed
- are still desired for post-processing.
-
-
- One possible scenario is for post-processing of interfaces or abstract types where
- auto-mocking is desired to create the instance. This method makes it possible to supply
- an auto-mocking .
-
-
- must be able to create specimens of the requested type, or
- exceptions may be thrown.
-
-
-
-
-
- Specifies that an anonymous object should be created in a particular way; often by
- using a constructor.
-
-
- A function that will be used to create the object. This will often be a constructor.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using a single input
- parameter for the factory.
-
-
- The type of input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes a single constructor argument of type .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using two input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes two constructor arguments of type and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using three input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- and .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using four input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- The type of the fourth input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- , and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Provides statements that can be used to control how specimens are post-processed.
-
- The type of specimen.
-
-
-
- Performs the specified action on a specimen.
-
- The action to perform.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Disables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned an anonymous value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will should have a value
- assigned.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned a specific value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will have
- assigned.
-
-
- The value to assign to the property or field identified by
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Enables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property should not be assigned any automatic value as
- part of specimen post-processing.
-
- The type of the property or field to ignore.
-
- An expression that identifies the property or field to be ignored.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Initializes a new instance of the class.
-
- The composer to decorate.
-
- The behaviors which will be applied when is invoked.
-
-
-
-
- Initializes a new instance of the class.
-
- The composer to decorate.
-
- The behaviors which will be applied when is invoked.
-
-
-
-
- Returns a new that decorates the new composer, but
- otherwise preserves other state information of the instance (such as the
- .
-
- The new composer to decorate.
-
- A new that decorates .
-
-
-
-
- Returns a new that decorates the new
- composer, but otherwise preserves other state information of the instance (such as the
- .
-
- The new composer to decorate.
-
- A new that decorates
- .
-
-
-
-
- Specifies a function that defines how to create a specimen from a seed.
-
- The factory used to create specimens from seeds.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies an that can create specimens of the
- appropriate type. Mostly for advanced scenarios.
-
-
- An that can create specimens of the appropriate type.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that an anonymous object should be created in a particular way; often by
- using a constructor.
-
-
- A function that will be used to create the object. This will often be a constructor.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that an anonymous object should be created in a particular way; often by
- using a constructor.
-
-
- A function that will be used to create the object. This will often be a constructor.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using two input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes two constructor arguments of type and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using three input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- and .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using four input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- The type of the fourth input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- , and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Composes a new instance.
-
-
- A new instance.
-
-
-
- The return value is created from the instances created
- by the decorated , itself decorated with the decorating builders
- created by .
-
-
-
-
-
- Performs the specified action on a specimen.
-
- The action to perform.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Disables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned an anonymous value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will should have a value
- assigned.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned a specific value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will have
- assigned.
-
-
- The value to assign to the property or field identified by
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Enables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property should not be assigned any automatic value as
- part of specimen post-processing.
-
- The type of the property or field to ignore.
-
- An expression that identifies the property or field to be ignored.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Gets the behaviors that will be applied when is invoked.
-
-
-
-
- Gets the decorated composer.
-
-
-
-
- A Decorator of that applies behaviors when
- is invoked.
-
- The type of specimen to customize.
-
-
- In this context, a behavior is an that
- is used to decorate the composed by the decorated
- with decorating builders.
-
-
- This can be used to ensure that the composed builder is decorated with appropriate builders
- such as or .
-
-
-
-
-
- Initializes a new instance of the
- class.
-
- The composer to decorate.
-
- The behaviors which will be applied when is invoked.
-
-
-
-
- Initializes a new instance of the class.
-
- The composer to decorate.
-
- The behaviors which will be applied when is invoked.
-
-
-
-
- Returns a new that decorates the new
- composer, but otherwise preserves other state information of the instance (such as the
- .
-
- The new composer to decorate.
-
- A new that decorates
- .
-
-
-
-
- Performs the specified action on a specimen.
-
- The action to perform.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Disables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned an anonymous value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will should have a value
- assigned.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned a specific value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will have
- assigned.
-
-
- The value to assign to the property or field identified by
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Enables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property should not be assigned any automatic value as
- part of specimen post-processing.
-
- The type of the property or field to ignore.
-
- An expression that identifies the property or field to be ignored.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Composes a new instance.
-
-
- A new instance.
-
-
-
- The return value is created from the instances created
- by the decorated , itself decorated with the decorating builders
- created by .
-
-
-
-
-
- Gets the behaviors that will be applied when is invoked.
-
-
-
-
- Gets the decorated composer.
-
-
-
-
- Creates a sequence of printable ASCII characters (Dec 33-126), starting at '!' (Dec 33).
-
-
-
-
- Builds, or partakes in building, anonymous variables (specimens).
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
- The can be any object, but will often be a
- or other instances.
-
-
- Note to implementers: Implementations are expected to return a
- instance if they can't satisfy the request.
-
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
-
- Contains extension methods for populating collections with specimens.
-
-
-
-
- Adds many objects to a list.
-
- The type of object contained within the list.
- The collection to which objects should be added.
-
- A function that will be called many times to create objects that will be added to
- .
-
- The number of times is invoked, and hence the number of
- items added to .
-
-
-
-
- Adds many anonymously created objects to a list.
-
- The type of object that is contained in the list.
- The fixture.
-
- The list to which the anonymously created objects will be added.
-
-
-
- The number of objects created and added is determined by
- .
-
-
-
-
-
-
-
- Adds many anonymously created objects to a list.
-
- The type of object that is contained in the list.
- The fixture.
-
- The list to which the anonymously created objects will be added.
-
- The number of objects created and added.
-
-
-
-
-
- Adds many objects to a list using the provided function to create each object.
-
- The type of object that is contained in the list.
- The fixture.
-
- The list to which the created objects will be added.
-
-
- The function that creates each object which is subsequently added to
- .
-
-
-
- The number of objects created and added is determined by
- .
-
-
-
-
-
-
-
- Customizes an by using all contained .
-
-
-
-
- Encapsulates a customization of an .
-
-
-
-
- Customizes the specified fixture.
-
- The fixture to customize.
-
-
-
- Initializes a new instance of the class.
-
- The customizations.
-
-
-
- Initializes a new instance of the class.
-
- The customizations.
-
-
-
- Customizes the specified fixture.
-
- The fixture to customize.
-
-
-
- Gets the customizations contained within this instance.
-
-
-
-
- Creates a constrained string.
-
-
-
-
- Creates a constrained string based on a ConstrainedStringRequest.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested number if possible; otherwise a instance.
-
-
-
-
- A customization that enables DateTime specimens to be based on the current value.
-
-
-
- When this customization is added to an instance, requests for DateTime specimens
- will be satisfied by returning the current value.
-
-
- This customization reproduces the generation strategy for DateTime specimens used in AutoFixture up to version 2.1.
-
-
-
-
-
- Customizes the specified fixture by adding the specific numeric sequence generators.
-
- The fixture to customize.
-
-
-
- Creates new specimens based on the current value.
-
-
-
-
- Creates a new instance.
-
- The request that describes what to create.
- Not used.
-
- A new instance, if is a request for a
- ; otherwise, a instance.
-
-
-
-
- Finite-state automaton with regular expression operations.
-
- Class invariants:
-
- -
- An automaton is either represented explicitly (with State and Transition} objects)
- or with a singleton string (see Singleton property ExpandSingleton() method) in case the
- automaton is known to accept exactly one string. (Implicitly, all states and transitions of
- an automaton are reachable from its initial state.)
-
- -
- Automata are always reduced (see method Rreduce()) and have no transitions to dead states
- (see RemoveDeadTransitions() method).
-
- -
- If an automaton is non deterministic, then IsDeterministic property returns false (but the
- converse is not required).
-
- -
- Automata provided as input to operations are generally assumed to be disjoint.
-
-
-
- If the states or transitions are manipulated manually, the RestoreInvariant() method and
- SetDeterministic(bool) methods should be used afterwards to restore representation invariants
- that are assumed by the built-in automata operations.
-
-
-
-
- Minimize using Huffman's O(n2) algorithm.
- This is the standard text-book algorithm.
-
-
-
-
- Minimize using Brzozowski's O(2n) algorithm.
- This algorithm uses the reverse-determinize-reverse-determinize trick, which has a bad
- worst-case behavior but often works very well in practice even better than Hopcroft's!).
-
-
-
-
- Minimize using Hopcroft's O(n log n) algorithm.
- This is regarded as one of the most generally efficient algorithms that exist.
-
-
-
-
- Selects whether operations may modify the input automata (default: false
).
-
-
-
-
- Minimize always flag.
-
-
-
-
- The hash code.
-
-
-
-
- The initial.
-
-
-
-
- Initializes a new instance of the class that accepts the empty
- language. Using this constructor, automata can be constructed manually from
- and objects.
-
-
-
-
- Sets or resets allow mutate flag. If this flag is set, then all automata operations
- may modify automata given as input; otherwise, operations will always leave input
- automata languages unmodified. By default, the flag is not set.
-
- if set to true then all automata operations may modify
- automata given as input; otherwise, operations will always leave input automata
- languages unmodified..
- The previous value of the flag.
-
-
-
- Sets or resets minimize always flag. If this flag is set, then {@link #minimize()}
- will automatically be invoked after all operations that otherwise may produce
- non-minimal automata. By default, the flag is not set.
-
- The flag if true, the flag is set.
-
-
-
- Assigns consecutive numbers to the given states.
-
- The states.
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data structures
- like a hash table.
-
-
-
-
- The check minimize always.
-
-
-
-
- The clear hash code.
-
-
-
-
- Creates a shallow copy of the current Automaton.
-
-
- A shallow copy of the current Automaton.
-
-
-
-
- A clone of this automaton, expands if singleton.
-
-
- Returns a clone of this automaton, expands if singleton.
-
-
-
-
- A clone of this automaton unless
-
- allowMutation
-
- is set, expands if singleton.
-
-
- Returns a clone of this automaton unless
-
- allowMutation
-
- is set, expands if singleton.
-
-
-
-
- Returns a clone of this automaton, or this automaton itself if allow_mutation
- flag is set.
-
- A clone of this automaton, or this automaton itself if allow_mutation
- flag is set.
-
-
-
- Expands singleton representation to normal representation.
- Does nothing if not in singleton representation.
-
-
-
-
- The set of reachable accept states.
-
- Returns the set of reachable accept states.
-
-
-
- Returns the set of live states. A state is "live" if an accept state is reachable from it.
-
-
-
-
-
- The sorted array of all interval start points.
-
- Returns sorted array of all interval start points.
-
-
-
- Gets the set of states that are reachable from the initial state.
-
-
- The set of states that are reachable from the initial state.
-
-
-
-
- The minimize.
-
-
-
-
- Recomputes the hash code.
- The automaton must be minimal when this operation is performed.
-
-
-
-
- Reduces this automaton.
- An automaton is "reduced" by combining overlapping and adjacent edge intervals with same
- destination.
-
-
-
-
- Removes transitions to dead states and calls Reduce() and ClearHashCode().
- (A state is "dead" if no accept state is reachable from it).
-
-
-
-
- Adds transitions to explicit crash state to ensure that transition function is total.
-
-
-
-
- Gets the minimization algorithm (default:
-
- MINIMIZE_HOPCROFT
-
- ).
-
-
-
-
- Gets or sets a value indicating whether operations may modify the input automata.
-
-
- true if [allow mutation]; otherwise, false.
-
-
-
-
- Gets or sets a value indicating whether this automaton is definitely deterministic (i.e.,
- there are no choices for any run, but a run may crash).
-
-
- true then this automaton is definitely deterministic (i.e., there are no
- choices for any run, but a run may crash)., false.
-
-
-
-
- Gets or sets the initial state of this automaton.
-
-
- The initial state of this automaton.
-
-
-
-
- Gets or sets the singleton string for this automaton. An automaton that accepts exactly one
- string may be represented in singleton mode. In that case, this method may be
- used to obtain the string.
-
- The singleton string, null if this automaton is not in singleton mode.
-
-
-
- Gets or sets a value indicating whether this instance is singleton.
-
-
- true if this instance is singleton; otherwise, false.
-
-
-
-
- Gets or sets a value indicating whether this instance is debug.
-
-
- true if this instance is debug; otherwise, false.
-
-
-
-
- Gets or sets a value indicating whether IsEmpty.
-
-
-
-
- Gets the number of states in this automaton.
-
- Returns the number of states in this automaton.
-
-
-
- Gets the number of transitions in this automaton. This number is counted
- as the total number of edges, where one edge may be a character interval.
-
-
-
-
- Returns a new (deterministic) automaton that accepts any single character.
-
- A new (deterministic) automaton that accepts any single character.
-
-
-
- Returns a new (deterministic) automaton that accepts all strings.
-
-
- A new (deterministic) automaton that accepts all strings.
-
-
-
-
- Returns a new (deterministic) automaton that accepts a single character of the given value.
-
- The c.
- A new (deterministic) automaton that accepts a single character of the given value.
-
-
-
- Returns a new (deterministic) automaton that accepts a single char whose value is in the
- given interval (including both end points).
-
- The min.
- The max.
-
- A new (deterministic) automaton that accepts a single char whose value is in the
- given interval (including both end points).
-
-
-
-
- Returns a new (deterministic) automaton with the empty language.
-
-
- A new (deterministic) automaton with the empty language.
-
-
-
-
- Returns a new (deterministic) automaton that accepts only the empty string.
-
-
- A new (deterministic) automaton that accepts only the empty string.
-
-
-
-
- Returns a new automaton that accepts strings representing decimal non-negative integers in
- the given interval.
-
- The minimum value of interval.
- The maximum value of inverval (both end points are included in the
- interval).
- If f >0, use fixed number of digits (strings must be prefixed by 0's
- to obtain the right length) otherwise, the number of digits is not fixed.
- A new automaton that accepts strings representing decimal non-negative integers
- in the given interval.
-
-
-
- Returns a new (deterministic) automaton that accepts the single given string.
-
- The string.
- A new (deterministic) automaton that accepts the single given string.
-
-
-
- Constructs sub-automaton corresponding to decimal numbers of length x.Substring(n).Length.
-
- The x.
- The n.
-
-
-
-
- Constructs sub-automaton corresponding to decimal numbers of value at least x.Substring(n)
- and length x.Substring(n).Length.
-
- The x.
- The n.
- The initials.
- if set to true [zeros].
-
-
-
-
- Constructs sub-automaton corresponding to decimal numbers of value at most x.Substring(n)
- and length x.Substring(n).Length.
-
- The x.
- The n.
-
-
-
-
- Constructs sub-automaton corresponding to decimal numbers of value between x.Substring(n)
- and y.Substring(n) and of length x.Substring(n).Length (which must be equal to
- y.Substring(n).Length).
-
- The x.
- The y.
- The n.
- The initials.
- if set to true [zeros].
-
-
-
-
- Returns a new (deterministic) automaton that accepts a single character in the given set.
-
- The set.
-
-
-
-
- Constructs automaton that accept strings representing nonnegative integer that are not
- larger than the given value.
-
- The n string representation of maximum value.
-
-
-
-
- Constructs automaton that accept strings representing nonnegative integers that are not
- less that the given value.
-
- The n string representation of minimum value.
-
-
-
-
- Constructs automaton that accept strings representing decimal numbers that can be
- written with at most the given number of digits. Surrounding whitespace is permitted.
-
- The i max number of necessary digits.
-
-
-
-
- Constructs automaton that accept strings representing decimal numbers that can be
- written with at most the given number of digits in the fraction part. Surrounding
- whitespace is permitted.
-
- The i max number of necessary fraction digits.
-
-
-
-
- Constructs deterministic automaton that matches strings that contain the given substring.
-
- The s.
-
-
-
-
- Adds epsilon transitions to the given automaton. This method adds extra character interval
- transitions that are equivalent to the given set of epsilon transitions.
-
- The automaton.
- A collection of objects representing pairs of
- source/destination states where epsilon transitions should be added.
-
-
-
- Returns an automaton that accepts the union of the languages of the given automata.
-
- The l.
-
- An automaton that accepts the union of the languages of the given automata.
-
-
- Complexity: linear in number of states.
-
-
-
-
- Returns a (deterministic) automaton that accepts the complement of the language of the
- given automaton.
-
- The automaton.
- A (deterministic) automaton that accepts the complement of the language of the
- given automaton.
-
- Complexity: linear in number of states (if already deterministic).
-
-
-
-
- Determinizes the specified automaton.
-
-
- Complexity: exponential in number of states.
-
- The automaton.
-
-
-
- Determinizes the given automaton using the given set of initial states.
-
- The automaton.
- The initial states.
-
-
-
- Determines whether the given automaton accepts no strings.
-
- The automaton.
-
- true if the given automaton accepts no strings; otherwise, false.
-
-
-
-
- Determines whether the given automaton accepts the empty string and nothing else.
-
- The automaton.
-
- true if the given automaton accepts the empty string and nothing else; otherwise,
- false.
-
-
-
-
- Returns an automaton that accepts the intersection of the languages of the given automata.
- Never modifies the input automata languages.
-
- The a1.
- The a2.
-
-
-
-
- Returns an automaton that accepts the union of the empty string and the language of the
- given automaton.
-
- The automaton.
-
- Complexity: linear in number of states.
-
- An automaton that accepts the union of the empty string and the language of the
- given automaton.
-
-
-
- Accepts the Kleene star (zero or more concatenated repetitions) of the language of the
- given automaton. Never modifies the input automaton language.
-
- The automaton.
-
- An automaton that accepts the Kleene star (zero or more concatenated repetitions)
- of the language of the given automaton. Never modifies the input automaton language.
-
-
- Complexity: linear in number of states.
-
-
-
-
- Accepts min
or more concatenated repetitions of the language of the given
- automaton.
-
- The automaton.
- The minimum concatenated repetitions of the language of the given
- automaton.
- Returns an automaton that accepts min
or more concatenated
- repetitions of the language of the given automaton.
-
-
- Complexity: linear in number of states and in min
.
-
-
-
-
- Accepts between min
and max
(including both) concatenated
- repetitions of the language of the given automaton.
-
- The automaton.
- The minimum concatenated repetitions of the language of the given
- automaton.
- The maximum concatenated repetitions of the language of the given
- automaton.
-
- Returns an automaton that accepts between min
and max
- (including both) concatenated repetitions of the language of the given automaton.
-
-
- Complexity: linear in number of states and in min
and max
.
-
-
-
-
- Returns true if the given string is accepted by the automaton.
-
- The automaton.
- The string.
-
-
- Complexity: linear in the length of the string.
-
-
-
-
- Implements the operator ==.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- Implements the operator !=.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- Determines whether the specified objects are equal.
-
- The first object to compare.
- The second object to compare.
-
- true if the specified objects are equal; otherwise, false.
-
-
-
-
- Returns a hash code for this instance.
-
- The obj.
-
- A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
-
-
- The type of is a reference type and is null.
-
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
-
- true if the current object is equal to the parameter; otherwise, false.
-
- An object to compare with this object.
-
-
-
-
- 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
- .
-
-
- The parameter is null.
- 2
-
-
-
- Serves as a hash function for a particular type.
-
-
- A hash code for the current .
-
- 2
-
-
-
- Minimizes (and determinizes if not already deterministic) the given automaton.
-
- The automaton.
-
-
-
- Minimizes the given automaton using Brzozowski's algorithm.
-
- The automaton.
-
-
-
- Minimizes the given automaton using Huffman's algorithm.
-
- The automaton.
-
-
-
- Relays a request for a range number to a .
-
-
-
-
- Creates a new specimen based on a requested range.
-
- The request that describes what to create.
- A container that can be used to create other specimens.
-
- A specimen created from a encapsulating the operand
- type, the minimum and the maximum of the requested number, if possible; otherwise,
- a instance.
-
-
-
-
- Regular Expression extension to Automaton.
-
-
-
-
- Syntax flag, enables intersection.
-
-
-
-
- Syntax flag, enables complement.
-
-
-
-
- Syntax flag, enables empty language.
-
-
-
-
- Syntax flag, enables anystring.
-
-
-
-
- Syntax flag, enables named automata.
-
-
-
-
- Syntax flag, enables numerical intervals.
-
-
-
-
- Syntax flag, enables all optional regexp syntax.
-
-
-
-
- Prevents a default instance of the class from being created.
-
-
-
-
- Initializes a new instance of the class from a string.
-
- A string with the regular expression.
-
-
-
- Initializes a new instance of the class from a string.
-
- A string with the regular expression.
- Boolean 'or' of optional syntax constructs to be enabled.
-
-
-
- Constructs new Automaton
from this RegExp
.
- Same as toAutomaton(null)
(empty automaton map).
-
-
-
-
-
- Constructs new Automaton
from this RegExp
.
- Same as toAutomaton(null,minimize)
(empty automaton map).
-
- if set to true [minimize].
-
-
-
-
- Constructs new Automaton
from this RegExp
.
- The constructed automaton is minimal and deterministic and has no
- transitions to dead states.
-
- The provider of automata for named identifiers.
-
-
-
-
- Constructs new Automaton
from this RegExp
.
- The constructed automaton has no transitions to dead states.
-
- The provider of automata for named identifiers.
- if set to true the automaton is minimized and determinized.
-
-
-
-
- Constructs new Automaton
from this RegExp
.
- The constructed automaton is minimal and deterministic and has no
- transitions to dead states.
-
- The a map from automaton identifiers to automata.
-
-
-
-
- Constructs new Automaton
from this RegExp
.
- The constructed automaton has no transitions to dead states.
-
- The map from automaton identifiers to automata.
- if set to true the automaton is minimized and determinized.
-
-
-
-
- Sets or resets allow mutate flag.
- If this flag is set, then automata construction uses mutable automata,
- which is slightly faster but not thread safe.
-
- if set to true the flag is set.
- The previous value of the flag.
-
-
-
- Returns a that represents the parsed regular expression.
-
-
- A that represents the parsed regular expression.
-
-
-
-
- Returns the set of automaton identifiers that occur in this regular expression.
-
- The set of automaton identifiers that occur in this regular expression.
-
-
-
- Relays a request for a string that matches a regular expression to a .
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
-
- Special automata operations.
-
-
-
-
- Reverses the language of the given (non-singleton) automaton while returning the set of
- new initial states.
-
- The automaton.
-
-
-
-
- Automaton state.
-
-
-
-
- Initializes a new instance of the class. Initially, the new state is a
- reject state.
-
-
-
-
- Implements the operator ==.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- Implements the operator !=.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- 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
- .
-
- The parameter is null.
- 2
-
-
-
- Serves as a hash function for a particular type.
-
-
- A hash code for the current .
-
- 2
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
-
- true if the current object is equal to the parameter; otherwise, false.
-
- An object to compare with this object.
-
-
-
-
- Compares the current object with another object of the same type. States are ordered by
- the time of construction.
-
- An object to compare with this object.
-
- A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings:
- Value
- Meaning
- Less than zero
- This object is less than the parameter.
- Zero
- This object is equal to .
- Greater than zero
- This object is greater than .
-
-
-
-
- Returns a describing this state.
-
-
- A describing this state.
-
-
-
-
- Adds an outgoing transition.
-
-
- The transition.
-
-
-
-
- Performs lookup in transitions, assuming determinism.
-
-
- The character to look up.
-
-
- The destination state, null if no matching outgoing transition.
-
-
-
-
- Performs lookup in transitions, allowing nondeterminism.
-
-
- The character to look up.
-
-
- The collection where destination states are stored.
-
-
-
-
- Gets the transitions sorted by (min, reverse max, to) or (to, min, reverse max).
-
-
- if set to true [to first].
-
-
- The transitions sorted by (min, reverse max, to) or (to, min, reverse max).
-
-
-
-
- Gets the id.
-
-
-
-
- Gets or sets a value indicating whether this State is Accept.
-
-
-
-
- Gets or sets this State Number.
-
-
-
-
- Gets or sets this State Transitions.
-
-
-
-
- Determines whether the specified objects are equal.
-
- The first object of type to compare.
- The second object of type to compare.
-
- true if the specified objects are equal; otherwise, false.
-
-
-
-
- Returns a hash code for this instance.
-
- The obj.
-
- A hash code for this instance, suitable for use in hashing algorithms and data structures
- like a hash table.
-
-
- The type of is a reference type and is null.
-
-
-
-
- Pair of states.
-
-
-
-
- Initializes a new instance of the class.
-
- The s.
- The s1.
- The s2.
-
-
-
- Initializes a new instance of the class.
-
- The first state.
- The second state.
-
-
-
- Implements the operator ==.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- Implements the operator !=.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
-
- true if the current object is equal to the parameter; otherwise,
- false.
-
- An object to compare with this object.
-
-
-
-
- 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
- .
- The
- parameter is null.
- 2
-
-
-
- Serves as a hash function for a particular type.
-
-
- A hash code for the current .
-
- 2
-
-
-
- Gets or sets the first component of this pair.
-
-
- The first state.
-
-
-
-
- Gets or sets the second component of this pair.
-
-
- The second state.
-
-
-
-
- Relays a request for a constrained string to a .
-
-
-
-
- Creates a new specimen based on a specified length of characters that are allowed.
-
- The request that describes what to create.
- A container that can be used to create other specimens.
-
- A specimen created from a encapsulating the operand
- type, the minimum and the maximum of the requested number, if possible; otherwise,
- a instance.
-
-
-
-
- Automaton transition.
-
- A transition, which belongs to a source state, consists of a Unicode character interval
- and a destination state.
-
-
-
-
-
- Initializes a new instance of the class.
- (Constructs a new singleton interval transition).
-
- The transition character.
- The destination state.
-
-
-
- Initializes a new instance of the class.
- (Both end points are included in the interval).
-
- The transition interval minimum.
- The transition interval maximum.
- The destination state.
-
-
-
- Implements the operator ==.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- Implements the operator !=.
-
- The left.
- The right.
-
- The result of the operator.
-
-
-
-
- Returns a describing this state.
-
-
- A describing this state.
-
-
-
-
- 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
- .
-
- The
- parameter is null.
-
- 2
-
-
-
- Serves as a hash function for a particular type.
-
-
- A hash code for the current .
-
- 2
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
-
- true if the current object is equal to the parameter; otherwise, false.
-
- An object to compare with this object.
-
-
-
-
- Gets the minimum of this transition interval.
-
-
-
-
- Gets the maximum of this transition interval.
-
-
-
-
- Gets the destination of this transition.
-
-
-
-
- Initializes a new instance of the class.
-
- if set to true [to first].
-
-
-
- Compares by (min, reverse max, to) or (to, min, reverse max).
-
- The first Transition.
- The second Transition.
-
-
-
-
- An object that will generate text from a regular expression. In a way,
- it's the opposite of a regular expression matcher: an instance of this class
- will produce text that is guaranteed to match the regular expression passed in.
-
-
-
-
- Initializes a new instance of the class.
-
- The regex.
- The random.
-
-
-
- Initializes a new instance of the class.
-
- The regex.
-
-
-
- Generates a random String that is guaranteed to match the regular expression passed to the constructor.
-
-
-
-
-
- Generates a random number within the given bounds.
-
- The minimum number (inclusive).
- The maximum number (inclusive).
- The object used as the randomizer.
- A random number in the given range.
-
-
-
- Creates new instances.
-
-
-
-
- Creates a new instance.
-
- The request that describes what to create.
- Not used.
-
- A new instance, if is a request for a
- ; otherwise, a instance.
-
-
-
-
- Generates a perpetual sequence of items.
-
- The item type.
-
-
- This is a generator that generates a perpetual sequence of items of type
- , based on an encapsulated
- . This can be useful when zipping a against a finite
- sequence, since this sequence will go on for as long as required.
-
-
-
-
-
- Initializes a new instance of the class.
-
- A composer which is used to generate items.
-
-
-
- Returns an enumerator that iterates through the collection.
-
-
-
-
- Returns an enumerator that iterates through a collection.
-
-
- An object that can be used to iterate through the collection.
-
-
-
-
- Encapsulates a maximum length for a string.
-
-
-
-
- Initializes a new instance of the class.
-
- The minimum length.
- The maximum length.
-
-
-
- Initializes a new instance of the class.
-
- The maximum.
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
- true if the specified is equal to this instance; otherwise, false.
-
-
- The parameter is null.
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
-
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- true if the current object is equal to the parameter; otherwise, false.
-
-
-
-
- Gets the minimum length.
-
-
-
-
- Gets the maximum length.
-
-
-
-
- Recursion handler that returns at recursion
- points.
-
-
-
-
- Base class for recursion handling. Tracks requests and reacts when a recursion point in the
- specimen creation process is detected.
-
-
-
-
- Initializes a new instance of the class.
-
- The intercepting builder to decorate.
-
-
-
- Initializes a new instance of the class.
-
- The intercepting builder to decorate.
-
- An IEqualitycomparer implementation to use when comparing requests to determine recursion.
-
-
-
-
- Handles a request that would cause recursion.
-
- The recursion causing request.
- The specimen to return.
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A container that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
- The can be any object, but will often be a
- or other instances.
-
-
-
-
-
- Gets the decorated builder supplied via the constructor.
-
-
-
-
-
-
- Gets the recorded requests so far.
-
-
-
-
- Initializes a new instance of the
- class.
-
- The builder to decorate.
-
-
-
- Initializes a new instance of the
- class.
-
- The builder to decorate.
-
- An implementation to use when
- comparing requests to determine recursion.
-
-
-
-
- Handles a request that would cause recursion.
-
- The recursion-causing request.
-
- An instance.
-
-
-
-
- A signal type used to indicate to the Auto-Property feature that a given request should be
- ingored, and no further processing performed.
-
-
-
- This signal type is different from in that it stops further
- processing. Where NoSpecimen is simply an indication that a particular
- can't provide a value for a request, an OmitSpecimen
- instance explicitly indicates that no value will be provided for a request - not even
- .
-
-
- The OmitSpecimen type is explicitly understood by ,
- but can be returned by any ISpecimenBuilder.
-
-
-
-
-
- Determines whether the specified is equal to this
- instance.
-
-
- The to compare with this instance.
-
-
- if the specified is an instance of
- ; otherwise, .
-
-
-
-
-
- Determines whether the specified instance is equal to the
- current instance.
-
- The other instance.
-
- if is not ;
- otherwise .
-
-
-
- It may seem a little strange that any instance is equal to
- any other instance of that type, but the class is a pure signal type thatcarries no
- state, so there's no reason to distinguish between instances. In essense, it could just
- as well have been modeled as a Singleton, but wasn't because it seems to bring no
- particular extra benefit.
-
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
-
-
- Encapsulates a range for values of a given type.
-
-
-
-
- Initializes a new instance of the class.
-
- Type of the operand.
- The minimum.
- The maximum.
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
- true if the specified is equal to this instance; otherwise, false.
-
-
- The parameter is null.
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
-
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- true if the current object is equal to the parameter; otherwise, false.
-
-
-
-
- Gets the type of the operand.
-
-
- The type of the operand.
-
-
-
-
- Gets the minimum value.
-
-
-
-
- Gets the maximum value.
-
-
-
-
- Encapsulates a pattern for a regular expression.
-
-
-
-
- Initializes a new instance of the class.
-
- The pattern.
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
- true if the specified is equal to this instance; otherwise, false.
-
-
- The parameter is null.
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
-
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- true if the current object is equal to the parameter; otherwise, false.
-
-
-
-
- Gets the regular expression pattern.
-
-
-
-
- Decorates an with a
- .
-
-
-
-
- Transforms one instance into another.
-
-
-
-
- Transforms the supplied builder into another.
-
- The builder to transform.
-
- A new created from .
-
-
-
- Note to implementers: In most scenarios, the transformation is expected to maintain
- behavior of ; usually by applying a Decorator.
-
-
-
-
-
- Decorates the supplied with an
- .
-
- The builder to decorate.
-
- decorated with an
- .
-
-
-
-
- Creates a sequence of ranged numbers, starting at range minimum.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates a new number based on a RangedNumberRequest.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested number if possible; otherwise a instance.
-
-
-
-
- Creates a string that is guaranteed to match a RegularExpressionRequest.
-
-
-
-
- Creates a string that is guaranteed to match a RegularExpressionRequest.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
-
- Creates new specimens based on a incremental sequence of days.
-
-
-
-
- Initializes a new instance of the class.
-
- The base value used to generate specimens.
-
-
-
- Creates a new instance.
-
- The request that describes what to create.
- Not used.
-
- A new instance, if is a request for a
- ; otherwise, a instance.
-
-
-
-
- Supplies instances that can resolve requests for many common
- primitives, such as and .
-
-
-
-
- Returns an enumerator that iterates through the collection.
-
-
- A that can be used to iterate
- through the collection.
-
-
-
-
- Returns an enumerator that iterates through a collection.
-
-
- An object that can be used to iterate
- through the collection.
-
-
-
-
- Contains methods for populating dictionaries with specimens.
-
-
-
-
- Adds many items to a dictionary.
-
- The dictionary to which items should be added.
- The context which can be used to resolve other specimens.
-
-
- This method mainly exists to support AutoFixture's infrastructure code (particularly
- and is not intended for use in user code.
-
-
-
- is not an instance of .
-
-
-
-
- Encapsulates a customization that adds tracking of disposable specimens to an
- .
-
-
-
- Customize an to enable tracking of disposable specimens. Invoke
- on the instance to dispose of all tracked instances.
-
-
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Customizes the specified fixture by applying .
-
- The fixture to customize.
-
-
-
- Disposes .
-
-
-
-
- Disposes .
-
-
- to release both managed and unmanaged resources;
- to release only unmanaged resources.
-
-
-
-
- Gets the behavior that this customization adds to instances.
-
-
-
-
-
- Enables composition customization of a single type of specimen.
-
- The type of specimen.
-
-
-
- Composes a that targets a particular .
-
-
-
-
- Initializes a new instance of the class.
-
-
- The targeted by the created by
- .
-
-
- The factory that creates instances of .
-
-
-
-
- Composes a new instance.
-
-
- A new instance with appropriate filters that targets
- .
-
-
-
-
- Gets the factory that creates instance of .
-
-
-
-
- Gets the targeted .
-
-
-
-
- Gets the input filter.
-
-
-
-
- Gets the transformations that will be applied to during
- .
-
-
-
-
- A tranformation that decorates an with an appropriate
- .
-
-
-
-
- Initializes a new instance of the class.
-
- The target .
-
-
-
- Transforms the supplied builder into another.
-
- The builder to transform.
-
- A new created from .
-
-
-
- Although a throws if the decorated
- returns a , this
- transformation permits NoSpecimen return values if the request is a
- for the . This enables the
- engine to retry the request with the unwrapped request.
-
-
-
-
-
- A transformation that combines an with a
- .
-
-
-
-
- Transforms the supplied builder into another.
-
- The builder to transform.
-
- A new created from .
-
-
-
- This method combines with a
- . This ensures that if the original builder cannot
- deal with a the request is immediately retried with the
- unwrapped request.
-
-
-
-
-
- A transformation that decorates an with a filter that
- filters according to a target type.
-
-
-
-
- Initializes a new instance of the class.
-
- The input filter.
-
-
-
- Transforms the supplied builder into another.
-
- The builder to transform.
-
- A new created from .
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class.
-
-
- A factory which will be used to create specimen instances.
-
-
- Post-processors that will be executed on each created specimen.
-
-
- Enables auto properties if set to .
-
-
-
-
- Controls whether auto-properties will be enabled or not.
-
- Set to to enable auto-properties.
-
- A new instance of with set
- to the value of .
-
-
-
-
- Controls which factory will be used when specimens are created.
-
- The factory.
-
- A new instance of with
- set to the value of
- .
-
-
-
-
- Adds a post-processor to the customization.
-
- The postprocessor to add.
-
- A new instance of with added
- to .
-
-
-
-
- Specifies a function that defines how to create a specimen from a seed.
-
- The factory used to create specimens from seeds.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies an that can create specimens of the
- appropriate type. Mostly for advanced scenarios.
-
-
- An that can create specimens of the appropriate type.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that an anonymous object should be created in a particular way; often by
- using a constructor.
-
-
- A function that will be used to create the object. This will often be a constructor.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using a single input
- parameter for the factory.
-
-
- The type of input parameter to use when invoking
- .
-
- A function that will be used to create the object. This will often be a constructor
- that takes a single constructor argument of type .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using two input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes two constructor arguments of type and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using three input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- and .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using four input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- The type of the fourth input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- , and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Performs the specified action on a specimen.
-
- The action to perform.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Disables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned an anonymous value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will should have a value
- assigned.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned a specific value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will have
- assigned.
-
-
- The value to assign to the property or field identified by
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Enables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Withouts the specified property picker.
-
- The type of the property.
- The property picker.
-
-
-
-
- Gets a value indicating whether writable properties and fields will be assigned with
- anonymous values.
-
-
-
-
- Gets the postprocessors that will be executed on each created specimen.
-
-
-
-
- Gets the transformations that will be applied to
- during
- .
-
-
-
- These transformations compose the appropriate post-processors according to the rules
- encapsulated by the instance.
-
-
-
-
-
- A transformation that decorates an with the appropriate
- postprocessor.
-
-
-
-
- Initializes a new instance of the
- class.
-
- The postprocessors.
-
-
-
- Transforms the supplied builder into another.
-
- The builder to transform.
-
- A new created from .
-
-
-
-
- A transformation that decorates an with a post-processor
- that applies the appropriate auto-properties.
-
-
-
-
- Initializes a new instance of the
- class.
-
- The postprocessors.
- The input filter.
-
- Indicates whether auto-properties are enabled.
-
-
-
-
- Transforms the supplied builder into another.
-
- The builder to transform.
-
- A new created from .
-
-
-
-
- Aggregates an arbitrary number of instances.
-
- The type of specimen to customize.
-
-
-
- Initializes a new instance of the class
- with a sequence of instances.
-
- The composers to aggregate.
-
-
-
- Initializes a new instance of the class
- with an array of instances.
-
- The composers to aggregate.
-
-
-
- Specifies a function that defines how to create a specimen from a seed.
-
- The factory used to create specimens from seeds.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies an that can create specimens of the
- appropriate type. Mostly for advanced scenarios.
-
-
- An that can create specimens of the appropriate type.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that an anonymous object should be created in a particular way; often by
- using a constructor.
-
-
- A function that will be used to create the object. This will often be a constructor.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using a single input
- parameter for the factory.
-
-
- The type of input parameter to use when invoking
- .
-
- A function that will be used to create the object. This will often be a constructor
- that takes a single constructor argument of type .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using two input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes two constructor arguments of type and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using three input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- and .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Specifies that a specimen should be created in a particular way, using four input
- parameters for the construction.
-
-
- The type of the first input parameter to use when invoking .
-
-
- The type of the second input parameter to use when invoking .
-
-
- The type of the third input parameter to use when invoking .
-
-
- The type of the fourth input parameter to use when invoking .
-
-
- A function that will be used to create the object. This will often be a constructor
- that takes three constructor arguments of type ,
- , and
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Performs the specified action on a specimen.
-
- The action to perform.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Disables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned an anonymous value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will should have a value
- assigned.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned a specific value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will have
- assigned.
-
-
- The value to assign to the property or field identified by
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Enables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property should not be assigned any automatic value as
- part of specimen post-processing.
-
- The type of the property or field to ignore.
-
- An expression that identifies the property or field to be ignored.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Composes a new instance.
-
-
- A new instance.
-
-
-
-
- Gets the aggregated composers.
-
-
-
-
- Aggregates an arbitrary number of instances.
-
- The type of specimen to customize.
-
-
-
- Initializes a new instance of the
- class with a sequence of instances.
-
- The composers to aggregate.
-
-
-
- Initializes a new instance of the
- class with an array of instances.
-
- The composers to aggregate.
-
-
-
- Performs the specified action on a specimen.
-
- The action to perform.
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Disables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned an anonymous value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will should have a value
- assigned.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property or field should be assigned a specific value as
- part of specimen post-processing.
-
- The type of the property of field.
-
- An expression that identifies the property or field that will have
- assigned.
-
-
- The value to assign to the property or field identified by
- .
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Enables auto-properties for a type of specimen.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Registers that a writable property should not be assigned any automatic value as
- part of specimen post-processing.
-
- The type of the property or field to ignore.
-
- An expression that identifies the property or field to be ignored.
-
-
- An which can be used to further customize the
- post-processing of created specimens.
-
-
-
-
- Composes a new instance.
-
-
- A new instance.
-
-
-
-
- Gets the aggregated composers.
-
-
-
-
- Supplies instances that can be used to implement the default
- engine of AutoFixture.
-
-
-
-
- Supplies instances that works as AutoFixture's
- 'transmission'. Without those builders, very little is likely to work.
-
-
-
-
- Represents an Equivalence Class for the concept of Many.
-
-
-
-
- Gets or sets the count that specifies how many Many is.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Returns an enumerator that iterates through the collection.
-
-
- A that can be used to iterate
- through the collection.
-
-
-
-
- Returns an enumerator that iterates through a collection.
-
-
- An object that can be used to iterate
- through the collection.
-
-
-
-
- Gets or sets the count that specifies how many Many is.
-
-
-
-
- Initializes a new instance of the class with
- an instance of .
-
-
-
-
- Initializes a new instance of the class with the
- supplied sequence of .
-
-
- The builders to use instead of .
-
-
-
-
- Initializes a new instance of the class with the
- supplied array of .
-
-
- The builders to use instead of .
-
-
-
-
- Returns an enumerator that iterates through the collection.
-
-
- A that can be used to iterate
- through the collection.
-
-
-
-
- Generates enum values in a round-robin fashion.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates a new enum value based on a request.
-
- The request that describes what to create.
-
- A context that can be used to create other specimens. Not used.
-
-
- An enum value if appropriate; otherwise a instance.
-
-
-
- If is a that represents an enum, an
- instance of that enum is returned. Differing values are returned, starting with the
- first value. When all values of the enum type have been served, the sequence starts
- over again.
-
-
-
-
-
- Contains extension methods for freezing specimens in instances.
-
-
-
-
- Freezes the type to a single value.
-
- The type to freeze.
- The fixture.
-
- The value that will subsequently always be created for .
-
-
-
- The method freezes the type to always return the same
- instance whenever an instance of the type is requested either directly, or indirectly as a
- nested value of other types.
-
-
-
-
-
-
-
- Freezes the type to a single value.
-
- The type to freeze.
- The fixture.
-
- Any data that adds additional information when creating the anonymous object.
-
-
- The value that will subsequently always be created for .
-
-
-
- The method freezes the type to always return the
- same instance whenever an instance of the type is requested either directly, or
- indirectly as a nested value of other types.
-
-
-
-
-
-
-
- Freezes the type to a single value.
-
- The type to freeze.
- The fixture.
-
- A function that customizes a given and returns
- the modified composer.
-
-
- The value that will subsequently always be created for .
-
-
-
- The method freezes the type to always return the
- same instance whenever an instance of the type is requested either directly, or
- indirectly as a nested value of other types. The frozen instance is created by an
- that is the result of applying the
- .
-
-
-
-
-
-
-
- Contains extension methods for registering specimens in instances.
-
-
-
-
- Injects a specific instance for a specific type.
-
-
- The type for which should be injected.
-
- The fixture.
- The item to inject.
-
-
-
- Registers a creation function for a specifc type.
-
-
- The type for which should be registered.
-
- The fixture.
-
- A function that will be used to create objects of type every
- time the is asked to create an object of that type.
-
-
-
-
- Registers a creation function for a specific type, when that creation function requires
- a single input parameter.
-
-
- The type of the input parameter used by .
-
-
- The type for which should be registered.
-
- The fixture.
-
- A function that will be used to create objects of type every
- time the is asked to create an object of that type.
-
-
-
-
- Registers a creation function for a specific type, when that creation function requires
- two input parameters.
-
-
- The type of the first input parameter used by .
-
-
- The type of the second input parameter used by .
-
-
- The type for which should be registered.
-
- The fixture.
-
- A function that will be used to create objects of type every
- time the is asked to create an object of that type.
-
-
-
-
- Registers a creation function for a specific type, when that creation function requires
- three input parameters.
-
-
- The type of the first input parameter used by .
-
-
- The type of the second input parameter used by .
-
-
- The type of the third input parameter used by .
-
-
- The type for which should be registered.
-
- The fixture.
-
- A function that will be used to create objects of type every
- time the is asked to create an object of that type.
-
-
-
-
- Registers a creation function for a specific type, when that creation function requires
- four input parameters.
-
-
- The type of the first input parameter used by .
-
-
- The type of the second input parameter used by .
-
-
- The type of the third input parameter used by .
-
-
- The type of the fourth input parameter used by .
-
-
- The type for which should be registered.
-
- The fixture.
-
- A function that will be used to create objects of type every
- time the is asked to create an object of that type.
-
-
-
-
- A customization that will freeze a specimen of a given .
-
-
-
-
- Initializes a new instance of the class.
-
- The to freeze.
-
- is null.
-
-
-
-
- Initializes a new instance of the class.
-
- The to freeze.
-
- The to map the frozen value to.
-
-
- Either or is null.
-
-
- is not assignable from .
-
-
-
-
- Customizes the fixture by freezing the value of .
-
- The fixture to customize.
-
- is null.
-
-
-
-
- Gets the to freeze.
-
-
-
-
- Gets the to which the frozen value
- should be mapped to. Defaults to the same as .
-
-
-
-
- A customization that uses a particular constructor selection mechanism to pick and invoke
- a constructor to create specimens of the targeted type.
-
-
-
-
- Initializes a new instance of the class.
-
-
- The for which should be used to select the
- most appropriate constructor.
-
-
- The query that selects a constructor for .
-
-
-
-
- Customizes the specified fixture by modifying to use
- as the strategy for creating new specimens.
-
- The fixture to customize.
-
-
-
- Gets the for which should be used to select the
- most appropriate constructor.
-
-
-
-
- Gets the query that selects a constructor for .
-
-
-
-
- Provides anonymous object creation services.
-
-
-
-
- Customizes the creation algorithm for a single object, effectively turning off all
- Customizations on the .
-
-
- The type of object for which the algorithm should be customized.
-
-
- A that can be used to customize the creation
- algorithm before creating the object.
-
-
-
- The Build method kicks off a Fluent API which is usually completed by invoking
- on the method
- chain.
-
-
-
-
-
- Applies a customization.
-
- The customization to apply.
- An where the customization is applied.
-
-
- Note to implementers: the returned is expected to have
- applied. Whether the return value is the same instance
- as the current instance, or a copy is unspecfied.
-
-
-
-
-
- Customizes the creation algorithm for all objects of a given type.
-
- The type of object to customize.
-
- A function that customizes a given and returns
- the modified composer.
-
-
-
-
- Gets the behaviors that are applied when
- is invoked.
-
-
-
-
- Gets customizations that will take into
- accout.
-
-
-
- It is expected that customizations pre-empt whichever other
- is created by
- .
-
-
-
-
-
- Gets or sets if writable properties should generally be assigned a value when
- generating an anonymous object.
-
-
-
-
- Gets or sets a number that controls how many objects are created when a
- creates more than one anonymous objects.
-
-
-
-
- Gets the residue collectors that will
- take into account.
-
-
-
- It is expected that residue collectors provide fallback mechanisms if no ealier
- can handle a request.
-
-
-
-
-
- Selects public constructors ordered so that any constructor with array arguments are
- selected before any other public constructor.
-
-
- The main target of this implementation is to pick constructors
- with array arguments before any other constructor.
-
-
-
-
- Defines a strategy for selecting methods (such as constructors or factory methods) from a
- type.
-
-
-
-
- Selects the methods for the supplied type.
-
- The type.
- Methods for .
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , giving priority to any constructor
- with one or more array arguments.
-
-
-
- Given several constructors, this implementation will favor those constructors which
- contain array arguments. Constructors with most matching arguments are returned before
- constructors with less matching arguments.
-
-
- Any other constructors are returned with the most modest constructors first.
-
-
-
-
-
-
- Relays a request for an array to a and converts the result
- to the desired array type.
-
-
-
-
- Creates a new array based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- An array of the requested type if possible; otherwise a
- instance.
-
-
-
- If is a request for an array and
- can satisfy a for the element type, the return value is a
- populated array of the requested type. If not, the return value is a
- instance.
-
-
-
-
-
- Relays a request for an to a request for a
- and retuns the result.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A populated of the appropriate item type if possible;
- otherwise a instance.
-
-
-
- If is a request for an and
- can satisfy a request for a populated specimen of that type,
- this value will be returned. If not, the return value is a
- instance.
-
-
-
-
-
- Encapsulates logic that determines whether a request is a request for a
- .
-
-
-
-
- A Specification that evaluates requests.
-
-
-
- This is a codification of the Specification patter for requests. This interface can (and
- should) be used in any place where you need to filter requests for specimens.
-
-
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- if is satisfied by the Specification;
- otherwise, .
-
-
-
-
- Evaluates a request for a specimen to determine whether it's a request for a
- .
-
- The specimen request.
-
- if is a request for a
- ; otherwise, .
-
-
-
-
- An implementation of IConstructorQuery that composes other IConstructorQuery instances.
-
-
-
-
- Defines a strategy for selecting constructors from a type.
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
- Constructors for .
-
-
-
- Initializes a new instance of the class.
-
- The queries.
-
-
-
- Initializes a new instance of the class.
-
- The queries.
-
-
-
- Selects the constructors for the supplied type by delegating to .
-
- The type.
-
- All public constructors for , ordered by the order of the
- IConstructorQuery instances in .
-
-
-
- The ordering of the returned constructors is based on the order of the IConstructorQuery
- instances in .
-
-
- In case of two constructors with an equal number of parameters, the ordering is
- unspecified.
-
-
-
-
-
- Gets the child builders.
-
-
-
-
- An implementation of that composes other IMethodQuery instances.
-
-
-
-
- Initializes a new instance of the class.
-
- The queries.
-
-
-
- Initializes a new instance of the class.
-
- The queries.
-
-
-
- Selects the methods for the supplied type.
-
- The type.
- Methods for .
-
-
-
- Gets the queries supplied through one of the constructors.
-
-
-
-
- Encapsulates a constructor as a method.
-
-
-
-
- Represents some kind of method that can be invoked with a known set of parameters.
-
-
-
-
- Invokes the method with the supplied parameters.
-
- The parameters.
- The result of the method call.
-
-
-
- Gets information about the parameters of the method.
-
-
-
-
- Initializes a new instance of the class.
-
- The constructor.
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
- if the specified is equal to this instance;
- otherwise, .
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
-
-
- Invokes the method with the supplied parameters.
-
- The parameters.
- The result of the method call.
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- if the current object is equal to the
- parameter; otherwise, .
-
-
-
-
- Gets the constructor.
-
-
-
-
- Gets information about the parameters of the method.
-
-
-
-
- Creates new instances.
-
-
-
-
- Creates a new instance.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
- is null.
-
- A new instance, if is a request for a
- ; otherwise, a instance.
-
-
-
-
- Relays a request for an to a request for a
- and retuns the result.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A populated of the appropriate item type if
- possible; otherwise a instance.
-
-
-
- If is a request for an
- and can satisfy a
- request for a populated specimen of that type, this value will be returned. If not, the
- return value is a instance.
-
-
-
-
-
- Encapsulates logic that determines whether a request is a request for a dictionary.
-
-
-
-
- Evaluates a request for a specimen to determine whether it's a request for a
- dictionary.
-
- The specimen request.
-
- if is a request for a
- ; otherwise, .
-
-
-
-
- Tracks all disposable specimens created by a decorated to
- be able to dispose them when signalled.
-
-
-
- The DisposableTracker examines all specimens created by a decorated
- . All specimens that implement are
- tracked so that they can be deterministically disposed. This happens when
- is invoked on the instance.
-
-
-
-
-
- Initializes a new instance of the class.
-
- The decorated builder.
-
-
- After initilization, is availble through the
- property.
-
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The specimen created by the decorated builder.
-
-
-
- This method delegates creation of specimens to the decorated .
- However, before specimens are returned they are examined and tracked in the
- list if they implement . They can
- subsequently be disposed by invoking the method on the
- instance.
-
-
-
-
-
- Disposes all items in the list and removes them from the
- list.
-
-
-
-
- Disposes all items in the list and removes them from the
- list.
-
-
- to release both managed and unmanaged resources;
- to release only unmanaged resources.
-
-
-
-
- Gets the decorated builder.
-
-
-
- This property exposes the decorated builder originally supplied to the constructor.
-
-
-
-
-
-
- Gets the disposable specimens currently tracked by this instance.
-
-
-
- Items are added to this list by the
- method.
-
-
-
-
-
- Decorates instances with
- instances.
-
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Decorates the supplied builder with a .
-
- The builder to transform.
-
- A new that decorates .
-
-
-
- The returned is also added to the
- property.
-
-
-
-
-
- Disposes all and clears the list.
-
-
-
-
- Disposes all and clears the list.
-
-
- to release both managed and unmanaged resources;
- to release only unmanaged resources.
-
-
-
-
- Gets the trackers created by this instance. Each time is
- invoked, a new instance is created and added to this
- list.
-
-
-
-
- Relays a request for to a and
- converts the result to a sequence of the requested type.
-
-
-
-
- Creates a new sequence of items based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A sequence of the requested type if possible; otherwise a
- instance.
-
-
-
- If is a request for and
- can satisfy a for the item
- type, the return value is a populated sequence of the requested type. If not, the
- return value is a instance.
-
-
-
-
-
- Encapsulates an instance method. This is essentially an Adapter over
- .
-
-
-
-
- Initializes a new instance of the class.
-
- The instance method.
- The owner.
-
-
- The owner is expected to expose the method designated by
- . If not, the method will fail.
-
-
-
-
-
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
- if the specified is equal to this
- instance; otherwise, .
-
-
- The parameter is null.
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
-
-
- Invokes the method with the supplied parameters.
-
- The parameters.
- The result of the method call.
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- if the current object is equal to the
- parameter; otherwise, .
-
-
-
-
- Gets the method originally supplied through the constructor.
-
-
-
-
-
- Gets the owner originally supplied through the constructor.
-
-
-
-
-
- Gets information about the parameters of the method.
-
-
-
-
- Creates a new instance of the requested type by invoking the first method it can
- satisfy.
-
-
-
-
- Initializes a new instance of the class with the supplied
- .
-
-
- The that defines which methods are attempted.
-
-
-
-
- Creates a specimen of the requested type by invoking the first constructor or method it
- can satisfy.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A specimen generated from a method of the requested type, if possible;
- otherwise, .
-
-
-
- This method uses the first constructor or method returned by where
- can create values for all parameters.
-
-
-
-
-
- Gets the that defines which constructors will be
- attempted.
-
-
-
-
- Encapsulates a static method.
-
-
-
-
- Initializes a new instance of the class.
-
- The methodInfo.
-
-
-
- Initializes a new instance of the class.
-
- The method info.
- The method parameters.
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
- true if the specified is equal to this instance; otherwise, false.
-
-
- The parameter is null.
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
-
-
- Invokes the method with the supplied parameters.
-
- The parameters.
- The result of the method call.
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- true if the current object is equal to the parameter; otherwise, false.
-
-
-
-
- Gets the method.
-
-
-
-
- Gets information about the parameters of the method.
-
-
-
-
- Encapsulates logic that determines whether a request is a request for a
- .
-
-
-
-
- Evaluates a request for a specimen to determine whether it's a request for a
- .
-
- The specimen request.
-
- if is a request for a
- ; otherwise, .
-
-
-
-
- Selects public factory methods ordered by the modest first.
-
-
-
-
- Selects the public factory methods for the supplied type.
-
- The type.
-
- All public factory methods for , ordered by the modest first.
-
-
-
- The ordering of the returned methods is based on the number of parameters of the
- method. Methods with fewer parameters are returned before methods with more
- parameters. This means that if a default parameterless factory methods exists, it
- will be the first one returned.
-
-
- In case of two factory methods with an equal number of parameters, the ordering is
- unspecified.
-
-
-
-
-
- Selects the public factory methods for the supplied type.
-
- The type.
-
- All public factory methods for , ordered by the modest first.
-
-
-
- The ordering of the returned methods is based on the number of parameters of the
- method. Methods with fewer parameters are returned before methods with more
- parameters. This means that if a default parameterless factory methods exists, it
- will be the first one returned.
-
-
- In case of two factory methods with an equal number of parameters, the ordering is
- unspecified.
-
-
-
-
-
- Selects public constructors ordered so that any constructor with arguments matching
- are selected before any other public constructor.
-
-
- The main target of this implementation is to pick
- before any other
- constructor. This can be used to populate a Collection instance with a list of items.
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , giving priority to any constructor
- with one or more arguments.
-
-
-
- Given several constructors, this implementation will favor those constructors with
- arguments that matches , where T is the item type of
- , if it's generic. Constructors with most matching arguments are
- returned before constructors with less matching arguments.
-
-
- Any other constructors are returned with the most modest constructors first.
-
-
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , giving priority to any constructor
- with one or more arguments.
-
-
-
- Given several constructors, this implementation will favor those constructors with
- arguments that matches , where T is the item type of
- , if it's generic. Constructors with most matching arguments are
- returned before constructors with less matching arguments.
-
-
- Any other constructors are returned with the most modest constructors first.
-
-
-
-
-
-
- Relays a request for an to a request for a
- and retuns the result.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A populated of the appropriate item type if possible; otherwise
- a instance.
-
-
-
- If is a request for an and
- can satisfy a request for a populated specimen of that type,
- this value will be returned. If not, the return value is a
- instance.
-
-
-
-
-
- Encapsulates logic that determines whether a request is a request for a
- .
-
-
-
-
- Evaluates a request for a specimen to determine whether it's a request for a
- .
-
- The specimen request.
-
- if is a request for a
- ; otherwise, .
-
-
-
-
- A that always returns the same specimen.
-
-
-
-
- Initializes a new instance of the class.
-
-
- The specimen to return from the method.
-
-
-
-
- Returns the same specimen every time.
-
- The request that describes what to create. Ignored.
-
- A context that can be used to create other specimens. Ignored.
-
-
- The specimen supplied to the instance in the constructor.
-
-
-
-
-
- Selects public constructors ordered by the most greedy constructor first.
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , ordered by the most greedy
- constructor first.
-
-
-
- The ordering of the returned constructors is based on the number of parameters of the
- constructor. Constructors with more parameters are returned before constructors with
- fewer parameters. This means that if a default constructor exists, it will be the last
- one returned.
-
-
- In case of two constructors with an equal number of parameters, the ordering is
- unspecified.
-
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , ordered by the most greedy
- constructor first.
-
-
-
- The ordering of the returned constructors is based on the number of parameters of the
- constructor. Constructors with more parameters are returned before constructors with
- fewer parameters. This means that if a default constructor exists, it will be the last
- one returned.
-
-
- In case of two constructors with an equal number of parameters, the ordering is
- unspecified.
-
-
-
-
-
- Indicates that an illigal request was detected.
-
-
-
- Certain requests are considered illegal (such as ) because satisfying
- them can crash the process.
-
-
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class with an
- error message.
-
- The error message.
-
-
-
- Initializes a new instance of the class with an
- error message and an inner exception.
-
- The error message.
- The inner exception.
-
-
-
- Initializes a new instance of the class.
-
-
- The that holds the
- serialized object data about the exception being thrown.
-
-
- The that contains
- contextual information about the source or destination.
-
-
- The parameter is null.
-
-
- The class name is null or is zero (0).
-
-
-
-
- Guards against requests for by throwing an exception.
-
-
-
- Some types (e.g. ) have constructors that take an
- instance that indicate the address of the code block to be executed. IntPtr in itself have
- several constructors, amongst a few that AutoFixture thinks it can resolve; e.g. the
- constructor that takes an as input. This means that AutoFixture, unless
- prevented, will create IntPtr instances with completely invalid addresses such as 1 or 2.
- When code attempts to use these invalid IntPtr instances, the process crashes.
-
-
- To prevent the process from crashing, AutoFixture considers request for IntPtr instances
- illegal. This class implements that rule by throwing an exception if such a request is
- detected.
-
-
-
-
-
- Guards against requests for .
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A instance, unless is a request for
- in which case an exceptoin is thrown.
-
-
- is the .
-
-
-
-
- An that does not customize anything, but can still
- compose an - typically by returning the instance it is
- configured to use.
-
-
-
-
-
- Initializes a new instance of the class.
-
-
-
- Initialized in this way, will return an empty
- .
-
-
-
-
-
- Initializes a new instance of the class with an
- that will be returned by the
- method.
-
-
- The builder to return by the method.
-
-
-
-
- Initializes a new instance of the class with a
- function used to implement the method.
-
-
- The function that will be used to implement .
-
-
-
-
- Does nothing.
-
- Ignored.
- The current instance.
-
-
-
- Does nothing.
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- Ignored.
- The current instance.
-
-
-
- Does nothing
-
- The current instance.
-
-
-
- Does nothing
-
- Ignored.
- The current instance.
-
-
-
- Composes a new instance.
-
-
- An instance.
-
-
-
- Which is returned depends on how the
- instance was configured through its constructor.
-
-
-
-
-
- A boolean 'And' Composite .
-
-
-
-
- Initializes a new instance of the with the
- supplied specifications.
-
- An array of .
-
-
-
- Initializes a new instance of the class with the
- supplied specifications.
-
- A sequence of .
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- if is satisfied by all
- ; otherwise, .
-
-
-
-
- Gets the decorated specifications.
-
-
-
-
- A specification that evaluates whether a request is a request for a type.
-
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- if is a ;
- otherwise, .
-
-
-
-
- A command that assigns anonymous values to all writable properties and fields of a type.
-
-
-
-
- A command that assigns anonymous values to all writable properties and fields of a type.
-
- The specimen type on which properties are assigned.
-
-
-
- A Command that performs an action on a specimen and knows whether that action matches a
- given request.
-
- The type of specimen on which the command acts.
-
-
-
- Executes the command on the supplied specimen.
-
- The specimen on which the command is executed.
-
- An that can be used to resolve other requests.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class with the
- the supplied specification.
-
-
- A specification that is used as a filter to include properties or fields.
-
-
-
- Only properties or fields satisfied by will get
- assigned values.
-
-
-
-
-
- Assigns anonymous values to properties and fields on a specimen
-
-
- The specimen on which property and field values will be assigned.
-
-
- An that is used to create property and field values.
-
-
-
-
- Evaluates whether a request matches a property or field affected by this command.
-
- The specimen request.
-
- if is a
- or that identifies a property or field affected by this
- ; otherwise, .
-
-
-
-
- Gets the type of the specimen.
-
- The specimen.
- The type of the specimen.
-
-
- This implementation ignores and returns the type parameter
- of .
-
-
-
-
-
- Initializes a new instance of the class.
-
-
-
- When created without an explicit specimen type, the
- will infer the specimen type from the actual specimen instance.
-
-
-
-
-
- Initializes a new instance of the class with the
- supplied specimen type.
-
- The specimen type on which properties are assigned.
-
-
-
- Initializes a new instance of the class with the
- supplied specimen type and specification.
-
- The specimen type on which properties are assigned.
-
- A specification that is used as a filter to include properties or fields.
-
-
-
- Only properties or fields satisfied by will get
- assigned values.
-
-
-
-
-
- Gets the type of the specimen.
-
- The specimen.
- The type of the specimen.
-
- This implementation may ignore and instead return the type
- passed to the constructor.
-
-
-
-
- A that is always .
-
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- .
-
-
-
-
- Relays a request for a field to a with a seed based
- on the field's name.
-
-
-
-
- Creates a new specimen based on a requested field.
-
- The request that describes what to create.
- A container that can be used to create other specimens.
-
- A specimen created from a encapsulating the field type
- and name of the requested field, if possible; otherwise, a
- instance.
-
-
-
-
- Decorates an and filters requests so that only some requests
- are passed through to the decorated builder.
-
-
-
-
- Initializes a new instance of the class.
-
- A specimen builder to decorate.
-
- A specification that determines whether will receive the request.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A container that can be used to create other specimens.
-
- A specimen created by the decorated if the filter allows
- the request through; otherwise, a instance.
-
-
-
-
- Gets the decorated builder.
-
-
-
-
- Gets the specification that determines whether will be invoked or
- not.
-
-
-
-
- Decorates an and returns the opposite result.
-
-
-
-
- Initializes a new instance of the by
- decorating the supplied specification.
-
-
- The to decorate.
-
-
-
-
- Returns the opposite result as the decorated .
-
- The specimen request.
-
- if the decorated returns
- ; otherwise, .
-
-
-
-
- Gets the decorated specification.
-
-
-
- This is the that will be inverted.
-
-
-
-
-
- Signals that many similar instances are requested.
-
-
-
-
- Initializes a new instance of the class.
-
- The underlying request to muliply.
- The number of instances requested.
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
- if the specified is equal to this instance;
- otherwise, .
-
-
- The parameter is null.
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
-
-
- Creates many requests from the underlying requests.
-
- A number of similar requests.
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- if represents the same request with the
- same requested count; otherwise, .
-
-
-
-
- Unwraps a request for many instances and returns the results as a true dynamic sequence.
-
-
-
-
-
- Creates many specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- Many specimens if is a
- instance; otherwise a instance.
-
-
-
- The sequence returned is a true generator, so successive iterations will yield
- different sets of specimens. If this is not the desired behavior,
- provides an alternative.
-
-
-
-
-
- Represents a request for many (an unspecified number) of specimens.
-
-
-
- The difference between and
- is that the latter specifies the number of specimens
- requested.
-
-
- translates instances to
- instances.
-
-
-
-
-
-
-
- Initializes a new instance of the class.
-
- A single request which will be multiplied.
-
-
-
- Determines whether the specified is equal to this instance.
-
-
- The to compare with this instance.
-
-
- if is a
- instance which is equal to this instance; otherwise, .
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
-
-
- Indicates whether the current is equal to another
- MultipleRequest instance.
-
- An object to compare with this object.
-
- if the current is equal to the
- parameter; otherwise, false.
-
-
-
-
- Gets the request to multiply.
-
-
-
-
- Relays requests for multiple (an unspecified count) specimens to a request for a specific
- number of specimens.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates many new specimens based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimens if possible; otherwise a instance.
-
-
-
- The number of specimens requested is determined by .
-
-
-
-
-
- Gets or sets the count that specifies how many specimens will be requested.
-
-
-
-
- Provides custom equality comparison for instances.
-
-
-
-
- Determines whether the specified objects are equal.
-
- The first instance to compare.
- The second instance to compare.
-
- if the specified objects are considered equal; otherwise,
- .
-
-
-
- and are considered equal if x is exactly
- equal to y. If not, they are still considered equal if both instances'
- and properties are
- equal.
-
-
-
-
-
- Returns a hash code for a instance.
-
- The object.
-
- A hash code for the supplied instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
- The type of is a reference type and is
- null.
-
-
-
-
- Selects public constructors ordered by the most modest constructor first.
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , ordered by the most modest
- constructor first.
-
-
-
- The ordering of the returned constructors is based on the number of parameters of the
- constructor. Constructors with fewer parameters are returned before constructors with
- more parameters. This means that if a default constructor exists, it will be the first
- one returned.
-
-
- In case of two constructors with an equal number of parameters, the ordering is
- unspecified.
-
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , ordered by the most modest
- constructor first.
-
-
-
- The ordering of the returned constructors is based on the number of parameters of the
- constructor. Constructors with fewer parameters are returned before constructors with
- more parameters. This means that if a default constructor exists, it will be the first
- one returned.
-
-
- In case of two constructors with an equal number of parameters, the ordering is
- unspecified.
-
-
-
-
-
- Prevents a decorated from returning a
- instance.
-
-
-
-
- Initializes a new instance of the class with an
- to decorate.
-
- The builder to decorate.
-
-
-
- Initializes a new instance of the class with an
- to decorate and an
- that is used to determine whether an exception should be thrown based on the request.
-
- The builder to decorate.
- The specification.
-
-
-
- Creates a new specimen by delegating to the decorated .
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise an exception is thrown or a
- instance is returned.
-
-
- The decorated returned a result and
- returned for
- .
-
-
-
-
- Gets the decorated builder.
-
- The supplied via the constructor.
-
-
-
-
-
- Gets the specification that is used to determine whether an exception should be thrown
- for a request that returns a instance.
-
- The supplied via the constructor.
-
-
-
-
-
- Selects public constructors ordered so that any constructor with arguments matching
- are selected before any other public constructor.
-
-
- The main target of this implementation is to pick
- before any other constructor. This can be used to
- populate a list instance with a sequence of items.
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , giving priority to any constructor
- with one or more arguments.
-
-
-
- Given several constructors, this implementation will favor those constructors with
- arguments that matches , where T is the item type of
- , if it's generic. Constructors with most matching arguments are
- returned before constructors with less matching arguments.
-
-
- Any other constructors are returned with the most modest constructors first.
-
-
-
-
-
-
- Selects the constructors for the supplied type.
-
- The type.
-
- All public constructors for , giving priority to any constructor
- with one or more arguments.
-
-
-
- Given several constructors, this implementation will favor those constructors with
- arguments that matches , where T is the item type of
- , if it's generic. Constructors with most matching arguments are
- returned before constructors with less matching arguments.
-
-
- Any other constructors are returned with the most modest constructors first.
-
-
-
-
-
-
- A specification that evaluates whether a request is a request for a nullable enum.
-
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- if is a request for a nullable enum;
- otherwise, .
-
-
-
-
- Unwraps a request for many instances and returns the results as a stable list.
-
-
-
- In contrast to this alternative implementation returns
- the sequence wrapped in a . This means that the iterator will
- yield the same instances across multiple iterations.
-
-
- By default this class is not used by , but it can be used to override
- the dynamic enumerable behavior by adding it to .
-
-
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- Many specimens if is a
- instance; otherwise a instance.
-
-
-
- The sequence of specimens returned is stable which means that it can be iterated over
- more than once and be expected to yield the same instances every time.
-
-
-
-
-
- A customization that enables conventions for well-known types that represents multiple
- items.
-
-
-
- When this customization is added to an instance, requests for
- common sequence and collection types will be satisfied with instances populated with
- multiple items.
-
-
- Normally, can satisfy requests for and similar
- collection types, but the returned instances will be empty. When the
- is added to an , such
- collection specimens will be populated with items.
-
-
- Please note that apart from the concrete types ,
- etc. this
- also resolves requests for the related interfaces
- , etc. This can potentially conflict
- with other customizations, such as the auto-mocking extensions for AutoFixture. In this
- case latest customization to be added to a Fixture wins.
-
-
-
-
-
- Customizes the specified fixture by adding conventions for populating sequences and
- collections.
-
- The fixture to customize.
-
-
-
-
- Decorates a with a .
-
-
-
-
- Decorates the supplied with a
- .
-
- The builder to decorate.
-
- decorated with a .
-
-
-
-
- A specification that evaluates seeded requests for types against a target type.
-
-
-
-
- Initializes a new instance of the class.
-
- The target type.
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- if is a
- for a type that matches ; otherwise, .
-
-
-
-
- Gets the type targeted by this .
-
-
-
-
- A no-op that identifies a certain property or field.
-
- The type of specimen.
- The type of property or field.
-
-
- This class can be used to reserve an identified property or field without doing anything
- with it.
-
-
-
-
-
- Initializes a new instance of the
- class with the supplied
- property picker expression.
-
- An expression that identifies a property or field.
-
-
-
- Does nothing.
-
- A specimen.
- An .
-
-
-
- Evaluates whether a request matches the property or field reserved by this command.
-
- The specimen request.
-
- if is is a
- or that identifies the property or field reserved by this
- ; otherwise, .
-
-
-
-
- Gets the member identified by the expression supplied through the constructor.
-
-
-
-
- A boolean 'Or' Composite .
-
-
-
-
- Initializes a new instance of the class with the
- supplied specifications.
-
- An array of .
-
-
-
- Initializes a new instance of the class with the
- supplied specifications.
-
- A sequence of .
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- if is satisfied by any of the
- ; otherwise, .
-
-
-
-
- Gets the decorated specifications.
-
-
-
-
- Performs post-processing on a created specimen.
-
-
-
-
- Performs post-processing on a created specimen.
-
- The type of specimen.
-
-
-
- Initializes a new instance of the class with the
- supplied parameters.
-
- The to decorate.
- The action to perform on the created specimen.
-
-
-
- Initializes a new instance of the class with the
- supplied parameters.
-
- The to decorate.
- The action to perform on the created specimen.
-
-
-
- Initializes a new instance of the class with the
- supplied parameters.
-
- The to decorate.
- The action to perform on the created specimen.
-
- A specification which is used to determine whether postprocessing should be performed
- for a request.
-
-
-
-
- Creates a new specimen based on a request and performs an action on the created
- specimen.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
- The can be any object, but will often be a
- or other instances.
-
-
-
-
-
- Gets the action to perform on created specimens.
-
-
-
-
- Gets the decorated builder.
-
-
-
-
- Gets the filter that determines whether should be executed.
-
-
-
-
- Initializes a new instance of the class with the supplied
- parameters.
-
- The to decorate.
- The action to perform on the created specimen.
-
-
-
- Initializes a new instance of the class with the supplied
- parameters.
-
- The to decorate.
- The action to perform on the created specimen.
-
-
-
- Initializes a new instance of the class with the supplied
- parameters.
-
- The to decorate.
- The action to perform on the created specimen.
-
- A specification which is used to determine whether postprocessing should be performed
- for a request.
-
-
-
-
- Encapsulates a command that binds a property or a field to a value.
-
-
- The type of the specimn on which the property or value will be set.
-
- The type of property or field.
-
-
-
- Initializes a new instance of the class with
- the supplied property picker expression.
-
- An expression that identifies a property or field.
-
-
- This constructor implies that an anonymous value will be assigned to the property or
- field identified by .
-
-
-
-
-
- Initializes a new instance of the class with
- the supplied property picker expression and the value to be assigned to that property
- or field.
-
- An expression that identifies a property or field.
-
- The value to assign to the property or field identified by
- .
-
-
-
-
- Initializes a new instance of the class with
- the supplied property picker expression and a function that creates a value to be
- assigned to that property or field.
-
- An expression that identifies a property or field.
-
- A function that creates a value that will be assigned to the property or field
- identified by .
-
-
-
-
- Executes the command on the supplied specimen by assigning the property of field the
- correct value.
-
-
- A specimen that should have its property or field assigned.
-
-
- An which can supply an anonymous value for the
- property or field.
-
-
-
- This method assigns a value to the property or field identified by the expression
- supplied to the class' constructor. If no value (or creator) was supplied to the
- constructor, will be used to create the value.
-
-
-
-
-
- Evaluates whether a request matches the property or field affected by this command.
-
- The specimen request.
-
- if is a
- or that identifies the property or field affected by this
- ; otherwise, .
-
-
-
-
- Gets the member identified by the expression supplied through the constructor.
-
-
-
-
- Gets the function that creates a value to be assigned to the property or field
- identified by .
-
-
-
-
- Relays a request for a property to a with a seed based
- on the property's name.
-
-
-
-
- Creates a specimen based on a requested property.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A specimen created from a encapsulating the property type
- and name of the requested property, if possible; otherwise, a
- instance.
-
-
-
-
- Creates a new specimen from a using a function.
-
- The type of specimen to create.
-
-
-
- Initializes a new instance of the class.
-
- The function that will create the specimen from a seed.
-
-
-
- Creates a new specimen based on a seeded request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The result of the contained function if is a
- for the correct type and containing a seed of the same
- type; otherwise a instance.
-
-
-
-
- Gets the factory that is used to create specimens from a seed.
-
-
-
-
- Creates a new specimen using a .
-
- The type of specimen to create.
-
-
-
- Initializes a new instance of the class.
-
- The func that will create specimens.
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The specimen created by the Func contained by this instance.
-
-
-
- is ignored. Instead, the Func contained by this instance is
- used to create a specimen.
-
-
-
-
-
- Gets the factory that will create specimens.
-
-
-
-
- Creates a new specimen using a .
-
- The type of the parameter provided to the Func.
- The type of specimen to create.
-
-
-
- Initializes a new instance of the class.
-
- The func that will create specimens.
-
-
- The input parameter to will be supplied by the
- passed to the method.
-
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The specimen created by the Func contained by this instance.
-
-
-
- is ignored. Instead, the Func contained by this instance is
- used to create a specimen. The parameter for the Func is supplied by
- .
-
-
-
-
-
- Gets the factory that creates specimens.
-
-
-
-
- Creates a new specimen using a .
-
- The type of the first parameter provided to the Func.
- The type of the second parameter provided to the Func.
- The type of specimen to create.
-
-
-
- Initializes a new instance of the
- class.
-
- The func that will create specimens.
-
-
- The input parameters to will be supplied by the
- passed to the method.
-
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The specimen created by the Func contained by this instance.
-
-
-
- is ignored. Instead, the Func contained by this instance is
- used to create a specimen. The parameters for the Func is supplied by
- .
-
-
-
-
-
- Gets the factory that creates specimens.
-
-
-
-
- Creates a new specimen using a .
-
- The type of the first parameter provided to the Func.
- The type of the second parameter provided to the Func.
- The type of the third parameter provided to the Func.
- The type of specimen to create.
-
-
-
- Initializes a new instance of the
- class.
-
- The func that will create specimens.
-
-
- The input parameters to will be supplied by the
- passed to the method.
-
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The specimen created by the Func contained by this instance.
-
-
-
- is ignored. Instead, the Func contained by this instance is
- used to create a specimen. The parameters for the Func is supplied by
- .
-
-
-
-
-
- Gets the factory that creates specimens.
-
-
-
-
- Creates a new specimen using a .
-
- The type of the first parameter provided to the Func.
- The type of the second parameter provided to the Func.
- The type of the third parameter provided to the Func.
- The type of the fourth parameter provided to the Func.
- The type of specimen to create.
-
-
-
- Initializes a new instance of the
- class.
-
- The func that will create specimens.
-
-
- The input parameters to will be supplied by the
- passed to the method.
-
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The specimen created by the Func contained by this instance.
-
-
-
- is ignored. Instead, the Func contained by this instance is
- used to create a specimen. The parameters for the Func is supplied by
- .
-
-
-
-
-
- Gets the factory that creates specimens.
-
-
-
-
- Throws an .
-
-
-
- This can be used as the last item in a
- to throw an exception instead of letting the
- containing builder return a instance when it can't satisfy a
- request.
-
-
-
-
-
- Throws an .
-
- The request that describes what to create.
-
- A context that can be used to create other specimens. Not used.
-
-
- This method never returns. It always throws an .
-
-
-
-
- A customization that makes sequences (i.e. stable instead of
- dynamic.
-
-
-
- A sequence (i.e. an instance of is not guaranteed to be
- stable or finite; it might, in fact, represent a Generator that creates an Iterator that
- can go on for ever. Even if the sequence is finite, it may not be stable because it may
- yield new items every time it's iterated.
-
-
- The StableFiniteSequenceCustomization class encapsulates a change in behavior that
- guarantees that an instance will resolve a request for a sequence
- into a stable sequence.
-
-
-
-
-
-
- Adds a to an .
-
- The fixture to customize.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for a numeric value; otherwise, a instance.
-
-
-
-
- A customization that enables numeric specimens to be unique within a specifc numeric .
-
-
-
- When this customization is added to an instance, requests for numeric specimens
- will be satisfied by returning numbers from a specific sequence.
-
-
- This customization reproduces the generation strategy for numeric specimens used in AutoFixture up to version 2.1.
-
-
-
- var fixture = new Fixture();
- fixture.Customize(new NumericSequencePerTypeCustomization());
-
- Console.WriteLine("Byte specimen is {0}", fixture.CreateAnonymous<byte>());
- Console.WriteLine("Int32 specimen is {0}", fixture.CreateAnonymous<int>());
- Console.WriteLine("Single specimen is {0}", fixture.CreateAnonymous<float>());
-
- // The output of this program will be:
- // Byte specimen is 1
- // Int32 specimen is 1
- // Single specimen is 1
-
-
-
-
-
-
- Customizes the specified fixture by adding the specific numeric sequence generators.
-
- The fixture to customize.
-
-
-
- Decorates a with a .
-
-
-
-
- Decorates the supplied with a
- .
-
- The builder to decorate.
-
- decorated with a .
-
-
-
-
- Trace writer that will write out a trace of object requests and created objects
- in the pipeline.
-
-
-
-
- Initializes a new instance of the class.
-
- The output stream for the trace.
- The to decorate.
-
-
-
- Creates a new specimen based on a request by delegating to its decorated builder.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
-
- Gets the decorated by this instance.
-
-
-
-
- Gets or sets the formatter for tracing a request.
-
- The request trace formatter.
-
-
-
- Gets or sets the formatter for tracing a created specimen.
-
- The created specimen trace formatter.
-
-
-
- Creates new instances.
-
-
-
-
- Creates a new instance.
-
- A new instance.
-
-
-
- Creates a new instance.
-
- The request that describes what to create.
- Not used.
-
- A new instance, if is a request for a
- ; otherwise, a instance.
-
-
-
-
- Creates specimens by returning the first specimen created by its children.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class with the
- supplied builders.
-
- The child builders.
-
-
-
- Initializes a new instance of the class with the
- supplied builders.
-
- The child builders.
-
-
-
- Creates a new specimen by delegating to .
-
- The request that describes what to create.
- A container that can be used to create other specimens.
- The first result created by .
-
-
-
- Gets the child builders.
-
-
-
-
- Default implementation of .
-
-
-
-
- A context used to create anonymous variables (specimens).
-
-
-
-
- Creates an anonymous variable (specimen) based on a request.
-
- The request that describes what to create.
- The requested specimen if possible.
-
-
- The can be any object, but will often be a
- or other instances.
-
-
-
-
-
- Initializes a new instance of with the supplied
- .
-
- The builder that will handle requests.
-
-
-
- Creates an anonymous variable (specimen) based on a request by delegating the request
- to its contained .
-
- The request that describes what to create.
- The result of a request to the contained .
-
-
-
- Gets the contained by the instance.
-
-
-
-
- Creates a new instance of the requested type by invoking the first constructor it can
- satisfy.
-
-
-
-
- Initializes a new instance of the class with the
- supplied .
-
-
- The that defines which constructors are attempted.
-
-
-
-
- Creates a specimen of the requested type by invoking the first constructor it can
- satisfy.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A specimen generated from a constructor of the requested type, if possible;
- otherwise, .
-
-
-
- This method uses the first constructor returned by where
- can create values for all parameters.
-
-
-
-
-
- Gets the that defines which constructors will be
- attempted.
-
-
-
-
- Signifies that it's not a specimen.
-
-
-
- implementations are expected to return
- instances if they can't handle the request. This ensures that
- can be used as a proper return value.
-
-
-
-
-
- Initializes a new instance of the class with a null request.
-
-
-
-
- Initializes a new instance of the class with the supplied
- request.
-
-
- The original request that prompts the creation of this instance.
-
-
-
-
- Determines whether the specified is equal to the current
- instance.
-
- The to compare to the current instance.
-
- if the specified is equal to the current
- instance; otherwise, .
-
-
-
-
- Serves as a hash function for the class.
-
- A hash code for the current instance.
-
-
-
- Indicates whether the current instance is equal to another
- instance.
-
-
- A instance to compare with this instance.
-
-
- if the current instanec is equal to the
- parameter; otherwise, .
-
-
-
-
- Gets the original request that prompted the creation of the current instance.
-
-
-
- This property value may be .
-
-
-
-
-
- Relays a request for a parameter to a with a seed based
- on the parameter's name.
-
-
-
-
- Creates a specimen based on a requested parameter.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A specimen created from a encapsulating the parameter type
- and name of the requested parameter, if possible; otherwise, a
- instance.
-
-
-
-
- Tracks any request and passes it on to the container.
- Tracks any returned object from the container and passes it on.
-
-
-
-
- Initializes a new instance of the class with a decorated
- .
-
- The to decorate.
-
-
-
- Creates a new specimen based on a request and raises events tracing the progress.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
- The can be any object, but will often be a
- or other instances.
-
-
-
-
-
- Raises the event.
-
- The event arguments for the event.
-
-
-
- Raises the event.
-
- The event arguments for the event.
-
-
-
- Raised when a specimen is requested.
-
-
-
-
- Raised when a specimen was created.
-
-
-
-
- Gets the builder decorated by this instance.
-
-
-
-
- Gets or sets a filter for tracking
-
-
-
- By default, tracks all requests and created Specimens, but you can
- provide a custom filter to only allow certain requests to be traced.
-
-
- As this is a variation of the Specification pattern, the filter must return
- to allow the request to be tracked.
-
-
-
-
-
- Event arguments about a created specimen.
-
-
-
-
- Event args about a request for a specimen
-
-
-
-
- Initializes a new instance of the class with the
- supplied values.
-
- A request for a specimen
-
- The recursion depth at which occurred.
-
-
-
-
- Gets the recursion depth at which occurred.
-
-
-
-
- Gets the original request for a speciman
-
-
-
-
- Initializes a new instance of the class with the
- supplied values.
-
- A request for a specimen
-
- The specimen that was created base on .
-
-
- The recursion depth at which occurred.
-
-
-
-
- Gets the specimen that was created from .
-
-
-
-
- Unwraps a request for a string to a request for a string and
- prefixes the seed to the result.
-
-
-
-
- Creates an anonymous string based on a seed.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A string with the seed prefixed to a string created by if
- possible; otherwise, .
-
-
-
- This method only returns an instance if a number of conditions are satisfied.
- must represent a request for a seed string, and
- must be able to create a string.
-
-
-
-
-
- A that is always .
-
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- .
-
-
-
-
- A specification that evaluates requests for types against a target type.
-
-
-
-
- Initializes a new instance of the class.
-
- The target type.
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- if matches the target type;
- otherwise, .
-
-
-
-
- Gets the type targeted by this .
-
-
-
-
- Encapsulates an operation without identifying any property or field.
-
- The type of specimen.
-
-
-
- Initializes a new instance of the
- class.
-
- The action to perform on a specimen.
-
-
-
- Executes on the supplied specimen.
-
- The specimen on which the command is executed.
-
- An that can be used to resolve other requests. Not
- used.
-
-
-
-
- Evaluates a request for a specimen.
-
- The specimen request.
-
- .
-
-
-
-
- Gets the action that can be performed on a specimen.
-
-
-
-
- Unwraps a request for a to a request for its
- while ignoring the .
-
-
-
-
- Creates an anonymous value by unwrapping a seeded request and ignoring the seed.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- A specimen based on if possible; otherwise,
- .
-
-
-
- If is a seeded request, the Create method unwraps the inner
- request and forwards it to . The seed value is ignored.
-
-
- The purpose of this class is to provide a fallback to handle seeded requests that no
- other instances have been able to handle. By ignoring
- the seed value, it handles those scenarios where the seed value and the inner request
- don't match and can't be combined, ensuring that at least some value is returned.
-
-
-
-
-
- Creates an alternating sequence of and ,
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Returns an alternating sequence of and
- every other time it is invoked.
-
-
- , followed by at the next invocation, and
- so on.
-
-
-
-
- Returns an alternating sequence of and
- every other time it is invoked.
-
- The request that describes what to create.
- Not used.
-
- , followed by at the next invocation, and
- so on, if is a request for a boolean; otherwise, a
- instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous byte.
-
- The request that describes what to create.
- Not used.
-
- The next byte in a consequtive sequence, if is a request
- for a byte; otherwise, a instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for a decimal number; otherwise, a instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for a ; otherwise, a instance.
-
-
-
-
- Provides anonymous object creation services.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Initializes a new instance of the class with the supplied engine
- parts.
-
- The engine parts.
-
-
-
- Initializes a new instance of the class with the supplied engine
- and a definition of what 'many' means.
-
- The engine.
- The definition and implementation of 'many'.
-
-
-
- Customizes the creation algorithm for a single object, effectively turning off all
- Customizations on the .
-
-
- The type of object for which the algorithm should be customized.
-
-
- A that can be used to customize the creation
- algorithm before creating the object.
-
-
-
- The Build method kicks off a Fluent API which is usually completed by invoking
- on the method
- chain.
-
-
- Note that the Build method chain is best understood as a one-off Customization. It
- bypasses all Customizations on the instance. Instead, it allows
- fine-grained control when building a specific specimen. However, in most cases, adding
- a convention-based is a better, more flexible option.
-
-
-
-
-
- Applies a customization.
-
- The customization to apply.
-
- The current instance.
-
-
-
-
- Customizes the creation algorithm for all objects of a given type.
-
- The type of object to customize.
-
- A function that customizes a given and returns
- the modified composer.
-
-
-
- The resulting is added to .
-
-
-
-
-
- Repeats a function many times.
-
-
- The type of object that creates.
-
-
- A function that creates an instance of .
-
- A sequence of objects created by .
-
-
- The number of times is invoked is determined by
- .
-
-
-
-
-
- Composes a new instance that contains all the relevant
- strategies defined for this instance.
-
-
- A new instance that contains all the relevant strategies
- for the this instance, including ,
- and .
-
-
-
-
- Gets the behaviors that are applied when is invoked.
-
-
-
-
- Gets the customizations that intercept the .
-
-
-
- Any in this list are invoked before
- , giving them a chance to intercept a request and resolve it before
- the Engine.
-
-
- places resulting customizations in this list.
-
-
-
-
-
-
-
- Gets the core engine of the instance.
-
-
-
- This is the core engine that drives a instance. Even with no
- or , the
- should be capably of resolving a wide range of different requests,
- based on conventions.
-
-
-
-
-
-
-
- Gets or sets if writable properties should generally be assigned a value when
- generating an anonymous object.
-
-
-
- The default value is false.
-
-
-
-
-
- Gets or sets a number that controls how many objects are created when a
- creates more than one anonymous objects.
-
-
-
- The default value is 3.
-
-
-
-
-
-
-
-
-
-
- Gets the residue collectors that can be used to handle requests that neither the
- nor could handle.
-
-
-
- These instances will be invoked if no previous builder
- could resolve a request. This gives you the opportunity to define fallback strategies
- to deal with unresolved requests.
-
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for a 16-bit integer; otherwise, a instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for an integer; otherwise, a instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for an 64-bit integer; otherwise, a instance.
-
-
-
-
- Recursion handler that returns null at recursion points.
-
-
-
-
- Initializes a new instance of the class.
-
- The builder to decorate.
-
-
-
- Initializes a new instance of the class.
-
- The intercepting builder to decorate.
- An IEqualitycomparer implementation to use when comparing requests to determine recursion.
-
-
-
- Handles a request that would cause recursion by returning null.
-
- The recursion causing request.
- Always null.
-
-
-
- The exception that is thrown when AutoFixture is unable to create an object.
-
-
-
-
- Initializes a new instance of the class with a
- default .
-
-
-
-
- Initializes a new instance of the class with a
- custom .
-
-
- The error message that explains the reason for the exception.
-
-
-
-
- Initializes a new instance of the class with a
- custom and .
-
-
- The error message that explains the reason for the exception.
-
-
- The exception that is the cause of the current exception.
-
-
-
-
- Ininitalizes a new instance of the class with
- serialized data.
-
- The object that holds the serialized object data.
-
- The contextual information about the source or destination.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous .
-
- The request that describes what to create.
- Not used.
-
- The next in a consequtive sequence, if
- is a request for an SByte; otherwise, a instance.
-
-
-
-
- Encapsulates a seed for a given type.
-
-
-
-
- Initializes a new instance of the class.
-
- The request for which the seed applies.
- The seed.
-
-
-
- Determines whether this instance equals another instance.
-
- The other instance.
-
- if this instance equals ; otherwise,
- .
-
-
-
-
- Returns the hash code for the instance.
-
- The hash code for the instance.
-
-
-
- Determines whether this instance equals another instance.
-
- The other instance.
-
- if this instance equals ; otherwise,
- .
-
-
-
-
- Gets the seed value.
-
-
-
-
- Gets the inner request for which the seed applies.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for a ; otherwise, a instance.
-
-
-
-
- Provides an API to customize the creational strategy for a specific type.
-
-
-
-
- Invokes the supplied action with an anonymous parameter value.
-
- The type of the anonymous parameter.
- The composer.
- The action to invoke.
-
-
-
- Invokes the supplied action with anonymous parameter values.
-
- The type of the first anonymous parameter.
- The type of the second anonymous parameter.
- The composer.
- The action to invoke.
-
-
-
- Invokes the supplied action with anonymous parameter values.
-
- The type of the first anonymous parameter.
- The type of the second anonymous parameter.
- The type of the third anonymous parameter.
- The composer.
- The action to invoke.
-
-
-
- Invokes the supplied action with anonymous parameter values.
-
- The type of the first anonymous parameter.
- The type of the second anonymous parameter.
- The type of the third anonymous parameter.
- The type of the fourth anonymous parameter.
- The composer.
- The action to invoke.
-
-
-
- Invokes the supplied function with an anonymous parameter value and returns the result.
-
- The type of the anonymous parameter.
- The return type.
- The composer.
- The function to invoke.
- The return value of .
-
-
-
- Invokes the supplied function with anonymous parameter values and returns the result.
-
- The type of the first anonymous parameter.
- The type of the second anonymous parameter.
- The return type.
- The composer.
- The function to invoke.
- The return value of .
-
-
-
- Invokes the supplied function with anonymous parameter values and returns the result.
-
- The type of the first anonymous parameter.
- The type of the second anonymous parameter.
- The type of the third anonymous parameter.
- The return type.
- The composer.
- The function to invoke.
- The return value of .
-
-
-
- Invokes the supplied function with anonymous parameter values and returns the result.
-
- The type of the first anonymous parameter.
- The type of the second anonymous parameter.
- The type of the third anonymous parameter.
- The type of the fourth anonymous parameter.
- The return type.
- The composer.
- The function to invoke.
- The return value of .
-
-
-
- Creates anonymous variables from or
- instances.
-
-
-
-
- Creates an anonymous variable of the requested type.
-
- The type of object to create.
- The context used to resolve the type request.
- An anonymous object of type .
-
-
-
- Creates an anonymous variable of the requested type.
-
- The type of object to create.
- The composer used to resolve the type request.
- An anonymous object of type .
-
-
-
- Creates an anonymous variable of the requested type.
-
- The type of object to create.
- The composer used to resolve the type request.
- An anonymous object of type .
-
-
- The only purpose of this explicit overload is to support type inferencing.
-
-
-
-
-
- Creates an anonymous object, potentially using the supplied seed as additional
- information when creating the object.
-
- The type of object to create.
-
- Any data that adds additional information when creating the anonymous object.
-
- The context used to resolve the type request.
- An anonymous object.
-
-
-
- Creates an anonymous object, potentially using the supplied seed as additional
- information when creating the object.
-
- The type of object to create.
-
- Any data that adds additional information when creating the anonymous object.
-
- The composer used to resolve the type request.
- An anonymous object.
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The context used to resolve the type request.
- A sequence of anonymous object of type .
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The composer used to resolve the type request.
- A sequence of anonymous object of type .
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The composer used to resolve the type request.
- A sequence of anonymous object of type .
-
-
- The only purpose of this explicit overload is to support type inferencing.
-
-
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The context used to resolve the type request.
-
- An initial value that may or may not be used as input for the algorithm creating the
- return value.
-
- A sequence of anonymous object of type .
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The composer used to resolve the type request.
-
- An initial value that may or may not be used as input for the algorithm creating the
- return value.
-
- A sequence of anonymous object of type .
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The context used to resolve the type request.
- The number of objects to create.
- A sequence of anonymous objects of type .
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The composer used to resolve the type request.
- The number of objects to create.
- A sequence of anonymous objects of type .
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The composer used to resolve the type request.
- The number of objects to create.
- A sequence of anonymous objects of type .
-
-
- The only purpose of this explicit overload is to support type inferencing.
-
-
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The context used to resolve the type request.
-
- An initial value that may or may not be used as input for the algorithm creating the
- return value.
-
- The number of objects to create.
- A sequence of anonymous objects of type .
-
-
-
- Creates many anonymous objects.
-
- The type of objects to create.
- The composer used to resolve the type request.
-
- An initial value that may or may not be used as input for the algorithm creating the
- return value.
-
- The number of objects to create.
- A sequence of anonymous objects of type .
-
-
-
- Creates string values based on a supplied factory.
-
-
-
-
- Initializes a new instance of the class with the supplied
- specimen factory.
-
-
- A factory that creates a anonymous variables (specimens). The
- instance will call on the
- created specimen.
-
-
-
-
- Creates string specimens by invoking the supplied specimen factory and calling
- on the result.
-
- The request that describes what to create.
- Not used.
-
- The string representation of a specimen created by the contained specimen factory.
-
-
-
-
- Gets the factory used to specimens.
-
-
-
-
-
- Handles recursion in the specimen creation process by throwing an exception at recursion point.
-
-
-
-
- Initializes a new instance of the class.
-
- The intercepting builder to decorate.
- An IEqualitycomparer implementation to use when comparing requests to determine recursion.
-
-
-
- Initializes a new instance of the class.
-
- The builder.
-
-
-
- Handles a request that would cause recursion by throwing an exception.
-
- The recursion causing request.
- Nothing. Always throws.
-
-
-
- Decorates an with a to enable
- tracing for diagnosing how the decorated builder builds up specimens.
-
-
-
-
- Initializes a new instance of the class with the default
- , which is .
-
-
-
-
- Initializes a new instance of the class with the supplied
- .
-
- The writer to which diagnostics is written.
-
-
-
- Decorates the supplied builder with a .
-
- The builder to transform.
-
- A new that decorates using
- .
-
-
-
-
- Gets the writer to which diagnostics information is written.
-
-
-
-
- Generates Type instances.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The if is a Type
- Type; otherwise a instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for an unsigned 16-bit integer; otherwise, a instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for an unsigned integer; otherwise, a instance.
-
-
-
-
- Creates a sequence of consecutive numbers, starting at 1.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Creates an anonymous number.
-
- The next number in a consequtive sequence.
-
-
-
- Creates an anonymous number.
-
- The request that describes what to create.
- Not used.
-
- The next number in a consequtive sequence, if is a request
- for an unsigned 64-bit integer; otherwise, a instance.
-
-
-
-
- Creates new instances.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
-
- Represents a URI scheme name. Scheme names consist of a sequence of characters beginning
- with a letter and followed by any combination of letters, digits, plus ('+'), period ('.'),
- or hyphen ('-').
-
-
-
-
- Initializes a new instance of the class using "scheme" as the
- default URI scheme name.
-
-
-
-
- Initializes a new instance of the class.
-
- The scheme name.
-
-
-
- Returns a that represents the URI scheme name for this
- instance.
-
-
- A that represents the URI scheme name for this instance.
-
-
-
-
- Determines whether the specified is equal to this instance.
-
- The to compare with this instance.
-
-
- true if the specified is equal to this instance;
- otherwise, false.
-
-
- The parameter is null.
-
-
-
-
- Returns a hash code for this instance.
-
-
- A hash code for this instance, suitable for use in hashing algorithms and data
- structures like a hash table.
-
-
-
-
- Indicates whether the current object is equal to another object of the same type.
-
- An object to compare with this object.
-
- true if the current object is equal to the other parameter; otherwise, false.
-
-
-
-
- Gets the scheme name.
-
-
-
-
- Creates new instances.
-
-
-
-
- Creates a new specimen based on a request.
-
- The request that describes what to create.
- A context that can be used to create other specimens.
-
- The requested specimen if possible; otherwise a instance.
-
-
-
-
diff --git a/packages/AutoFixture.2.11.1/lib/Ploeh.AutoFixture.dll b/packages/AutoFixture.2.11.1/lib/Ploeh.AutoFixture.dll
deleted file mode 100644
index c31e99eb64465b39d5a36585ffd58ce8df974baf..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 147968
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%0A7{>+9rS&aK-p9kwAaq
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%0DNn
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