using System; using System.Security.Cryptography; using ReflectionMagic; namespace AMWD.Common.Tests.Utils { [System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverage] internal class CryptographyHelperSaltMock : IDisposable { private readonly int saltLength; private CryptographyHelperSaltMock(int saltLength) { this.saltLength = typeof(CryptographyHelper).AsDynamicType().saltLength; SetSaltLength(saltLength); } public static IDisposable Create(int saltLength) => new CryptographyHelperSaltMock(saltLength); public void Dispose() => SetSaltLength(saltLength); private static void SetSaltLength(int length) => typeof(CryptographyHelper).AsDynamicType().saltLength = length; } }