75 lines
2.6 KiB
C#
75 lines
2.6 KiB
C#
// Copyright (c) Umbraco.
|
|
// See LICENSE for more details.
|
|
|
|
using NUnit.Framework;
|
|
using Umbraco.Cms.Tests.Common.Builders;
|
|
using Umbraco.Cms.Tests.Common.Builders.Extensions;
|
|
|
|
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Tests.Common.Builders;
|
|
|
|
[TestFixture]
|
|
public class MacroBuilderTests
|
|
{
|
|
[Test]
|
|
public void Is_Built_Correctly()
|
|
{
|
|
// Arrange
|
|
const int id = 1;
|
|
var key = Guid.NewGuid();
|
|
const bool useInEditor = true;
|
|
const int cacheDuration = 3;
|
|
const string alias = "test";
|
|
const string name = "Test";
|
|
const string source = "~/script.cshtml";
|
|
const bool cacheByPage = false;
|
|
const bool cacheByMember = true;
|
|
const bool dontRender = true;
|
|
const int propertyId = 6;
|
|
const string propertyAlias = "rewq";
|
|
const string propertyName = "REWQ";
|
|
const int propertySortOrder = 1;
|
|
const string propertyEditorAlias = "asdfasdf";
|
|
|
|
var builder = new MacroBuilder();
|
|
|
|
// Act
|
|
var macro = builder
|
|
.WithId(id)
|
|
.WithKey(key)
|
|
.WithUseInEditor(useInEditor)
|
|
.WithCacheDuration(cacheDuration)
|
|
.WithAlias(alias)
|
|
.WithName(name)
|
|
.WithSource(source)
|
|
.WithCacheByPage(cacheByPage)
|
|
.WithCacheByMember(cacheByMember)
|
|
.WithDontRender(dontRender)
|
|
.AddProperty()
|
|
.WithId(propertyId)
|
|
.WithAlias(propertyAlias)
|
|
.WithName(propertyName)
|
|
.WithSortOrder(propertySortOrder)
|
|
.WithEditorAlias(propertyEditorAlias)
|
|
.Done()
|
|
.Build();
|
|
|
|
// Assert
|
|
Assert.AreEqual(id, macro.Id);
|
|
Assert.AreEqual(key, macro.Key);
|
|
Assert.AreEqual(useInEditor, macro.UseInEditor);
|
|
Assert.AreEqual(cacheDuration, macro.CacheDuration);
|
|
Assert.AreEqual(alias, macro.Alias);
|
|
Assert.AreEqual(name, macro.Name);
|
|
Assert.AreEqual(source, macro.MacroSource);
|
|
Assert.AreEqual(cacheByPage, macro.CacheByPage);
|
|
Assert.AreEqual(cacheByMember, macro.CacheByMember);
|
|
Assert.AreEqual(dontRender, macro.DontRender);
|
|
Assert.AreEqual(1, macro.Properties.Count);
|
|
Assert.AreEqual(propertyId, macro.Properties[0].Id);
|
|
Assert.AreEqual(propertyAlias, macro.Properties[0].Alias);
|
|
Assert.AreEqual(propertyName, macro.Properties[0].Name);
|
|
Assert.AreEqual(propertySortOrder, macro.Properties[0].SortOrder);
|
|
Assert.AreEqual(propertyEditorAlias, macro.Properties[0].EditorAlias);
|
|
}
|
|
}
|