53 lines
2.2 KiB
C#
53 lines
2.2 KiB
C#
|
|
// Copyright (c) Umbraco.
|
||
|
|
// See LICENSE for more details.
|
||
|
|
|
||
|
|
using NUnit.Framework;
|
||
|
|
using Umbraco.Cms.Core.Models;
|
||
|
|
using Umbraco.Cms.Tests.Common.Builders;
|
||
|
|
using Umbraco.Extensions;
|
||
|
|
|
||
|
|
namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Core.Extensions;
|
||
|
|
|
||
|
|
[TestFixture]
|
||
|
|
public class UdiGetterExtensionsTests
|
||
|
|
{
|
||
|
|
[TestCase("style.css", "umb://stylesheet/style.css")]
|
||
|
|
[TestCase("editor\\style.css", "umb://stylesheet/editor/style.css")]
|
||
|
|
[TestCase("editor/style.css", "umb://stylesheet/editor/style.css")]
|
||
|
|
public void GetUdiForStylesheet(string path, string expected)
|
||
|
|
{
|
||
|
|
var builder = new StylesheetBuilder();
|
||
|
|
var stylesheet = builder.WithPath(path).Build();
|
||
|
|
var result = stylesheet.GetUdi();
|
||
|
|
Assert.AreEqual(expected, result.ToString());
|
||
|
|
}
|
||
|
|
|
||
|
|
[TestCase("script.js", "umb://script/script.js")]
|
||
|
|
[TestCase("editor\\script.js", "umb://script/editor/script.js")]
|
||
|
|
[TestCase("editor/script.js", "umb://script/editor/script.js")]
|
||
|
|
public void GetUdiForScript(string path, string expected)
|
||
|
|
{
|
||
|
|
var builder = new ScriptBuilder();
|
||
|
|
var script = builder.WithPath(path).Build();
|
||
|
|
var result = script.GetUdi();
|
||
|
|
Assert.AreEqual(expected, result.ToString());
|
||
|
|
}
|
||
|
|
|
||
|
|
[TestCase("test.cshtml", PartialViewType.PartialView, "umb://partial-view/test.cshtml")]
|
||
|
|
[TestCase("editor\\test.cshtml", PartialViewType.PartialView, "umb://partial-view/editor/test.cshtml")]
|
||
|
|
[TestCase("editor/test.cshtml", PartialViewType.PartialView, "umb://partial-view/editor/test.cshtml")]
|
||
|
|
[TestCase("test.cshtml", PartialViewType.PartialViewMacro, "umb://partial-view-macro/test.cshtml")]
|
||
|
|
[TestCase("editor\\test.cshtml", PartialViewType.PartialViewMacro, "umb://partial-view-macro/editor/test.cshtml")]
|
||
|
|
[TestCase("editor/test.cshtml", PartialViewType.PartialViewMacro, "umb://partial-view-macro/editor/test.cshtml")]
|
||
|
|
public void GetUdiForPartialView(string path, PartialViewType viewType, string expected)
|
||
|
|
{
|
||
|
|
var builder = new PartialViewBuilder();
|
||
|
|
var partialView = builder
|
||
|
|
.WithPath(path)
|
||
|
|
.WithViewType(viewType)
|
||
|
|
.Build();
|
||
|
|
var result = partialView.GetUdi();
|
||
|
|
Assert.AreEqual(expected, result.ToString());
|
||
|
|
}
|
||
|
|
}
|