Headless CMS and Content Managment Hub
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

55 lines
1.5 KiB

// ==========================================================================
// Squidex Headless CMS
// ==========================================================================
// Copyright (c) Squidex UG (haftungsbeschraenkt)
// All rights reserved. Licensed under the MIT license.
// ==========================================================================
using Squidex.Infrastructure.Queries;
namespace Squidex.Infrastructure.States;
public class IndexDefinitionTests
{
[Fact]
public void Should_create_name_for_empty_definition()
{
var definition = new IndexDefinition();
Assert.Equal(string.Empty, definition.ToName());
}
[Fact]
public void Should_create_name_for_asc_order()
{
var definition = new IndexDefinition
{
new IndexField("field1", SortOrder.Ascending),
};
Assert.Equal("field1_asc", definition.ToName());
}
[Fact]
public void Should_create_name_for_dasc_order()
{
var definition = new IndexDefinition
{
new IndexField("field1", SortOrder.Descending),
};
Assert.Equal("field1_desc", definition.ToName());
}
[Fact]
public void Should_create_name_for_multiple_fields()
{
var definition = new IndexDefinition
{
new IndexField("field1", SortOrder.Ascending),
new IndexField("field2", SortOrder.Descending),
};
Assert.Equal("field1_asc_field2_desc", definition.ToName());
}
}