From 43cfabe9e765c1ff5f0ec7f1ca7f10df3714cfeb Mon Sep 17 00:00:00 2001 From: Shannon Date: Fri, 9 Jan 2015 17:10:42 +1100 Subject: [PATCH] adds unit tests for File service for templates --- .../Services/FileServiceTests.cs | 72 +++++++++++++++++++ src/Umbraco.Tests/Umbraco.Tests.csproj | 1 + 2 files changed, 73 insertions(+) create mode 100644 src/Umbraco.Tests/Services/FileServiceTests.cs diff --git a/src/Umbraco.Tests/Services/FileServiceTests.cs b/src/Umbraco.Tests/Services/FileServiceTests.cs new file mode 100644 index 0000000000..38f93c9195 --- /dev/null +++ b/src/Umbraco.Tests/Services/FileServiceTests.cs @@ -0,0 +1,72 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.InteropServices; +using System.Text; +using System.Threading.Tasks; +using NUnit.Framework; +using Umbraco.Tests.TestHelpers; + +namespace Umbraco.Tests.Services +{ + [DatabaseTestBehavior(DatabaseBehavior.NewDbFileAndSchemaPerTest)] + [TestFixture, RequiresSTA] + public class FileServiceTests : BaseServiceTest + { + + [SetUp] + public override void Initialize() + { + base.Initialize(); + } + + [TearDown] + public override void TearDown() + { + base.TearDown(); + } + + [Test] + public void Create_Template_Then_Assign_Child() + { + var child = ServiceContext.FileService.CreateTemplateWithIdentity("child", "test"); + var parent = ServiceContext.FileService.CreateTemplateWithIdentity("parent", "test"); + + child.SetMasterTemplate(parent); + ServiceContext.FileService.SaveTemplate(child); + + child = ServiceContext.FileService.GetTemplate(child.Id); + + Assert.AreEqual(parent.Alias, child.MasterTemplateAlias); + + } + + [Test] + public void Create_Template_With_Child_Then_Unassign() + { + var parent = ServiceContext.FileService.CreateTemplateWithIdentity("parent", "test"); + var child = ServiceContext.FileService.CreateTemplateWithIdentity("child", "test", parent); + + child.SetMasterTemplate(null); + ServiceContext.FileService.SaveTemplate(child); + + child = ServiceContext.FileService.GetTemplate(child.Id); + + Assert.AreEqual(null, child.MasterTemplateAlias); + } + + [Test] + public void Can_Query_Template_Children() + { + var parent = ServiceContext.FileService.CreateTemplateWithIdentity("parent", "test"); + var child1 = ServiceContext.FileService.CreateTemplateWithIdentity("child1", "test", parent); + var child2 = ServiceContext.FileService.CreateTemplateWithIdentity("child2", "test", parent); + + var children = ServiceContext.FileService.GetTemplates(parent.Id).Select(x => x.Id).ToArray(); + + Assert.IsTrue(children.Contains(child1.Id)); + Assert.IsTrue(children.Contains(child2.Id)); + } + + } +} diff --git a/src/Umbraco.Tests/Umbraco.Tests.csproj b/src/Umbraco.Tests/Umbraco.Tests.csproj index 60e57f91f0..b546168407 100644 --- a/src/Umbraco.Tests/Umbraco.Tests.csproj +++ b/src/Umbraco.Tests/Umbraco.Tests.csproj @@ -322,6 +322,7 @@ +