using Moq; using ScadaLink.Commons.Entities.Instances; using ScadaLink.Commons.Entities.Templates; using ScadaLink.Commons.Interfaces.Repositories; using ScadaLink.TemplateEngine.Services; namespace ScadaLink.TemplateEngine.Tests.Services; public class TemplateDeletionServiceTests { private readonly Mock _repoMock = new(); private readonly TemplateDeletionService _sut; public TemplateDeletionServiceTests() { _sut = new TemplateDeletionService(_repoMock.Object); } [Fact] public async Task CanDeleteTemplate_NoReferences_ReturnsSuccess() { _repoMock.Setup(r => r.GetTemplateByIdAsync(1, It.IsAny())) .ReturnsAsync(new Template("Orphan") { Id = 1 }); _repoMock.Setup(r => r.GetInstancesByTemplateIdAsync(1, It.IsAny())) .ReturnsAsync(new List()); _repoMock.Setup(r => r.GetAllTemplatesAsync(It.IsAny())) .ReturnsAsync(new List