Skip to content

Commit

Permalink
Revert "Case-insensitive tag names with SQLite provider (#14012)"
Browse files Browse the repository at this point in the history
This reverts commit bb7752c.
  • Loading branch information
nikolajlauridsen committed Jun 21, 2023
1 parent 9a3e655 commit b451bb8
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 42 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ public void Assign(int contentId, int propertyTypeId, IEnumerable<ITag> tags, bo
var sql1 = $@"INSERT INTO cmsTags (tag, {group}, languageId)
SELECT tagSet.tag, tagSet.{group}, tagSet.languageId
FROM {tagSetSql}
LEFT OUTER JOIN cmsTags ON (tagSet.tag LIKE cmsTags.tag AND tagSet.{group} = cmsTags.{group} AND COALESCE(tagSet.languageId, -1) = COALESCE(cmsTags.languageId, -1))
LEFT OUTER JOIN cmsTags ON (tagSet.tag = cmsTags.tag AND tagSet.{group} = cmsTags.{group} AND COALESCE(tagSet.languageId, -1) = COALESCE(cmsTags.languageId, -1))
WHERE cmsTags.id IS NULL";

Database.Execute(sql1);
Expand Down Expand Up @@ -321,7 +321,7 @@ public IEnumerable<TaggedEntity> GetTaggedEntitiesByTag(TaggableObjectTypes obje
Sql<ISqlContext> sql = GetTaggedEntitiesSql(objectType, culture);

sql = sql
.WhereLike<TagDto>(dto => dto.Text, tag);
.Where<TagDto>(dto => dto.Text == tag);

if (group.IsNullOrWhiteSpace() == false)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
using Umbraco.Cms.Tests.Common.Builders;
using Umbraco.Cms.Tests.Common.Testing;
using Umbraco.Cms.Tests.Integration.Testing;
using static Umbraco.Cms.Core.Constants.Conventions;

namespace Umbraco.Cms.Tests.Integration.Umbraco.Infrastructure.Persistence.Repositories;

Expand Down Expand Up @@ -99,45 +98,6 @@ public void Can_Create_Tag_Relations()
}
}

[Test]
public void Can_Create_Tag_Relations_With_Mixed_Casing()
{
var provider = ScopeProvider;
using (ScopeProvider.CreateScope())
{
var template = TemplateBuilder.CreateTextPageTemplate();
FileService.SaveTemplate(template);

var contentType =
ContentTypeBuilder.CreateSimpleContentType("test", "Test", defaultTemplateId: template.Id);
ContentTypeRepository.Save(contentType);

var content1 = ContentBuilder.CreateSimpleContent(contentType);
var content2 = ContentBuilder.CreateSimpleContent(contentType);
DocumentRepository.Save(content1);
DocumentRepository.Save(content2);

var repository = CreateRepository(provider);
Tag[] tags1 = { new Tag { Text = "tag1", Group = "test" } };
repository.Assign(
content1.Id,
contentType.PropertyTypes.First().Id,
tags1,
false);

// Note the casing is different from tags1, but both should be considered equivalent
Tag[] tags2 = { new Tag { Text = "TAG1", Group = "test" } };
repository.Assign(
content2.Id,
contentType.PropertyTypes.First().Id,
tags2,
false);

// The template should have only one tag, despite case differences
Assert.AreEqual(1, repository.GetTaggedEntitiesByTag(TaggableObjectTypes.Content, "tag1").Count());
}
}

[Test]
public void Can_Append_Tag_Relations()
{
Expand Down

0 comments on commit b451bb8

Please sign in to comment.