using System.Security.Cryptography; using FrostFS.Container; using Moq; using FrostFS.SDK.Cryptography; using FrostFS.SDK.ModelsV2.Enums; using FrostFS.SDK.ModelsV2.Netmap; namespace FrostFS.SDK.Tests; public abstract class ServiceBase(string key) { public ECDsa Key { get; private set; } = key.LoadWif(); public ModelsV2.Version Version { get; set; } = DefaultVersion; public BasicAcl Acl { get; set; } = DefaultAcl; public PlacementPolicy PlacementPolicy { get; set; } = DefaultPlacementPolicy; public static ModelsV2.Version DefaultVersion { get; } = new(2, 13); public static BasicAcl DefaultAcl { get; } = BasicAcl.PublicRW; public static PlacementPolicy DefaultPlacementPolicy { get; } = new PlacementPolicy(true, new Replica(1)); } public abstract class ContainerServiceBase(string key) : ServiceBase (key) { public Guid ContainerGuid { get; set; } = Guid.NewGuid(); public abstract Mock GetMock(); }