using FluentAssertions; using Microsoft.EntityFrameworkCore; using Workflow.Domain.Entities; using Xunit; namespace BuildFlow.Workflow.Tests.Performance; /// 表单数据导出 keyset 查询的 EF 索引模型测试。 public class FormDataExportIndexTests { [Fact] public void FormDataShouldHaveExportKeysetCompositeIndex() { var options = new DbContextOptionsBuilder() .UseInMemoryDatabase($"form-data-export-index-{Guid.NewGuid():N}") .Options; using var db = new WorkflowDbContext(options); var entity = db.Model.FindEntityType(typeof(FormData)); entity.Should().NotBeNull(); entity!.GetIndexes().Should().Contain(index => index.Properties .Select(property => property.Name) .SequenceEqual(new[] { nameof(FormData.FormDefinitionId), nameof(FormData.CreatedAt), nameof(FormData.Id), })); } }