Browse Source

CmsKit - Reconsider Unidecode at slugs

pull/7226/head
enisn 5 years ago
parent
commit
01077d02be
  1. 3
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.csproj
  2. 3
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/Extensions/SlugExtensions.cs
  3. 7
      modules/cms-kit/test/Volo.CmsKit.Domain.Tests/Blogs/SlugExtensions_Tests.cs

3
modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.csproj

@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk">
<Project Sdk="Microsoft.NET.Sdk">
<Import Project="..\..\..\..\common.props" />
<Import Project="..\..\..\..\configureawait.props" />
@ -10,6 +10,7 @@
<ItemGroup>
<PackageReference Include="Slugify.Core" Version="3.0.0" />
<PackageReference Include="Unidecode.NET" Version="2.1.0" />
</ItemGroup>
<ItemGroup>

3
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Blogs/Extensions/SlugExtensions.cs

@ -1,4 +1,5 @@
using Slugify;
using Unidecode.NET;
namespace Volo.CmsKit.Blogs.Extensions
{
@ -8,7 +9,7 @@ namespace Volo.CmsKit.Blogs.Extensions
{
var slugHelper = new SlugHelper();
return slugHelper.GenerateSlug(value);
return slugHelper.GenerateSlug(value?.Unidecode());
}
}
}

7
modules/cms-kit/test/Volo.CmsKit.Domain.Tests/Blogs/SlugExtensions_Tests.cs

@ -6,6 +6,7 @@ using System.Threading.Tasks;
using Xunit;
using Volo.CmsKit.Blogs.Extensions;
using Shouldly;
using Unidecode.NET;
namespace Volo.CmsKit.Blogs
{
@ -29,7 +30,7 @@ namespace Volo.CmsKit.Blogs
{
// Arrange
var name = "My Perfect Title v.2";
var expected = "my-perfect-title-v2";
var expected = "my-perfect-title-v.2";
// Act
var actual = name.NormalizeSlug();
@ -112,8 +113,8 @@ namespace Volo.CmsKit.Blogs
public void NormalizeSlug_ShouldWorkProperly_WithChineseChars()
{
// Arrange
var name = "我的挑战";
var expected = "o-e-iao-han";
var name = "我的真棒头衔";
var expected = "wo-de-zhen-bang-tou-xian";
// Act
var actual = name.NormalizeSlug();

Loading…
Cancel
Save