mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-09-23 12:53:33 +08:00
Changing generated slugs to be lower-cased
--HG-- extra : convert_revision : svn%3A5ff7c347-ad56-4c35-b696-ccb81de16e03/trunk%4046006
This commit is contained in:
@@ -40,14 +40,14 @@ namespace Orchard.Core.Tests.Common.Services {
|
|||||||
|
|
||||||
_routableService.FillSlug(thing.As<RoutableAspect>());
|
_routableService.FillSlug(thing.As<RoutableAspect>());
|
||||||
|
|
||||||
Assert.That(thing.Slug, Is.EqualTo("Please-do-not-use-any-of-the-following-characters-in-your-slugs-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\""));
|
Assert.That(thing.Slug, Is.EqualTo("please-do-not-use-any-of-the-following-characters-in-your-slugs-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\"-\""));
|
||||||
}
|
}
|
||||||
|
|
||||||
[Test]
|
[Test]
|
||||||
public void VeryLongStringTruncatedTo1000Chars() {
|
public void VeryLongStringTruncatedTo1000Chars() {
|
||||||
var contentManager = _container.Resolve<IContentManager>();
|
var contentManager = _container.Resolve<IContentManager>();
|
||||||
|
|
||||||
var veryVeryLongTitle = "this is a very long slug...";
|
var veryVeryLongTitle = "this is a very long title...";
|
||||||
for (var i = 0; i < 100; i++)
|
for (var i = 0; i < 100; i++)
|
||||||
veryVeryLongTitle += "aaaaaaaaaa";
|
veryVeryLongTitle += "aaaaaaaaaa";
|
||||||
|
|
||||||
@@ -98,6 +98,20 @@ namespace Orchard.Core.Tests.Common.Services {
|
|||||||
Assert.That(slug, Is.EqualTo("woohoo-2-2"));
|
Assert.That(slug, Is.EqualTo("woohoo-2-2"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[Test]
|
||||||
|
public void GeneratedSlugIsLowerCased() {
|
||||||
|
var contentManager = _container.Resolve<IContentManager>();
|
||||||
|
|
||||||
|
var thing = contentManager.Create<Thing>(ThingDriver.ContentType.Name, t => {
|
||||||
|
t.As<RoutableAspect>().Record = new RoutableRecord();
|
||||||
|
t.Title = "This Is Some Interesting Title";
|
||||||
|
});
|
||||||
|
|
||||||
|
_routableService.FillSlug(thing.As<RoutableAspect>());
|
||||||
|
|
||||||
|
Assert.That(thing.Slug, Is.EqualTo("this-is-some-interesting-title"));
|
||||||
|
}
|
||||||
|
|
||||||
protected override IEnumerable<Type> DatabaseTypes {
|
protected override IEnumerable<Type> DatabaseTypes {
|
||||||
get {
|
get {
|
||||||
return new[] {
|
return new[] {
|
||||||
|
@@ -19,14 +19,14 @@ namespace Orchard.Core.Common.Services {
|
|||||||
if (slug.Length > 1000)
|
if (slug.Length > 1000)
|
||||||
slug = slug.Substring(0, 1000);
|
slug = slug.Substring(0, 1000);
|
||||||
|
|
||||||
model.Slug = slug;
|
model.Slug = slug.ToLowerInvariant();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void FillSlug<TModel>(TModel model, Func<string, string> generateSlug) where TModel : RoutableAspect {
|
public void FillSlug<TModel>(TModel model, Func<string, string> generateSlug) where TModel : RoutableAspect {
|
||||||
if (!string.IsNullOrEmpty(model.Slug) || string.IsNullOrEmpty(model.Title))
|
if (!string.IsNullOrEmpty(model.Slug) || string.IsNullOrEmpty(model.Title))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
model.Slug = generateSlug(model.Title);
|
model.Slug = generateSlug(model.Title).ToLowerInvariant();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user