Browse Source

Merge branch 'master' of github.com:Squidex/squidex

pull/666/head
Sebastian 5 years ago
parent
commit
4be78e55ac
  1. 24
      backend/extensions/Squidex.Extensions/Actions/Kafka/KafkaProducer.cs
  2. 6
      backend/extensions/Squidex.Extensions/Squidex.Extensions.csproj
  3. 6
      backend/src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj
  4. 2
      backend/src/Squidex.Domain.Apps.Entities.MongoDb/Squidex.Domain.Apps.Entities.MongoDb.csproj
  5. 9
      backend/src/Squidex.Domain.Apps.Entities/Apps/DefaultAppLogStore.cs
  6. 8
      backend/src/Squidex.Domain.Apps.Entities/Squidex.Domain.Apps.Entities.csproj
  7. 2
      backend/src/Squidex.Domain.Apps.Events/Squidex.Domain.Apps.Events.csproj
  8. 2
      backend/src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj
  9. 4
      backend/src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj
  10. 14
      backend/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
  11. 24
      backend/src/Squidex/Squidex.csproj
  12. 1
      backend/src/Squidex/Startup.cs
  13. 5
      backend/src/Squidex/appsettings.json
  14. 2
      backend/tests/RunCoverage.ps1
  15. 2
      backend/tests/Squidex.Domain.Apps.Core.Tests/Squidex.Domain.Apps.Core.Tests.csproj
  16. 2
      backend/tests/Squidex.Domain.Apps.Entities.Tests/Squidex.Domain.Apps.Entities.Tests.csproj
  17. 2
      backend/tests/Squidex.Domain.Users.Tests/Squidex.Domain.Users.Tests.csproj
  18. 2
      backend/tests/Squidex.Infrastructure.Tests/MongoDb/BsonJsonSerializerTests.cs
  19. 13
      backend/tests/Squidex.Infrastructure.Tests/MongoDb/TypeConverterStringSerializerTests.cs
  20. 4
      backend/tests/Squidex.Infrastructure.Tests/Squidex.Infrastructure.Tests.csproj
  21. 6
      backend/tests/Squidex.Web.Tests/Services/StringLocalizerTests.cs
  22. 2
      backend/tests/Squidex.Web.Tests/Squidex.Web.Tests.csproj

24
backend/extensions/Squidex.Extensions/Actions/Kafka/KafkaProducer.cs

