Soenneker.Utils.AutoBogus
2.1.82
Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Soenneker.Utils.AutoBogus --version 2.1.82
NuGet\Install-Package Soenneker.Utils.AutoBogus -Version 2.1.82
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Soenneker.Utils.AutoBogus" Version="2.1.82" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Soenneker.Utils.AutoBogus --version 2.1.82
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Soenneker.Utils.AutoBogus, 2.1.82"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Soenneker.Utils.AutoBogus as a Cake Addin
#addin nuget:?package=Soenneker.Utils.AutoBogus&version=2.1.82
// Install Soenneker.Utils.AutoBogus as a Cake Tool
#tool nuget:?package=Soenneker.Utils.AutoBogus&version=2.1.82
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Soenneker.Utils.AutoBogus
The .NET Autogenerator
This project is an automatic creator and populator for the fake data generator Bogus.
It's a replacement for the abandoned AutoBogus library.
The goals are to be fast, and support the latest types in .NET.
.NET 6+ is supported.
Installation
dotnet add package Soenneker.Utils.AutoBogus
Usage
- Create an AutoFaker instance:
var autoFaker = new AutoFaker();
- Call
Generate<>()
on any type you want:
var someRandomWord = autoFaker.Generate<string>();
var dictionary = autoFaker.Generate<Dictionary<int, string>>();
var order = autoFaker.Generate<Order>();
- Set a faker, configuration, rulesets, etc:
autoFaker.Config.Faker = new Faker("de");
autoFaker.Config.RecursiveDepth = 3;
...
AutoFakerOverride
can be used for type customization:
public class OrderOverride : AutoFakerOverride<Order>
{
public override void Generate(AutoFakerOverrideContext context)
{
var target = (context.Instance as Order)!;
target.Id = 123;
// Faker is available
target.Name = context.Faker.Random.Word();
// AutoFaker is also available
target.Customer = context.AutoFaker.Generate<Customer>();
}
}
- Configuring
AutoFakerOverride
on theAutoFaker
:
autoFaker.Config.Overrides = new AutoFakerOverrides();
autoFaker.Config.Overrides.Add(new OrderOverride());
Tips
- ⚠️ Instantiating a Bogus
Faker
takes a substantial amount of time (almost 1ms). An instance ofAutoFaker
will create oneFaker
. Thus, it's recommended that a single instance be used if possible. AutoFaker.GenerateStatic<>()
is available, but should be avoided (as it creates a newAutoFaker
/Faker
on each call).
Notes
- This is a work in progress. Contribution is welcomed.
Benchmarks
Soenneker.Utils.AutoBogus
Method | Mean | Error | StdDev |
---|---|---|---|
Generate_int | 73.86 ns | 0.843 ns | 0.747 ns |
Generate_string | 227.31 ns | 2.601 ns | 2.433 ns |
Generate_complex | 17,681.91 ns | 128.889 ns | 120.563 ns |
AutoBogus
Method | Mean | Error | StdDev |
---|---|---|---|
Generate_int | 1.17 ms | 0.033 ms | 0.026 ms |
Generate_complex | 10.91 ms | 0.181 ms | 0.236 ms |
Bogus
Method | Mean | Error | StdDev |
---|---|---|---|
Bogus_int | 19.58 ns | 0.150 ns | 0.133 ns |
Bogus_string | 172.25 ns | 2.510 ns | 2.347 ns |
Bogus_ctor | 717,799.56 ns | 10,086.875 ns | 9,435.269 ns |
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- Ardalis.SmartEnum (>= 8.0.0)
- Bogus (>= 35.4.0)
- Soenneker.Reflection.Cache (>= 2.1.40)
- System.Collections.Immutable (>= 8.0.0)
-
net7.0
- Ardalis.SmartEnum (>= 8.0.0)
- Bogus (>= 35.4.0)
- Soenneker.Reflection.Cache (>= 2.1.40)
- System.Collections.Immutable (>= 8.0.0)
-
net8.0
- Ardalis.SmartEnum (>= 8.0.0)
- Bogus (>= 35.4.0)
- Soenneker.Reflection.Cache (>= 2.1.40)
- System.Collections.Immutable (>= 8.0.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Soenneker.Utils.AutoBogus:
Package | Downloads |
---|---|
Soenneker.Tests.Unit
A base test providing faker and autofaker capabilities |
|
Soenneker.Fixtures.Unit
A base xUnit fixture providing injectable log output, DI mechanisms like IServiceCollection and ServiceProvider, and AutoFaker/Faker for generating test data. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.1.194 | 0 | 5/14/2024 |
2.1.193 | 0 | 5/14/2024 |
2.1.192 | 1,737 | 5/12/2024 |
2.1.191 | 3,638 | 4/29/2024 |
2.1.190 | 93 | 4/29/2024 |
2.1.189 | 84 | 4/29/2024 |
2.1.188 | 453 | 4/29/2024 |
2.1.187 | 72 | 4/29/2024 |
2.1.186 | 3,059 | 4/28/2024 |
2.1.185 | 85 | 4/28/2024 |
2.1.184 | 2,056 | 4/28/2024 |
2.1.183 | 802 | 4/28/2024 |
2.1.182 | 2,280 | 4/28/2024 |
2.1.181 | 71 | 4/28/2024 |
2.1.180 | 73 | 4/28/2024 |
2.1.179 | 1,534 | 4/28/2024 |
2.1.178 | 86 | 4/27/2024 |
2.1.177 | 71 | 4/27/2024 |
2.1.176 | 5,830 | 4/19/2024 |
2.1.175 | 2,084 | 4/18/2024 |
2.1.174 | 4,020 | 4/12/2024 |
2.1.173 | 1,646 | 4/12/2024 |
2.1.172 | 529 | 4/12/2024 |
2.1.171 | 235 | 4/12/2024 |
2.1.170 | 72 | 4/12/2024 |
2.1.169 | 66 | 4/12/2024 |
2.1.168 | 1,996 | 4/12/2024 |
2.1.167 | 76 | 4/12/2024 |
2.1.166 | 70 | 4/12/2024 |
2.1.165 | 71 | 4/12/2024 |
2.1.164 | 70 | 4/12/2024 |
2.1.163 | 5,528 | 4/9/2024 |
2.1.162 | 3,153 | 4/1/2024 |
2.1.161 | 82 | 4/1/2024 |
2.1.160 | 5,507 | 3/25/2024 |
2.1.159 | 71 | 3/25/2024 |
2.1.158 | 2,255 | 3/20/2024 |
2.1.157 | 2,070 | 3/19/2024 |
2.1.156 | 1,176 | 3/19/2024 |
2.1.155 | 3,280 | 3/15/2024 |
2.1.154 | 2,062 | 3/13/2024 |
2.1.153 | 841 | 3/13/2024 |
2.1.152 | 340 | 3/13/2024 |
2.1.151 | 89 | 3/13/2024 |
2.1.150 | 80 | 3/13/2024 |
2.1.149 | 88 | 3/13/2024 |
2.1.148 | 99 | 3/13/2024 |
2.1.147 | 2,654 | 3/12/2024 |
2.1.146 | 3,382 | 3/11/2024 |
2.1.145 | 84 | 3/11/2024 |
2.1.144 | 1,209 | 3/11/2024 |
2.1.143 | 1,692 | 3/9/2024 |
2.1.142 | 1,902 | 3/8/2024 |
2.1.141 | 1,240 | 3/8/2024 |
2.1.140 | 2,786 | 3/6/2024 |
2.1.139 | 87 | 3/6/2024 |
2.1.138 | 1,923 | 3/4/2024 |
2.1.137 | 76 | 3/4/2024 |
2.1.136 | 2,650 | 3/2/2024 |
2.1.135 | 1,165 | 3/2/2024 |
2.1.134 | 80 | 3/2/2024 |
2.1.133 | 1,473 | 3/2/2024 |
2.1.132 | 765 | 3/2/2024 |
2.1.131 | 1,731 | 2/29/2024 |
2.1.130 | 1,470 | 2/29/2024 |
2.1.129 | 1,736 | 2/26/2024 |
2.1.128 | 1,541 | 2/25/2024 |
2.1.127 | 76 | 2/25/2024 |
2.1.126 | 2,114 | 2/23/2024 |
2.1.125 | 1,580 | 2/22/2024 |
2.1.124 | 1,062 | 2/21/2024 |
2.1.123 | 1,378 | 2/21/2024 |
2.1.122 | 311 | 2/21/2024 |
2.1.121 | 296 | 2/21/2024 |
2.1.120 | 81 | 2/21/2024 |
2.1.119 | 1,285 | 2/21/2024 |
2.1.118 | 83 | 2/21/2024 |
2.1.117 | 81 | 2/21/2024 |
2.1.116 | 617 | 2/21/2024 |
2.1.115 | 980 | 2/21/2024 |
2.1.114 | 83 | 2/21/2024 |
2.1.113 | 86 | 2/21/2024 |
2.1.112 | 81 | 2/21/2024 |
2.1.111 | 776 | 2/21/2024 |
2.1.110 | 81 | 2/21/2024 |
2.1.109 | 2,586 | 2/20/2024 |
2.1.108 | 78 | 2/20/2024 |
2.1.107 | 2,573 | 2/19/2024 |
2.1.106 | 249 | 2/19/2024 |
2.1.104 | 2,813 | 2/17/2024 |
2.1.103 | 1,380 | 2/16/2024 |
2.1.102 | 71 | 2/16/2024 |
2.1.101 | 696 | 2/16/2024 |
2.1.100 | 1,147 | 2/16/2024 |
2.1.99 | 75 | 2/16/2024 |
2.1.98 | 70 | 2/16/2024 |
2.1.97 | 683 | 2/16/2024 |
2.1.96 | 70 | 2/16/2024 |
2.1.95 | 69 | 2/16/2024 |
2.1.94 | 1,393 | 2/16/2024 |
2.1.93 | 72 | 2/16/2024 |
2.1.92 | 2,058 | 2/13/2024 |
2.1.91 | 2,041 | 2/13/2024 |
2.1.90 | 773 | 2/13/2024 |
2.1.89 | 79 | 2/13/2024 |
2.1.88 | 642 | 2/13/2024 |
2.1.87 | 2,044 | 2/11/2024 |
2.1.86 | 781 | 2/11/2024 |
2.1.85 | 91 | 2/11/2024 |
2.1.84 | 1,469 | 2/11/2024 |
2.1.83 | 84 | 2/11/2024 |
2.1.82 | 1,086 | 2/11/2024 |
2.1.81 | 85 | 2/11/2024 |
2.1.80 | 88 | 2/11/2024 |
2.1.79 | 86 | 2/11/2024 |
2.1.78 | 83 | 2/11/2024 |
2.1.76 | 2,378 | 2/9/2024 |
2.1.75 | 83 | 2/9/2024 |
2.1.74 | 1,465 | 2/9/2024 |
2.1.73 | 87 | 2/9/2024 |
2.1.72 | 942 | 2/8/2024 |
2.1.71 | 83 | 2/8/2024 |
2.1.70 | 80 | 2/8/2024 |
2.1.69 | 441 | 2/8/2024 |
2.1.68 | 1,100 | 2/8/2024 |
2.1.67 | 86 | 2/8/2024 |
2.1.66 | 81 | 2/8/2024 |
2.1.65 | 1,098 | 2/8/2024 |
2.1.64 | 80 | 2/8/2024 |
2.1.63 | 768 | 2/8/2024 |
2.1.62 | 2,076 | 2/7/2024 |
2.1.61 | 1,052 | 2/6/2024 |
2.1.60 | 88 | 2/6/2024 |
2.1.59 | 1,349 | 2/6/2024 |
2.1.58 | 92 | 2/6/2024 |
2.1.57 | 850 | 2/6/2024 |
2.1.54 | 86 | 2/5/2024 |
2.1.53 | 84 | 2/5/2024 |
2.1.52 | 2,820 | 2/4/2024 |
2.1.51 | 1,257 | 2/2/2024 |
2.1.49 | 76 | 2/1/2024 |
2.1.48 | 1,660 | 1/31/2024 |
2.1.47 | 1,333 | 1/29/2024 |
2.1.46 | 1,328 | 1/29/2024 |
2.1.45 | 619 | 1/29/2024 |
2.1.44 | 826 | 1/28/2024 |
2.1.43 | 76 | 1/28/2024 |
2.1.42 | 853 | 1/28/2024 |
2.1.41 | 74 | 1/28/2024 |
2.1.40 | 78 | 1/28/2024 |
2.1.39 | 700 | 1/28/2024 |
2.1.38 | 908 | 1/28/2024 |
2.1.37 | 682 | 1/28/2024 |
2.1.36 | 78 | 1/28/2024 |
2.1.35 | 74 | 1/28/2024 |
2.1.34 | 77 | 1/28/2024 |
2.1.33 | 899 | 1/27/2024 |
2.1.31 | 293 | 1/27/2024 |
2.1.30 | 1,020 | 1/27/2024 |
2.1.29 | 937 | 1/27/2024 |
2.1.27 | 504 | 1/27/2024 |
2.1.26 | 994 | 1/27/2024 |
2.1.25 | 687 | 1/26/2024 |
2.1.24 | 72 | 1/26/2024 |
2.1.23 | 75 | 1/26/2024 |
2.1.22 | 76 | 1/26/2024 |
2.1.21 | 660 | 1/26/2024 |
2.1.20 | 647 | 1/26/2024 |
2.1.19 | 698 | 1/26/2024 |
2.1.18 | 694 | 1/26/2024 |
2.1.17 | 777 | 1/26/2024 |
2.1.16 | 781 | 1/26/2024 |
2.1.15 | 289 | 1/25/2024 |
2.1.14 | 844 | 1/25/2024 |
2.1.13 | 842 | 1/25/2024 |
2.1.12 | 78 | 1/25/2024 |
2.1.11 | 756 | 1/25/2024 |
2.1.10 | 712 | 1/25/2024 |
2.1.9 | 771 | 1/25/2024 |
2.1.7 | 5,137 | 1/15/2024 |
2.1.6 | 1,141 | 1/14/2024 |
2.1.5 | 1,417 | 1/14/2024 |
2.1.4 | 1,341 | 1/13/2024 |
2.1.3 | 1,366 | 1/5/2024 |
2.1.2 | 111 | 1/2/2024 |
2.1.1 | 116 | 12/29/2023 |