// using System.Collections.Generic; // using System.Linq; // using System.Threading.Tasks; // using Microsoft.Extensions.Logging; // using Microsoft.Extensions.Options; // using Moq; // using NUnit.Framework; // using Umbraco.Cms.Core.Configuration.Models; // using Umbraco.Cms.Core.Models; // using Umbraco.Cms.Core.Routing; // using Umbraco.Cms.Core.Services; // using Umbraco.Cms.Infrastructure.PublishedCache; // using Umbraco.Cms.Tests.Common.Published; // using Umbraco.Cms.Tests.UnitTests.TestHelpers; // using Umbraco.Extensions; // // namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Core.Routing; // // FIXME: Reintroduce if relevant // [TestFixture] // public class ContentFinderByUrlAndTemplateTests : PublishedSnapshotServiceTestBase // { // [SetUp] // public override void Setup() // { // base.Setup(); // // var xml = PublishedContentXml.BaseWebTestXml(1234); // // IEnumerable kits = PublishedContentXmlAdapter.GetContentNodeKits( // xml, // TestHelper.ShortStringHelper, // out var contentTypes, // out var dataTypes).ToList(); // // InitializedCache(kits, contentTypes, dataTypes); // } // // private IFileService _fileService; // // protected override ServiceContext CreateServiceContext(IContentType[] contentTypes, IMediaType[] mediaTypes, IDataType[] dataTypes) // { // var serviceContext = base.CreateServiceContext(contentTypes, mediaTypes, dataTypes); // // var fileService = Mock.Get(serviceContext.FileService); // fileService.Setup(x => x.GetTemplate(It.IsAny())) // .Returns((string alias) => new Template(ShortStringHelper, alias, alias)); // // _fileService = fileService.Object; // // return serviceContext; // } // // [TestCase("/blah")] // [TestCase("/home/Sub1/blah")] // [TestCase("/Home/Sub1/Blah")] // different cases // public async Task Match_Document_By_Url_With_Template(string urlAsString) // { // GlobalSettings.HideTopLevelNodeFromPath = false; // // var umbracoContextAccessor = GetUmbracoContextAccessor(urlAsString); // var umbracoContext = umbracoContextAccessor.GetRequiredUmbracoContext(); // var publishedRouter = CreatePublishedRouter(umbracoContextAccessor); // var frequest = await publishedRouter.CreateRequestAsync(umbracoContext.CleanedUmbracoUrl); // // var webRoutingSettings = new WebRoutingSettings(); // var lookup = new ContentFinderByUrlAndTemplate( // Mock.Of>(), // _fileService, // ContentTypeService, // umbracoContextAccessor, // Mock.Of>(x => x.CurrentValue == webRoutingSettings)); // // var result = await lookup.TryFindContent(frequest); // // var request = frequest.Build(); // // Assert.IsTrue(result); // Assert.IsNotNull(frequest.PublishedContent); // var templateAlias = request.GetTemplateAlias(); // Assert.IsNotNull(templateAlias); // Assert.AreEqual("blah".ToUpperInvariant(), templateAlias.ToUpperInvariant()); // } // }