diff --git a/.github/workflows/dev.yml b/.github/workflows/dev.yml
index bfae44077..7ecf4e309 100644
--- a/.github/workflows/dev.yml
+++ b/.github/workflows/dev.yml
@@ -143,10 +143,17 @@ jobs:
include:
- name: mysql
compose: docker-compose-mysql.yml
+ optional: false
- name: postgres
compose: docker-compose-postgres.yml
+ optional: false
- name: sqlserver
compose: docker-compose-sqlserver.yml
+ optional: false
+ - name: ferretdb
+ compose: docker-compose-ferretdb.yml
+ optional: true
+ continue-on-error: ${{ matrix.optional == true }}
steps:
- name: Prepare - Checkout
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 6f995ddc5..3cd5272ae 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -138,10 +138,17 @@ jobs:
include:
- name: mysql
compose: docker-compose-mysql.yml
+ optional: false
- name: postgres
compose: docker-compose-postgres.yml
+ optional: false
- name: sqlserver
compose: docker-compose-sqlserver.yml
+ optional: false
+ - name: ferretdb
+ compose: docker-compose-ferretdb.yml
+ optional: true
+ continue-on-error: ${{ matrix.optional == true }}
steps:
- name: Prepare - Checkout
diff --git a/backend/src/Squidex.Data.EntityFramework/Squidex.Data.EntityFramework.csproj b/backend/src/Squidex.Data.EntityFramework/Squidex.Data.EntityFramework.csproj
index 2ae19039c..a94855a6f 100644
--- a/backend/src/Squidex.Data.EntityFramework/Squidex.Data.EntityFramework.csproj
+++ b/backend/src/Squidex.Data.EntityFramework/Squidex.Data.EntityFramework.csproj
@@ -40,13 +40,13 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/backend/src/Squidex.Data.MongoDb/Domain/Apps/Entities/Contents/Text/MongoTextIndexBase.cs b/backend/src/Squidex.Data.MongoDb/Domain/Apps/Entities/Contents/Text/MongoTextIndexBase.cs
index 76ecfe2ea..a7efe54d5 100644
--- a/backend/src/Squidex.Data.MongoDb/Domain/Apps/Entities/Contents/Text/MongoTextIndexBase.cs
+++ b/backend/src/Squidex.Data.MongoDb/Domain/Apps/Entities/Contents/Text/MongoTextIndexBase.cs
@@ -31,23 +31,48 @@ public abstract class MongoTextIndexBase(IMongoDatabase database, string shar
public double Score { get; set; }
}
- protected override Task SetupCollectionAsync(IMongoCollection> collection,
+ protected override async Task SetupCollectionAsync(IMongoCollection> collection,
CancellationToken ct)
{
- return collection.Indexes.CreateManyAsync(
- [
- new CreateIndexModel>(
- Index
- .Ascending(x => x.AppId)
- .Ascending(x => x.ContentId)),
-
- new CreateIndexModel>(
- Index
- .Ascending(x => x.AppId)
- .Ascending(x => x.SchemaId)
- .Ascending(x => x.GeoField)
- .Geo2DSphere(x => x.GeoObject)),
- ], ct);
+ var isFerreDb = await Database.IsFerretDbAsync(ct);
+
+ if (isFerreDb)
+ {
+ await collection.Indexes.CreateManyAsync(
+ [
+ new CreateIndexModel>(
+ Index
+ .Ascending(x => x.AppId)
+ .Ascending(x => x.ContentId)),
+
+ new CreateIndexModel>(
+ Index
+ .Ascending(x => x.AppId)
+ .Ascending(x => x.SchemaId)
+ .Ascending(x => x.GeoField)),
+
+ new CreateIndexModel>(
+ Index
+ .Geo2DSphere(x => x.GeoObject)),
+ ], ct);
+ }
+ else
+ {
+ await collection.Indexes.CreateManyAsync(
+ [
+ new CreateIndexModel>(
+ Index
+ .Ascending(x => x.AppId)
+ .Ascending(x => x.ContentId)),
+
+ new CreateIndexModel>(
+ Index
+ .Ascending(x => x.AppId)
+ .Ascending(x => x.SchemaId)
+ .Ascending(x => x.GeoField)
+ .Geo2DSphere(x => x.GeoObject)),
+ ], ct);
+ }
}
protected override string CollectionName()
diff --git a/backend/src/Squidex.Data.MongoDb/Infrastructure/MongoExtensions.cs b/backend/src/Squidex.Data.MongoDb/Infrastructure/MongoExtensions.cs
index 4c5689519..8627e6a1a 100644
--- a/backend/src/Squidex.Data.MongoDb/Infrastructure/MongoExtensions.cs
+++ b/backend/src/Squidex.Data.MongoDb/Infrastructure/MongoExtensions.cs
@@ -218,10 +218,24 @@ public static class MongoExtensions
var versionMajor = versionString.Split('.')[0];
int.TryParse(versionMajor, NumberStyles.Integer, CultureInfo.InvariantCulture, out int result);
-
return result;
}
+ public static async Task IsFerretDbAsync(this IMongoDatabase database,
+ CancellationToken ct = default)
+ {
+ var command =
+ new BsonDocumentCommand(new BsonDocument
+ {
+ { "buildInfo", 1 },
+ });
+
+ var document = await database.RunCommandAsync(command, cancellationToken: ct);
+
+ var isFerretDB = document.Any(x => x.Name.Contains("ferret", StringComparison.OrdinalIgnoreCase));
+ return isFerretDB;
+ }
+
public static async Task> ToListRandomAsync(this IFindFluent find, IMongoCollection collection, long take,
CancellationToken ct = default)
{
diff --git a/backend/src/Squidex.Data.MongoDb/Squidex.Data.MongoDb.csproj b/backend/src/Squidex.Data.MongoDb/Squidex.Data.MongoDb.csproj
index a923f3bca..336a5660b 100644
--- a/backend/src/Squidex.Data.MongoDb/Squidex.Data.MongoDb.csproj
+++ b/backend/src/Squidex.Data.MongoDb/Squidex.Data.MongoDb.csproj
@@ -25,12 +25,12 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/backend/src/Squidex.Domain.Apps.Core.Model/Squidex.Domain.Apps.Core.Model.csproj b/backend/src/Squidex.Domain.Apps.Core.Model/Squidex.Domain.Apps.Core.Model.csproj
index 6086d7a8c..d736cf86f 100644
--- a/backend/src/Squidex.Domain.Apps.Core.Model/Squidex.Domain.Apps.Core.Model.csproj
+++ b/backend/src/Squidex.Domain.Apps.Core.Model/Squidex.Domain.Apps.Core.Model.csproj
@@ -20,7 +20,7 @@
-
+
diff --git a/backend/src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj b/backend/src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj
index 5a6330efa..453718dc8 100644
--- a/backend/src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj
+++ b/backend/src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj
@@ -29,8 +29,8 @@
-
-
+
+
diff --git a/backend/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj b/backend/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
index d58081b81..695035cb2 100644
--- a/backend/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
+++ b/backend/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
@@ -24,13 +24,13 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
diff --git a/backend/src/Squidex/Squidex.csproj b/backend/src/Squidex/Squidex.csproj
index f7c3e3039..873134afe 100644
--- a/backend/src/Squidex/Squidex.csproj
+++ b/backend/src/Squidex/Squidex.csproj
@@ -60,17 +60,17 @@
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
+
+
+
+
@@ -84,11 +84,11 @@
-
+
-
+
diff --git a/tools/TestSuite/TestSuite.ApiTests/ContentCollationTests.cs b/tools/TestSuite/TestSuite.ApiTests/ContentCollationTests.cs
index 422b830ad..daf48648d 100644
--- a/tools/TestSuite/TestSuite.ApiTests/ContentCollationTests.cs
+++ b/tools/TestSuite/TestSuite.ApiTests/ContentCollationTests.cs
@@ -80,15 +80,15 @@ public class ContentCollationTests(CreatedAppFixture fixture) : IClassFixture x.Data.String).ToList();
+ var sortedContent_1 = await contents.GetAsync(new ContentQuery { OrderBy = $"data/{TestEntityData.StringField}/iv asc" });
+ var sortedNames_1 = sortedContent_1.Items.Select(x => x.Data.String).ToList();
Assert.Equal(new string[] { "Lüleburgaz", "Mersin", "İstanbul" }, sortedNames_1);
// STEP 3: Get with collation.
- var sorted_2 = await contents.GetAsync(new ContentQuery { OrderBy = $"data/{TestEntityData.StringField}/iv asc", Collation = "tr" });
- var sortedNames_2 = sorted_2.Items.Select(x => x.Data.String).ToList();
+ var sortedContent_2 = await contents.GetAsync(new ContentQuery { OrderBy = $"data/{TestEntityData.StringField}/iv asc", Collation = "tr" });
+ var sortedNames_2 = sortedContent_2.Items.Select(x => x.Data.String).ToList();
Assert.Equal(new string[] { "İstanbul", "Lüleburgaz", "Mersin" }, sortedNames_2);
}
diff --git a/tools/TestSuite/TestSuite.Shared/AssetStrategies.cs b/tools/TestSuite/TestSuite.Shared/AssetStrategies.cs
index b5b719df5..8003be29c 100644
--- a/tools/TestSuite/TestSuite.Shared/AssetStrategies.cs
+++ b/tools/TestSuite/TestSuite.Shared/AssetStrategies.cs
@@ -32,7 +32,7 @@ public static partial class ContentStrategies
Id = asset.Id,
Permanent = false,
},
- ]
+ ],
});
case Deletion.BulkPermanent:
return client.BulkUpdateAssetsAsync(new BulkUpdateAssetsDto
@@ -45,7 +45,7 @@ public static partial class ContentStrategies
Id = asset.Id,
Permanent = true,
},
- ]
+ ],
});
default:
return Task.CompletedTask;
@@ -55,7 +55,7 @@ public static partial class ContentStrategies
public enum Move
{
Single,
- Bulk
+ Bulk,
}
public static Task MoveAsync(this IAssetsClient client, AssetDto asset, AssetFolderDto folder, Move strategy)
@@ -65,7 +65,7 @@ public static partial class ContentStrategies
case Move.Single:
return client.PutAssetParentAsync(asset.Id, new MoveAssetDto
{
- ParentId = folder.Id
+ ParentId = folder.Id,
});
case Move.Bulk:
return client.BulkUpdateAssetsAsync(new BulkUpdateAssetsDto
@@ -76,9 +76,9 @@ public static partial class ContentStrategies
{
Type = BulkUpdateAssetType.Move,
Id = asset.Id,
- ParentId = folder.Id
+ ParentId = folder.Id,
},
- ]
+ ],
});
default:
return Task.CompletedTask;
@@ -88,7 +88,7 @@ public static partial class ContentStrategies
public enum Annotate
{
Single,
- Bulk
+ Bulk,
}
public static Task AnnotateAsync(this IAssetsClient client, AssetDto asset, AnnotateAssetDto request, Annotate strategy)
@@ -110,9 +110,9 @@ public static partial class ContentStrategies
IsProtected = request.IsProtected,
Metadata = request.Metadata,
Slug = request.Slug,
- Tags = request.Tags
+ Tags = request.Tags,
},
- ]
+ ],
});
default:
return Task.CompletedTask;
diff --git a/tools/TestSuite/TestSuite.Shared/ClientExtensions.cs b/tools/TestSuite/TestSuite.Shared/ClientExtensions.cs
index 8a12131a7..b9d61ca90 100644
--- a/tools/TestSuite/TestSuite.Shared/ClientExtensions.cs
+++ b/tools/TestSuite/TestSuite.Shared/ClientExtensions.cs
@@ -370,7 +370,7 @@ public static class ClientExtensions
var pausingStream = new PauseStream(fileParameter.Data, 0.25);
var pausingFile = new FileParameter(pausingStream, fileParameter.FileName, fileParameter.ContentType)
{
- ContentLength = fileParameter.Data.Length
+ ContentLength = fileParameter.Data.Length,
};
await using (pausingFile.Data)
diff --git a/tools/TestSuite/TestSuite.Shared/ClientWrapper.cs b/tools/TestSuite/TestSuite.Shared/ClientWrapper.cs
index 064c86ed1..180d88164 100644
--- a/tools/TestSuite/TestSuite.Shared/ClientWrapper.cs
+++ b/tools/TestSuite/TestSuite.Shared/ClientWrapper.cs
@@ -33,7 +33,7 @@ public sealed class ClientWrapper
{
return new HttpClientHandler
{
- ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator
+ ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator,
};
}).Services
.BuildServiceProvider();
diff --git a/tools/TestSuite/TestSuite.Shared/ContentStrategies.cs b/tools/TestSuite/TestSuite.Shared/ContentStrategies.cs
index f2dce7af6..04c3197c1 100644
--- a/tools/TestSuite/TestSuite.Shared/ContentStrategies.cs
+++ b/tools/TestSuite/TestSuite.Shared/ContentStrategies.cs
@@ -18,7 +18,7 @@ public static partial class ContentStrategies
SingleSoft,
SinglePermanent,
BulkSoft,
- BulkPermanent
+ BulkPermanent,
}
public static Task DeleteAsync(this ISquidexClient client, ContentBase content,
@@ -46,7 +46,7 @@ public static partial class ContentStrategies
Id = content.Id,
Permanent = false,
},
- ]
+ ],
});
case Deletion.BulkPermanent:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -59,7 +59,7 @@ public static partial class ContentStrategies
Id = content.Id,
Permanent = true,
},
- ]
+ ],
});
default:
return Task.CompletedTask;
@@ -73,7 +73,7 @@ public static partial class ContentStrategies
UpsertBulk,
Bulk,
BulkWithSchema,
- BulkShared
+ BulkShared,
}
public static Task UpdateAsync(this ISquidexClient client, ContentBase content, object data,
@@ -99,9 +99,9 @@ public static partial class ContentStrategies
{
Type = BulkUpdateType.Update,
Id = content.Id,
- Data = data
+ Data = data,
},
- ]
+ ],
});
case Update.UpsertBulk:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -112,9 +112,9 @@ public static partial class ContentStrategies
{
Type = BulkUpdateType.Upsert,
Id = content.Id,
- Data = data
+ Data = data,
},
- ]
+ ],
});
case Update.BulkWithSchema:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -126,9 +126,9 @@ public static partial class ContentStrategies
Type = BulkUpdateType.Update,
Id = content.Id,
Data = data,
- Schema = content.SchemaName
+ Schema = content.SchemaName,
},
- ]
+ ],
});
case Update.BulkShared:
return GetSharedClient(client).BulkUpdateAsync(new BulkUpdate
@@ -140,9 +140,9 @@ public static partial class ContentStrategies
Type = BulkUpdateType.Update,
Id = content.Id,
Data = data,
- Schema = content.SchemaName
+ Schema = content.SchemaName,
},
- ]
+ ],
});
default:
return Task.CompletedTask;
@@ -156,7 +156,7 @@ public static partial class ContentStrategies
UpsertBulk,
Bulk,
BulkWithSchema,
- BulkShared
+ BulkShared,
}
public static Task PatchAsync(this ISquidexClient client, ContentBase content, object data,
@@ -183,9 +183,9 @@ public static partial class ContentStrategies
Type = BulkUpdateType.Upsert,
Id = content.Id,
Data = data,
- Patch = true
+ Patch = true,
},
- ]
+ ],
});
case Patch.Bulk:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -198,7 +198,7 @@ public static partial class ContentStrategies
Id = content.Id,
Data = data,
},
- ]
+ ],
});
case Patch.BulkWithSchema:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -210,9 +210,9 @@ public static partial class ContentStrategies
Type = BulkUpdateType.Patch,
Id = content.Id,
Data = data,
- Schema = content.SchemaName
+ Schema = content.SchemaName,
},
- ]
+ ],
});
case Patch.BulkShared:
return GetSharedClient(client).BulkUpdateAsync(new BulkUpdate
@@ -224,9 +224,9 @@ public static partial class ContentStrategies
Type = BulkUpdateType.Patch,
Id = content.Id,
Data = data,
- Schema = content.SchemaName
+ Schema = content.SchemaName,
},
- ]
+ ],
});
default:
return Task.CompletedTask;
@@ -242,7 +242,7 @@ public static partial class ContentStrategies
BulkWithSchema,
BulkShared,
UpsertBulk,
- UpdateBulk
+ UpdateBulk,
}
public static Task EnrichDefaultsAsync(this ISquidexClient client, ContentBase content, object data,
@@ -258,14 +258,14 @@ public static partial class ContentStrategies
case EnrichDefaults.Normal:
var createOptions = new ContentEnrichDefaultsOptions
{
- EnrichRequiredFields = requiredFields
+ EnrichRequiredFields = requiredFields,
};
return GetClient().EnrichDefaultsAsync(content.Id, createOptions);
case EnrichDefaults.Update:
var updateOptions = new ContentUpdateOptions
{
- EnrichDefaults = true
+ EnrichDefaults = true,
};
return GetClient().UpdateAsync(content.Id, data, updateOptions);
@@ -273,7 +273,7 @@ public static partial class ContentStrategies
var upsertOptions = new ContentUpsertOptions
{
EnrichDefaults = true,
- EnrichRequiredFields = requiredFields
+ EnrichRequiredFields = requiredFields,
};
return GetClient().UpsertAsync(content.Id, data, upsertOptions);
@@ -285,10 +285,10 @@ public static partial class ContentStrategies
new BulkUpdateJob
{
Type = BulkUpdateType.EnrichDefaults,
- Id = content.Id
+ Id = content.Id,
},
],
- EnrichRequiredFields = requiredFields
+ EnrichRequiredFields = requiredFields,
});
case EnrichDefaults.UpdateBulk:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -303,7 +303,7 @@ public static partial class ContentStrategies
EnrichDefaults = true,
},
],
- EnrichRequiredFields = requiredFields
+ EnrichRequiredFields = requiredFields,
});
case EnrichDefaults.UpsertBulk:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -318,7 +318,7 @@ public static partial class ContentStrategies
EnrichDefaults = true,
},
],
- EnrichRequiredFields = requiredFields
+ EnrichRequiredFields = requiredFields,
});
case EnrichDefaults.BulkWithSchema:
return GetClient().BulkUpdateAsync(new BulkUpdate
@@ -329,10 +329,10 @@ public static partial class ContentStrategies
{
Type = BulkUpdateType.EnrichDefaults,
Id = content.Id,
- Schema = content.SchemaName
+ Schema = content.SchemaName,
},
],
- EnrichRequiredFields = requiredFields
+ EnrichRequiredFields = requiredFields,
});
case EnrichDefaults.BulkShared:
return GetSharedClient(client).BulkUpdateAsync(new BulkUpdate
@@ -343,10 +343,10 @@ public static partial class ContentStrategies
{
Type = BulkUpdateType.EnrichDefaults,
Id = content.Id,
- Schema = content.SchemaName
+ Schema = content.SchemaName,
},
],
- EnrichRequiredFields = requiredFields
+ EnrichRequiredFields = requiredFields,
});
default:
return Task.CompletedTask;
diff --git a/tools/TestSuite/TestSuite.Shared/Fixtures/ClientFixture.cs b/tools/TestSuite/TestSuite.Shared/Fixtures/ClientFixture.cs
index c3bafe451..2b5e12cf0 100644
--- a/tools/TestSuite/TestSuite.Shared/Fixtures/ClientFixture.cs
+++ b/tools/TestSuite/TestSuite.Shared/Fixtures/ClientFixture.cs
@@ -45,7 +45,7 @@ public class ClientFixture : IAsyncLifetime
var createRequest = new CreateAppDto
{
- Name = name
+ Name = name,
};
return PostAppAsync(createRequest);
@@ -57,7 +57,7 @@ public class ClientFixture : IAsyncLifetime
var request = new CreateTeamDto
{
- Name = name
+ Name = name,
};
return Client.Teams.PostTeamAsync(request);
@@ -80,7 +80,7 @@ public class ClientFixture : IAsyncLifetime
{
return new HttpClientHandler
{
- ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator
+ ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator,
};
}).Services
.BuildServiceProvider();
diff --git a/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedAppFixture.cs b/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedAppFixture.cs
index 27a0642f7..09961b067 100644
--- a/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedAppFixture.cs
+++ b/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedAppFixture.cs
@@ -21,7 +21,7 @@ public class CreatedAppFixture : ClientFixture
{
var createRequest = new AddLanguageDto
{
- Language = name
+ Language = name,
};
await Client.Apps.PostLanguageAsync(createRequest);
@@ -41,7 +41,7 @@ public class CreatedAppFixture : ClientFixture
{
var createRequest = new CreateAppDto
{
- Name = AppName
+ Name = AppName,
};
await Client.Apps.PostAppAsync(createRequest);
diff --git a/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedTeamFixture.cs b/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedTeamFixture.cs
index 3d2e6644d..8cf0ff332 100644
--- a/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedTeamFixture.cs
+++ b/tools/TestSuite/TestSuite.Shared/Fixtures/CreatedTeamFixture.cs
@@ -27,7 +27,7 @@ public class CreatedTeamFixture : ClientFixture
{
var request = new CreateTeamDto
{
- Name = TeamName
+ Name = TeamName,
};
Team = await Client.Teams.PostTeamAsync(request);
diff --git a/tools/TestSuite/TestSuite.Shared/Fixtures/WebhookCatcherClient.cs b/tools/TestSuite/TestSuite.Shared/Fixtures/WebhookCatcherClient.cs
index 96f427dd3..d96742e24 100644
--- a/tools/TestSuite/TestSuite.Shared/Fixtures/WebhookCatcherClient.cs
+++ b/tools/TestSuite/TestSuite.Shared/Fixtures/WebhookCatcherClient.cs
@@ -73,7 +73,7 @@ public sealed class WebhookCatcherClient
httpClient = new HttpClient
{
- BaseAddress = new Uri($"http://{apiHost}:{apiPort}")
+ BaseAddress = new Uri($"http://{apiHost}:{apiPort}"),
};
}
diff --git a/tools/TestSuite/TestSuite.Shared/Model/TestEntity.cs b/tools/TestSuite/TestSuite.Shared/Model/TestEntity.cs
index 46a99fae2..8f5ad1a29 100644
--- a/tools/TestSuite/TestSuite.Shared/Model/TestEntity.cs
+++ b/tools/TestSuite/TestSuite.Shared/Model/TestEntity.cs
@@ -30,40 +30,40 @@ public sealed class TestEntity : Content
Name = TestEntityData.NumberField,
Properties = new NumberFieldPropertiesDto
{
- IsRequired = true
- }
+ IsRequired = true,
+ },
},
new UpsertSchemaFieldDto
{
Name = TestEntityData.StringField,
Properties = new StringFieldPropertiesDto
{
- IsRequired = false
- }
+ IsRequired = false,
+ },
},
new UpsertSchemaFieldDto
{
Name = TestEntityData.SearchableField,
Properties = new StringFieldPropertiesDto
{
- IsRequired = false
- }
+ IsRequired = false,
+ },
},
new UpsertSchemaFieldDto
{
Name = TestEntityData.GeoField,
Properties = new GeolocationFieldPropertiesDto
{
- IsRequired = false
- }
+ IsRequired = false,
+ },
},
new UpsertSchemaFieldDto
{
Name = TestEntityData.JsonField,
Properties = new JsonFieldPropertiesDto
{
- IsRequired = false
- }
+ IsRequired = false,
+ },
},
new UpsertSchemaFieldDto
{
@@ -71,28 +71,28 @@ public sealed class TestEntity : Content
Partitioning = "language",
Properties = new StringFieldPropertiesDto
{
- DefaultValue = "default"
- }
+ DefaultValue = "default",
+ },
},
new UpsertSchemaFieldDto
{
Name = TestEntityData.IdField,
Properties = new StringFieldPropertiesDto
{
- IsRequired = false
- }
+ IsRequired = false,
+ },
},
new UpsertSchemaFieldDto
{
Name = TestEntityData.ImmutableField,
Properties = new StringFieldPropertiesDto
{
- IsCreateOnly = true
- }
+ IsCreateOnly = true,
+ },
},
],
Scripts = scripts,
- IsPublished = true
+ IsPublished = true,
});
return schema;
@@ -108,10 +108,10 @@ public sealed class TestEntity : Content
nested0 = index,
nested1 = new
{
- nested2 = index
- }
+ nested2 = index,
+ },
}),
- String = index.ToString(CultureInfo.InvariantCulture)
+ String = index.ToString(CultureInfo.InvariantCulture),
};
if (index % 2 == 0)
@@ -122,8 +122,8 @@ public sealed class TestEntity : Content
coordinates = new[]
{
index,
- index
- }
+ index,
+ },
};
}
else
diff --git a/tools/TestSuite/TestSuite.Shared/Model/TestEntityWithReferences.cs b/tools/TestSuite/TestSuite.Shared/Model/TestEntityWithReferences.cs
index cd01740d9..f06eaa483 100644
--- a/tools/TestSuite/TestSuite.Shared/Model/TestEntityWithReferences.cs
+++ b/tools/TestSuite/TestSuite.Shared/Model/TestEntityWithReferences.cs
@@ -26,11 +26,11 @@ public sealed class TestEntityWithReferences : Content