diff --git a/src/Umbraco.Tests/Services/Importing/PackageImportTests.cs b/src/Umbraco.Tests/Services/Importing/PackageImportTests.cs index 38c2cbb1f7..17b092c16b 100644 --- a/src/Umbraco.Tests/Services/Importing/PackageImportTests.cs +++ b/src/Umbraco.Tests/Services/Importing/PackageImportTests.cs @@ -503,6 +503,29 @@ namespace Umbraco.Tests.Services.Importing } } + [Test] + public void PackagingService_Can_Import_Macros_With_Properties() + { + // Arrange + string strXml = ImportResources.XsltSearch_Package; + var xml = XElement.Parse(strXml); + var macrosElement = xml.Descendants("Macros").First(); + var packagingService = ServiceContext.PackagingService; + + // Act + var macros = packagingService.ImportMacros(macrosElement).ToList(); + + // Assert + Assert.That(macros.Any(), Is.True); + Assert.That(macros.First().Properties.Any(), Is.True); + + var allMacros = ServiceContext.MacroService.GetAll().ToList(); + foreach (var macro in macros) + { + Assert.That(allMacros.Any(x => x.Alias == macro.Alias), Is.True); + } + } + private void AddLanguages() { var norwegian = new Core.Models.Language("nb-NO"); diff --git a/src/Umbraco.Tests/Services/PackagingServiceTests.cs b/src/Umbraco.Tests/Services/PackagingServiceTests.cs index 0124b4ca1a..f1da377d4d 100644 --- a/src/Umbraco.Tests/Services/PackagingServiceTests.cs +++ b/src/Umbraco.Tests/Services/PackagingServiceTests.cs @@ -1,4 +1,5 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using System.Linq; using System.Xml.Linq; using NUnit.Framework; @@ -22,6 +23,23 @@ namespace Umbraco.Tests.Services base.TearDown(); } + [Test] + public void PackagingService_Can_Export_Macro() + { + // Arrange + var macro = new Macro("test1", "Test", "~/usercontrol/blah.ascx", "MyAssembly", "test.xslt", "~/views/macropartials/test.cshtml"); + ServiceContext.MacroService.Save(macro); + + // Act + var element = ServiceContext.PackagingService.Export(macro); + + // Assert + Assert.That(element, Is.Not.Null); + Assert.That(element.Element("name").Value, Is.EqualTo("Test")); + Assert.That(element.Element("alias").Value, Is.EqualTo("test1")); + Console.Write(element.ToString()); + } + [Test] public void PackagingService_Can_Export_DictionaryItems() {