@ -196,15 +196,25 @@ namespace Squidex.Extensions.Actions.Kafka
return n.Value; return n.Value;
case JsonBoolean b: case JsonBoolean b:
return b.Value; return b.Value;
case JsonObject o: case JsonObject o when (schema is MapSchema map):
{ {
var recordSchema = (RecordSchema)schema; var mapResult = new Dictionary<string, object>();
var result = new GenericRecord(recordSchema); foreach (var (key, childValue) in o)
{
mapResult.Add(key, GetValue(childValue, map.ValueSchema));
}
return mapResult;
}
case JsonObject o when (schema is RecordSchema record):
{
var result = new GenericRecord(record);
foreach (var (key, childValue) in o) foreach (var (key, childValue) in o)
{ {
if (recordSchema.TryGetField(key, out var field)) if (record.TryGetField(key, out var field))
{ {
result.Add(key, GetValue(childValue, field.Schema)); result.Add(key, GetValue(childValue, field.Schema));
} }
@ -213,15 +223,13 @@ namespace Squidex.Extensions.Actions.Kafka
return result; return result;
} }
case JsonArray a: case JsonArray a when (schema is ArraySchema array):
{ {
var arraySchema = (ArraySchema)schema;
var result = new List<object>(); var result = new List<object>();
foreach (var item in a) foreach (var item in a)
{ {
result.Add(GetValue(item, arraySchema.ItemSchema)); result.Add(GetValue(item, array.ItemSchema));
} }
return result.ToArray(); return result.ToArray();

6
backend/extensions/Squidex.Extensions/Squidex.Extensions.csproj

@ -14,12 +14,12 @@
<PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.3.0" /> <PackageReference Include="Confluent.SchemaRegistry.Serdes" Version="1.3.0" />
<PackageReference Include="CoreTweet" Version="1.0.0.483" /> <PackageReference Include="CoreTweet" Version="1.0.0.483" />
<PackageReference Include="Datadog.Trace" Version="1.24.0" /> <PackageReference Include="Datadog.Trace" Version="1.24.0" />
<PackageReference Include="Elasticsearch.Net" Version="7.10.1" /> <PackageReference Include="Elasticsearch.Net" Version="7.11.1" />
<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.17.0" /> <PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.17.0" />
<PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" />
<PackageReference Include="Microsoft.OData.Core" Version="7.8.2" /> <PackageReference Include="Microsoft.OData.Core" Version="7.8.3" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
<PackageReference Include="NodaTime" Version="3.0.3" /> <PackageReference Include="NodaTime" Version="3.0.5" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" /> <PackageReference Include="System.ComponentModel.Annotations" Version="5.0.0" />

6
backend/src/Squidex.Domain.Apps.Core.Operations/Squidex.Domain.Apps.Core.Operations.csproj

@ -17,12 +17,12 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Fluid.Core.Squidex" Version="1.0.0-beta" /> <PackageReference Include="Fluid.Core.Squidex" Version="1.0.0-beta" />
<PackageReference Include="HtmlAgilityPack" Version="1.11.30" />
<PackageReference Include="GeoJSON.Net" Version="1.2.19" /> <PackageReference Include="GeoJSON.Net" Version="1.2.19" />
<PackageReference Include="HtmlAgilityPack" Version="1.11.31" />
<PackageReference Include="Markdig" Version="0.23.0" /> <PackageReference Include="Markdig" Version="0.23.0" />
<PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" />
<PackageReference Include="Microsoft.OData.Core" Version="7.8.2" /> <PackageReference Include="Microsoft.OData.Core" Version="7.8.3" />
<PackageReference Include="NJsonSchema" Version="10.3.2" /> <PackageReference Include="NJsonSchema" Version="10.3.11" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="Squidex.Jint" Version="3.0.0-beta-0" /> <PackageReference Include="Squidex.Jint" Version="3.0.0-beta-0" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />

2
backend/src/Squidex.Domain.Apps.Entities.MongoDb/Squidex.Domain.Apps.Entities.MongoDb.csproj

@ -17,7 +17,7 @@
<ProjectReference Include="..\Squidex.Domain.Apps.Entities\Squidex.Domain.Apps.Entities.csproj" /> <ProjectReference Include="..\Squidex.Domain.Apps.Entities\Squidex.Domain.Apps.Entities.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="MongoDB.Driver" Version="2.11.6" /> <PackageReference Include="MongoDB.Driver" Version="2.12.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.ValueTuple" Version="4.5.0" /> <PackageReference Include="System.ValueTuple" Version="4.5.0" />

9
backend/src/Squidex.Domain.Apps.Entities/Apps/DefaultAppLogStore.cs

@ -29,7 +29,12 @@ namespace Squidex.Domain.Apps.Entities.Apps
private const string FieldRequestMethod = "RequestMethod"; private const string FieldRequestMethod = "RequestMethod";
private const string FieldRequestPath = "RequestPath"; private const string FieldRequestPath = "RequestPath";
private const string FieldTimestamp = "Timestamp"; private const string FieldTimestamp = "Timestamp";
private readonly CsvConfiguration csvConfiguration = new CsvConfiguration(CultureInfo.InvariantCulture) { Delimiter = "|" }; private static readonly CsvConfiguration CsvConfiguration = new CsvConfiguration(CultureInfo.InvariantCulture)
{
Delimiter = "|",
LeaveOpen = true,
LineBreakInQuotedFieldIsBadData = false
};
private readonly IRequestLogStore requestLogStore; private readonly IRequestLogStore requestLogStore;
public DefaultAppLogStore(IRequestLogStore requestLogStore) public DefaultAppLogStore(IRequestLogStore requestLogStore)
@ -69,7 +74,7 @@ namespace Squidex.Domain.Apps.Entities.Apps
var writer = new StreamWriter(stream, Encoding.UTF8, 4096, true); var writer = new StreamWriter(stream, Encoding.UTF8, 4096, true);
try try
{ {
using (var csv = new CsvWriter(writer, csvConfiguration, true)) using (var csv = new CsvWriter(writer, CsvConfiguration))
{ {
csv.WriteField(FieldTimestamp); csv.WriteField(FieldTimestamp);
csv.WriteField(FieldRequestPath); csv.WriteField(FieldRequestPath);

8
backend/src/Squidex.Domain.Apps.Entities/Squidex.Domain.Apps.Entities.csproj

@ -17,8 +17,8 @@
<ProjectReference Include="..\Squidex.Shared\Squidex.Shared.csproj" /> <ProjectReference Include="..\Squidex.Shared\Squidex.Shared.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="CsvHelper" Version="19.0.0" /> <PackageReference Include="CsvHelper" Version="26.0.1" />
<PackageReference Include="Elasticsearch.Net" Version="7.10.1" /> <PackageReference Include="Elasticsearch.Net" Version="7.11.1" />
<PackageReference Include="Equals.Fody" Version="4.0.1" PrivateAssets="all" /> <PackageReference Include="Equals.Fody" Version="4.0.1" PrivateAssets="all" />
<PackageReference Include="Fody" Version="6.3.0"> <PackageReference Include="Fody" Version="6.3.0">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
@ -26,11 +26,11 @@
</PackageReference> </PackageReference>
<PackageReference Include="GraphQL" Version="3.3.2" /> <PackageReference Include="GraphQL" Version="3.3.2" />
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" />
<PackageReference Include="Microsoft.Orleans.CodeGenerator.MSBuild" Version="3.4.0"> <PackageReference Include="Microsoft.Orleans.CodeGenerator.MSBuild" Version="3.4.1">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Microsoft.Orleans.Core" Version="3.4.0" /> <PackageReference Include="Microsoft.Orleans.Core" Version="3.4.1" />
<PackageReference Include="Notifo.SDK" Version="1.0.0-beta2" /> <PackageReference Include="Notifo.SDK" Version="1.0.0-beta2" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />

2
backend/src/Squidex.Domain.Apps.Events/Squidex.Domain.Apps.Events.csproj

@ -13,7 +13,7 @@
<ProjectReference Include="..\Squidex.Infrastructure\Squidex.Infrastructure.csproj" /> <ProjectReference Include="..\Squidex.Infrastructure\Squidex.Infrastructure.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="NodaTime" Version="3.0.3" /> <PackageReference Include="NodaTime" Version="3.0.5" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.ValueTuple" Version="4.5.0" /> <PackageReference Include="System.ValueTuple" Version="4.5.0" />

2
backend/src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj

@ -20,7 +20,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="IdentityServer4" Version="4.1.1" /> <PackageReference Include="IdentityServer4" Version="4.1.1" />
<PackageReference Include="Microsoft.Win32.Registry" Version="5.0.0" /> <PackageReference Include="Microsoft.Win32.Registry" Version="5.0.0" />
<PackageReference Include="MongoDB.Driver" Version="2.11.6" /> <PackageReference Include="MongoDB.Driver" Version="2.12.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.Security.Principal.Windows" Version="5.0.0" /> <PackageReference Include="System.Security.Principal.Windows" Version="5.0.0" />

4
backend/src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj

@ -13,8 +13,8 @@
<ProjectReference Include="..\Squidex.Infrastructure\Squidex.Infrastructure.csproj" /> <ProjectReference Include="..\Squidex.Infrastructure\Squidex.Infrastructure.csproj" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="MongoDB.Driver" Version="2.11.6" /> <PackageReference Include="MongoDB.Driver" Version="2.12.0" />
<PackageReference Include="MongoDB.Driver.GridFS" Version="2.11.6" /> <PackageReference Include="MongoDB.Driver.GridFS" Version="2.12.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.Threading.Tasks.Dataflow" Version="5.0.0" /> <PackageReference Include="System.Threading.Tasks.Dataflow" Version="5.0.0" />

14
backend/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj

@ -13,20 +13,20 @@
<PackageReference Include="MailKit" Version="2.10.1" /> <PackageReference Include="MailKit" Version="2.10.1" />
<PackageReference Include="McMaster.NETCore.Plugins" Version="1.3.1" /> <PackageReference Include="McMaster.NETCore.Plugins" Version="1.3.1" />
<PackageReference Include="Microsoft.Extensions.Caching.Abstractions" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Caching.Abstractions" Version="5.0.0" />
<PackageReference Include="Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions" Version="5.0.1" /> <PackageReference Include="Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions" Version="5.0.3" />
<PackageReference Include="Microsoft.OData.Core" Version="7.8.2" /> <PackageReference Include="Microsoft.OData.Core" Version="7.8.3" />
<PackageReference Include="Microsoft.Orleans.CodeGenerator.MSBuild" Version="3.4.0"> <PackageReference Include="Microsoft.Orleans.CodeGenerator.MSBuild" Version="3.4.1">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Microsoft.Orleans.Core" Version="3.4.0" /> <PackageReference Include="Microsoft.Orleans.Core" Version="3.4.1" />
<PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="3.4.0" /> <PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="3.4.1" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
<PackageReference Include="NJsonSchema" Version="10.3.2" /> <PackageReference Include="NJsonSchema" Version="10.3.11" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="Squidex.Assets" Version="1.3.0" /> <PackageReference Include="Squidex.Assets" Version="1.3.0" />
<PackageReference Include="Squidex.Caching" Version="1.8.0" /> <PackageReference Include="Squidex.Caching" Version="1.8.0" />
<PackageReference Include="Squidex.Hosting.Abstractions" Version="1.8.0" /> <PackageReference Include="Squidex.Hosting.Abstractions" Version="1.9.0" />
<PackageReference Include="Squidex.Log" Version="1.2.0" /> <PackageReference Include="Squidex.Log" Version="1.2.0" />
<PackageReference Include="Squidex.Text" Version="1.6.0" /> <PackageReference Include="Squidex.Text" Version="1.6.0" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />

24
backend/src/Squidex/Squidex.csproj

@ -43,32 +43,32 @@
<PackageReference Include="Microsoft.AspNetCore.Authentication.Google" Version="5.0.3" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.Google" Version="5.0.3" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.MicrosoftAccount" Version="5.0.3" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.MicrosoftAccount" Version="5.0.3" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.3" /> <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.3" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="5.0.1" /> <PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="5.0.3" />
<PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="5.0.0" /> <PackageReference Include="Microsoft.Bcl.AsyncInterfaces" Version="5.0.0" />
<PackageReference Include="Microsoft.Data.Edm" Version="5.8.4" /> <PackageReference Include="Microsoft.Data.Edm" Version="5.8.4" />
<PackageReference Include="Microsoft.OData.Core" Version="7.8.2" /> <PackageReference Include="Microsoft.OData.Core" Version="7.8.3" />
<PackageReference Include="Microsoft.Orleans.Core" Version="3.4.0" /> <PackageReference Include="Microsoft.Orleans.Core" Version="3.4.1" />
<PackageReference Include="Microsoft.Orleans.Core.Abstractions" Version="3.4.0" /> <PackageReference Include="Microsoft.Orleans.Core.Abstractions" Version="3.4.1" />
<PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="3.4.0" /> <PackageReference Include="Microsoft.Orleans.OrleansRuntime" Version="3.4.1" />
<PackageReference Include="MongoDB.Driver" Version="2.11.6" /> <PackageReference Include="MongoDB.Driver" Version="2.12.0" />
<PackageReference Include="Namotion.Reflection" Version="1.0.15" /> <PackageReference Include="Namotion.Reflection" Version="1.0.18" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
<PackageReference Include="NJsonSchema" Version="10.3.2" /> <PackageReference Include="NJsonSchema" Version="10.3.11" />
<PackageReference Include="NodaTime.Serialization.JsonNet" Version="3.0.0" /> <PackageReference Include="NodaTime.Serialization.JsonNet" Version="3.0.0" />
<PackageReference Include="NSwag.AspNetCore" Version="13.9.4" /> <PackageReference Include="NSwag.AspNetCore" Version="13.10.7" />
<PackageReference Include="OpenCover" Version="4.7.922" PrivateAssets="all" /> <PackageReference Include="OpenCover" Version="4.7.922" PrivateAssets="all" />
<PackageReference Include="Orleans.Providers.MongoDB" Version="3.2.0" /> <PackageReference Include="Orleans.Providers.MongoDB" Version="3.2.0" />
<PackageReference Include="OrleansDashboard" Version="3.1.0" /> <PackageReference Include="OrleansDashboard" Version="3.1.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="ReportGenerator" Version="4.8.4" PrivateAssets="all" /> <PackageReference Include="ReportGenerator" Version="4.8.7" PrivateAssets="all" />
<PackageReference Include="Squidex.Assets.Azure" Version="1.3.0" /> <PackageReference Include="Squidex.Assets.Azure" Version="1.3.0" />
<PackageReference Include="Squidex.Assets.GoogleCloud" Version="1.3.0" /> <PackageReference Include="Squidex.Assets.GoogleCloud" Version="1.3.0" />
<PackageReference Include="Squidex.Assets.FTP" Version="1.3.0" /> <PackageReference Include="Squidex.Assets.FTP" Version="1.3.0" />
<PackageReference Include="Squidex.Assets.Mongo" Version="1.3.0" /> <PackageReference Include="Squidex.Assets.Mongo" Version="1.3.0" />
<PackageReference Include="Squidex.Assets.S3" Version="1.3.0" /> <PackageReference Include="Squidex.Assets.S3" Version="1.3.0" />
<PackageReference Include="Squidex.Caching.Orleans" Version="1.8.0" /> <PackageReference Include="Squidex.Caching.Orleans" Version="1.8.0" />
<PackageReference Include="Squidex.ClientLibrary" Version="6.12.0" /> <PackageReference Include="Squidex.ClientLibrary" Version="6.16.0" />
<PackageReference Include="Squidex.Hosting" Version="1.8.0" /> <PackageReference Include="Squidex.Hosting" Version="1.9.0" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.Linq" Version="4.3.0" /> <PackageReference Include="System.Linq" Version="4.3.0" />
<PackageReference Include="System.Runtime" Version="4.3.1" /> <PackageReference Include="System.Runtime" Version="4.3.1" />

1
backend/src/Squidex/Startup.cs

@ -76,6 +76,7 @@ namespace Squidex
{ {
app.UseCookiePolicy(); app.UseCookiePolicy();
app.UseDefaultPathBase();
app.UseDefaultForwardRules(); app.UseDefaultForwardRules();
app.UseSquidexCacheKeys(); app.UseSquidexCacheKeys();

5
backend/src/Squidex/appsettings.json

@ -12,6 +12,11 @@
*/ */
"baseUrl": "https://localhost:5001", "baseUrl": "https://localhost:5001",
/*
* The base path when running Squidex behind a reverse proxy like nginx under a subfolder / subpath.
*/
"basePath": "",
/* /*
* Set it to true to redirect the user from http to https permanently. * Set it to true to redirect the user from http to https permanently.
*/ */

2
backend/tests/RunCoverage.ps1

@ -81,6 +81,6 @@ if ($all -Or $web) {
-oldStyle -oldStyle
} }
&"$folderHome\.nuget\packages\ReportGenerator\4.8.4\tools\net47\ReportGenerator.exe" ` &"$folderHome\.nuget\packages\ReportGenerator\4.8.7\tools\net47\ReportGenerator.exe" `
-reports:"$folderWorking\$folderReports\*.xml" ` -reports:"$folderWorking\$folderReports\*.xml" `
-targetdir:"$folderWorking\$folderReports\Output" -targetdir:"$folderWorking\$folderReports\Output"

2
backend/tests/Squidex.Domain.Apps.Core.Tests/Squidex.Domain.Apps.Core.Tests.csproj

@ -16,7 +16,7 @@
<PackageReference Include="FluentAssertions" Version="5.10.3" /> <PackageReference Include="FluentAssertions" Version="5.10.3" />
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" />
<PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Http" Version="5.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
<PackageReference Include="NodaTime.Serialization.JsonNet" Version="3.0.0" /> <PackageReference Include="NodaTime.Serialization.JsonNet" Version="3.0.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />

2
backend/tests/Squidex.Domain.Apps.Entities.Tests/Squidex.Domain.Apps.Entities.Tests.csproj

@ -24,7 +24,7 @@
<PackageReference Include="Lorem.Universal.Net" Version="4.0.80" /> <PackageReference Include="Lorem.Universal.Net" Version="4.0.80" />
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" />
<PackageReference Include="Microsoft.Extensions.Options" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Options" Version="5.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
<PackageReference Include="Microsoft.Orleans.TestingHost" Version="3.4.1" /> <PackageReference Include="Microsoft.Orleans.TestingHost" Version="3.4.1" />
<PackageReference Include="NodaTime.Serialization.JsonNet" Version="3.0.0" /> <PackageReference Include="NodaTime.Serialization.JsonNet" Version="3.0.0" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />

2
backend/tests/Squidex.Domain.Users.Tests/Squidex.Domain.Users.Tests.csproj

@ -15,7 +15,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="FakeItEasy" Version="6.2.1" /> <PackageReference Include="FakeItEasy" Version="6.2.1" />
<PackageReference Include="FluentAssertions" Version="5.10.3" /> <PackageReference Include="FluentAssertions" Version="5.10.3" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="System.ValueTuple" Version="4.5.0" /> <PackageReference Include="System.ValueTuple" Version="4.5.0" />

2
backend/tests/Squidex.Infrastructure.Tests/MongoDb/BsonConverterTests.cs → backend/tests/Squidex.Infrastructure.Tests/MongoDb/BsonJsonSerializerTests.cs

@ -17,7 +17,7 @@ using Xunit;
namespace Squidex.Infrastructure.MongoDb namespace Squidex.Infrastructure.MongoDb
{ {
public class BsonConverterTests public class BsonJsonSerializerTests
{ {
public class TestObject public class TestObject
{ {

13
backend/tests/Squidex.Infrastructure.Tests/MongoDb/TypeConverterStringSerializerTests.cs

@ -5,6 +5,7 @@
// All rights reserved. Licensed under the MIT license. // All rights reserved. Licensed under the MIT license.
// ========================================================================== // ==========================================================================
using System;
using System.IO; using System.IO;
using MongoDB.Bson.IO; using MongoDB.Bson.IO;
using MongoDB.Bson.Serialization; using MongoDB.Bson.Serialization;
@ -21,16 +22,16 @@ namespace Squidex.Infrastructure.MongoDb
public TypeConverterStringSerializerTests() public TypeConverterStringSerializerTests()
{ {
TypeConverterStringSerializer<DomainId>.Register(); TypeConverterStringSerializer<TimeSpan>.Register();
TypeConverterStringSerializer<RefToken>.Register(); TypeConverterStringSerializer<RefToken>.Register();
} }
[Fact] [Fact]
public void Should_serialize_struct() public void Should_serialize_struct()
{ {
var source = new ValueHolder<DomainId> var source = new ValueHolder<TimeSpan>
{ {
Value = DomainId.NewGuid() Value = TimeSpan.Zero
}; };
var deserialized = SerializeAndDeserializeBson(source); var deserialized = SerializeAndDeserializeBson(source);
@ -41,9 +42,9 @@ namespace Squidex.Infrastructure.MongoDb
[Fact] [Fact]
public void Should_serialize_nullable_struct() public void Should_serialize_nullable_struct()
{ {
var source = new ValueHolder<DomainId?> var source = new ValueHolder<TimeSpan?>
{ {
Value = DomainId.NewGuid() Value = TimeSpan.Zero
}; };
var deserialized = SerializeAndDeserializeBson(source); var deserialized = SerializeAndDeserializeBson(source);
@ -54,7 +55,7 @@ namespace Squidex.Infrastructure.MongoDb
[Fact] [Fact]
public void Should_serialize_nullable_null_struct() public void Should_serialize_nullable_null_struct()
{ {
var source = new ValueHolder<DomainId?> var source = new ValueHolder<TimeSpan?>
{ {
Value = null Value = null
}; };

4
backend/tests/Squidex.Infrastructure.Tests/Squidex.Infrastructure.Tests.csproj

@ -17,9 +17,9 @@
<PackageReference Include="FluentAssertions" Version="5.10.3" /> <PackageReference Include="FluentAssertions" Version="5.10.3" />
<PackageReference Include="Google.Cloud.Storage.V1" Version="3.4.0" /> <PackageReference Include="Google.Cloud.Storage.V1" Version="3.4.0" />
<PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" /> <PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="5.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
<PackageReference Include="Microsoft.Orleans.TestingHost" Version="3.4.1" /> <PackageReference Include="Microsoft.Orleans.TestingHost" Version="3.4.1" />
<PackageReference Include="Microsoft.Orleans.CodeGenerator.MSBuild" Version="3.4.0"> <PackageReference Include="Microsoft.Orleans.CodeGenerator.MSBuild" Version="3.4.1">
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference> </PackageReference>

6
backend/tests/Squidex.Web.Tests/Services/StringLocalizerTests.cs

@ -29,7 +29,7 @@ namespace Squidex.Web.Services
var name = sut[key]; var name = sut[key];
Assert.Equal("The field {0} is required.", name); Assert.Equal("The field '{0}' is required.", name);
} }
[Fact] [Fact]
@ -39,7 +39,7 @@ namespace Squidex.Web.Services
var name = sut[key, "MyField"]; var name = sut[key, "MyField"];
Assert.Equal("The field MyField is required.", name); Assert.Equal("The field 'MyField' is required.", name);
} }
[Fact] [Fact]
@ -49,7 +49,7 @@ namespace Squidex.Web.Services
var name = sut[key, "ClientId"]; var name = sut[key, "ClientId"];
Assert.Equal("The field Client ID is required.", name); Assert.Equal("The field 'Client ID' is required.", name);
} }
} }
} }

2
backend/tests/Squidex.Web.Tests/Squidex.Web.Tests.csproj

@ -14,7 +14,7 @@
<PackageReference Include="FakeItEasy" Version="6.2.1" /> <PackageReference Include="FakeItEasy" Version="6.2.1" />
<PackageReference Include="IdentityServer4" Version="4.1.1" /> <PackageReference Include="IdentityServer4" Version="4.1.1" />
<PackageReference Include="IdentityServer4.AspNetIdentity" Version="4.1.1" /> <PackageReference Include="IdentityServer4.AspNetIdentity" Version="4.1.1" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.8.3" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.9.1" />
<PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" /> <PackageReference Include="RefactoringEssentials" Version="5.6.0" PrivateAssets="all" />
<PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" /> <PackageReference Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="all" />
<PackageReference Include="xunit" Version="2.4.1" /> <PackageReference Include="xunit" Version="2.4.1" />

Loading…
Cancel
Save