diff --git a/src/ScadaLink.Commons/Entities/Templates/Template.cs b/src/ScadaLink.Commons/Entities/Templates/Template.cs index 35633ac..a22358f 100644 --- a/src/ScadaLink.Commons/Entities/Templates/Template.cs +++ b/src/ScadaLink.Commons/Entities/Templates/Template.cs @@ -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 Attributes { get; set; } = new List(); public ICollection Alarms { get; set; } = new List(); public ICollection Scripts { get; set; } = new List(); diff --git a/src/ScadaLink.Commons/Entities/Templates/TemplateFolder.cs b/src/ScadaLink.Commons/Entities/Templates/TemplateFolder.cs new file mode 100644 index 0000000..fd691af --- /dev/null +++ b/src/ScadaLink.Commons/Entities/Templates/TemplateFolder.cs @@ -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)); + } +} diff --git a/tests/ScadaLink.Commons.Tests/Entities/TemplateFolderTests.cs b/tests/ScadaLink.Commons.Tests/Entities/TemplateFolderTests.cs new file mode 100644 index 0000000..e990398 --- /dev/null +++ b/tests/ScadaLink.Commons.Tests/Entities/TemplateFolderTests.cs @@ -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(() => new TemplateFolder(null!)); + } + + [Fact] + public void Template_FolderId_DefaultsToNull() + { + var template = new Template("X"); + Assert.Null(template.FolderId); + } +}