feat(templates): add TemplateFolder entity and Template.FolderId
This commit is contained in:
@@ -6,6 +6,7 @@ public class Template
|
||||
public string Name { get; set; }
|
||||
public string? Description { get; set; }
|
||||
public int? ParentTemplateId { get; set; }
|
||||
public int? FolderId { get; set; }
|
||||
public ICollection<TemplateAttribute> Attributes { get; set; } = new List<TemplateAttribute>();
|
||||
public ICollection<TemplateAlarm> Alarms { get; set; } = new List<TemplateAlarm>();
|
||||
public ICollection<TemplateScript> Scripts { get; set; } = new List<TemplateScript>();
|
||||
|
||||
14
src/ScadaLink.Commons/Entities/Templates/TemplateFolder.cs
Normal file
14
src/ScadaLink.Commons/Entities/Templates/TemplateFolder.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
namespace ScadaLink.Commons.Entities.Templates;
|
||||
|
||||
public class TemplateFolder
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string Name { get; set; }
|
||||
public int? ParentFolderId { get; set; }
|
||||
public int SortOrder { get; set; }
|
||||
|
||||
public TemplateFolder(string name)
|
||||
{
|
||||
Name = name ?? throw new ArgumentNullException(nameof(name));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using ScadaLink.Commons.Entities.Templates;
|
||||
using Xunit;
|
||||
|
||||
namespace ScadaLink.Commons.Tests.Entities;
|
||||
|
||||
public class TemplateFolderTests
|
||||
{
|
||||
[Fact]
|
||||
public void Constructor_SetsName()
|
||||
{
|
||||
var folder = new TemplateFolder("Dev");
|
||||
|
||||
Assert.Equal("Dev", folder.Name);
|
||||
Assert.Null(folder.ParentFolderId);
|
||||
Assert.Equal(0, folder.SortOrder);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Constructor_NullName_Throws()
|
||||
{
|
||||
Assert.Throws<ArgumentNullException>(() => new TemplateFolder(null!));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Template_FolderId_DefaultsToNull()
|
||||
{
|
||||
var template = new Template("X");
|
||||
Assert.Null(template.FolderId);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user