Bogus icon indicating copy to clipboard operation
Bogus copied to clipboard

Bogus.Tools.Analyzer When a class contains a property with a byte[], 'default' is output for the RuleFor() instead of Random.Bytes(1)

Open mpickers opened this issue 1 year ago • 1 comments

Bogus NuGet Package

35.6.0

.NET Version

net 6

Visual Studio Version

17.10.3

What operating system are you using?

Windows

What locale are you using with Bogus?

en_US

Problem Description

When a class contains a property with a byte[], 'default' is output for the RuleFor() instead of Random.Bytes(1)

LINQPad Example or Reproduction Steps

      public class ByteArray
      {
         public byte[] RowVersion { get; set; }
      }      

      static void BogusAnalyzer()
      {
         var g = new Faker<ByteArray>()
            .RuleFor(b => b.RowVersion, f => default);

         var o = g.Generate();
      }

Expected Behavior

Ideally it should set the RuleFor using the Random.Bytes(1)

         var g = new Faker<ByteArray>()
            .RuleFor(b => b.RowVersion, f => f.Random.Bytes(1));

Actual Behavior

Outputs default as the RuleFor()

Known Workarounds

No response

Could you help with a pull-request?

No

mpickers avatar Aug 28 '24 06:08 mpickers