diff --git a/Squidex.ruleset b/Squidex.ruleset
index fa277a017..a90cb38ec 100644
--- a/Squidex.ruleset
+++ b/Squidex.ruleset
@@ -37,7 +37,7 @@
-
+
@@ -61,4 +61,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentDataObject.cs b/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentDataObject.cs
index fe721deda..8ceadc1ba 100644
--- a/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentDataObject.cs
+++ b/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentDataObject.cs
@@ -14,6 +14,8 @@ using Jint.Runtime.Descriptors;
using Squidex.Domain.Apps.Core.Contents;
using Squidex.Infrastructure;
+#pragma warning disable RECS0133 // Parameter name differs in base declaration
+
namespace Squidex.Domain.Apps.Core.Scripting.ContentWrapper
{
public sealed class ContentDataObject : ObjectInstance
diff --git a/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentFieldObject.cs b/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentFieldObject.cs
index 56ea485f1..8dc8e322e 100644
--- a/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentFieldObject.cs
+++ b/src/Squidex.Domain.Apps.Core/Scripting/ContentWrapper/ContentFieldObject.cs
@@ -12,6 +12,8 @@ using Jint.Runtime.Descriptors;
using Squidex.Domain.Apps.Core.Contents;
using Squidex.Infrastructure;
+#pragma warning disable RECS0133 // Parameter name differs in base declaration
+
namespace Squidex.Domain.Apps.Core.Scripting.ContentWrapper
{
public sealed class ContentFieldObject : ObjectInstance
diff --git a/src/Squidex.Domain.Apps.Core/Squidex.Domain.Apps.Core.csproj b/src/Squidex.Domain.Apps.Core/Squidex.Domain.Apps.Core.csproj
index 136277ccf..6d18bc693 100644
--- a/src/Squidex.Domain.Apps.Core/Squidex.Domain.Apps.Core.csproj
+++ b/src/Squidex.Domain.Apps.Core/Squidex.Domain.Apps.Core.csproj
@@ -15,6 +15,7 @@
+
diff --git a/src/Squidex.Domain.Apps.Events/Squidex.Domain.Apps.Events.csproj b/src/Squidex.Domain.Apps.Events/Squidex.Domain.Apps.Events.csproj
index c9f538485..2b809030a 100644
--- a/src/Squidex.Domain.Apps.Events/Squidex.Domain.Apps.Events.csproj
+++ b/src/Squidex.Domain.Apps.Events/Squidex.Domain.Apps.Events.csproj
@@ -12,6 +12,7 @@
+
diff --git a/src/Squidex.Domain.Apps.Read.MongoDb/Squidex.Domain.Apps.Read.MongoDb.csproj b/src/Squidex.Domain.Apps.Read.MongoDb/Squidex.Domain.Apps.Read.MongoDb.csproj
index 8965edb25..b32facd0e 100644
--- a/src/Squidex.Domain.Apps.Read.MongoDb/Squidex.Domain.Apps.Read.MongoDb.csproj
+++ b/src/Squidex.Domain.Apps.Read.MongoDb/Squidex.Domain.Apps.Read.MongoDb.csproj
@@ -16,6 +16,7 @@
+
diff --git a/src/Squidex.Domain.Apps.Read.MongoDb/Utils/MongoCollectionExtensions.cs b/src/Squidex.Domain.Apps.Read.MongoDb/Utils/MongoCollectionExtensions.cs
index 13a644771..f03af6867 100644
--- a/src/Squidex.Domain.Apps.Read.MongoDb/Utils/MongoCollectionExtensions.cs
+++ b/src/Squidex.Domain.Apps.Read.MongoDb/Utils/MongoCollectionExtensions.cs
@@ -18,7 +18,7 @@ namespace Squidex.Domain.Apps.Read.MongoDb.Utils
{
public static class MongoCollectionExtensions
{
- public static Task CreateAsync(this IMongoCollection collection, SquidexEvent @event, EnvelopeHeaders headers, Action updater) where T : IMongoEntity, new()
+ public static Task CreateAsync(this IMongoCollection collection, SquidexEvent @event, EnvelopeHeaders headers, Action updater) where T : class, IMongoEntity, new()
{
var entity = EntityMapper.Create(@event, headers);
@@ -27,7 +27,7 @@ namespace Squidex.Domain.Apps.Read.MongoDb.Utils
return collection.InsertOneIfNotExistsAsync(entity);
}
- public static async Task CreateAsync(this IMongoCollection collection, SquidexEvent @event, EnvelopeHeaders headers, Func updater) where T : IMongoEntity, new()
+ public static async Task CreateAsync(this IMongoCollection collection, SquidexEvent @event, EnvelopeHeaders headers, Func updater) where T : class, IMongoEntity, new()
{
var entity = EntityMapper.Create(@event, headers);
@@ -36,7 +36,7 @@ namespace Squidex.Domain.Apps.Read.MongoDb.Utils
await collection.InsertOneIfNotExistsAsync(entity);
}
- public static async Task UpdateAsync(this IMongoCollection collection, SquidexEvent @event, EnvelopeHeaders headers, Action updater) where T : IMongoEntity, new()
+ public static async Task UpdateAsync(this IMongoCollection collection, SquidexEvent @event, EnvelopeHeaders headers, Action updater) where T : class, IMongoEntity, new()
{
var entity = await collection.Find(t => t.Id == headers.AggregateId()).FirstOrDefaultAsync();
diff --git a/src/Squidex.Domain.Apps.Read/Contents/Edm/EdmModelExtensions.cs b/src/Squidex.Domain.Apps.Read/Contents/Edm/EdmModelExtensions.cs
index c3dfe029e..7da78c5be 100644
--- a/src/Squidex.Domain.Apps.Read/Contents/Edm/EdmModelExtensions.cs
+++ b/src/Squidex.Domain.Apps.Read/Contents/Edm/EdmModelExtensions.cs
@@ -26,7 +26,7 @@ namespace Squidex.Domain.Apps.Read.Contents.Edm
var path = model.EntityContainer.EntitySets().First().Path.Path.Split('.').Last();
- if (query.StartsWith("?"))
+ if (query.StartsWith("?", StringComparison.Ordinal))
{
query = query.Substring(1);
}
diff --git a/src/Squidex.Domain.Apps.Read/Squidex.Domain.Apps.Read.csproj b/src/Squidex.Domain.Apps.Read/Squidex.Domain.Apps.Read.csproj
index 39e43ef61..18200eb29 100644
--- a/src/Squidex.Domain.Apps.Read/Squidex.Domain.Apps.Read.csproj
+++ b/src/Squidex.Domain.Apps.Read/Squidex.Domain.Apps.Read.csproj
@@ -15,6 +15,7 @@
+
diff --git a/src/Squidex.Domain.Apps.Read/Webhooks/WebhookEnqueuer.cs b/src/Squidex.Domain.Apps.Read/Webhooks/WebhookEnqueuer.cs
index 92d055959..879d1e595 100644
--- a/src/Squidex.Domain.Apps.Read/Webhooks/WebhookEnqueuer.cs
+++ b/src/Squidex.Domain.Apps.Read/Webhooks/WebhookEnqueuer.cs
@@ -134,7 +134,7 @@ namespace Squidex.Domain.Apps.Read.Webhooks
private static string CreateContentEventName(string eventType)
{
- return eventType.StartsWith(ContentPrefix) ? eventType.Substring(ContentPrefix.Length) : eventType;
+ return eventType.StartsWith(ContentPrefix, StringComparison.Ordinal) ? eventType.Substring(ContentPrefix.Length) : eventType;
}
}
}
diff --git a/src/Squidex.Domain.Apps.Write/Squidex.Domain.Apps.Write.csproj b/src/Squidex.Domain.Apps.Write/Squidex.Domain.Apps.Write.csproj
index 296404121..79f4eaf26 100644
--- a/src/Squidex.Domain.Apps.Write/Squidex.Domain.Apps.Write.csproj
+++ b/src/Squidex.Domain.Apps.Write/Squidex.Domain.Apps.Write.csproj
@@ -15,6 +15,7 @@
+
diff --git a/src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj b/src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj
index 495b45121..7f9ebe67f 100644
--- a/src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj
+++ b/src/Squidex.Domain.Users.MongoDb/Squidex.Domain.Users.MongoDb.csproj
@@ -17,6 +17,7 @@
+
diff --git a/src/Squidex.Domain.Users/Squidex.Domain.Users.csproj b/src/Squidex.Domain.Users/Squidex.Domain.Users.csproj
index dca590086..e0d2ec803 100644
--- a/src/Squidex.Domain.Users/Squidex.Domain.Users.csproj
+++ b/src/Squidex.Domain.Users/Squidex.Domain.Users.csproj
@@ -13,6 +13,7 @@
+
diff --git a/src/Squidex.Infrastructure.Azure/Squidex.Infrastructure.Azure.csproj b/src/Squidex.Infrastructure.Azure/Squidex.Infrastructure.Azure.csproj
index 64578d240..206b21426 100644
--- a/src/Squidex.Infrastructure.Azure/Squidex.Infrastructure.Azure.csproj
+++ b/src/Squidex.Infrastructure.Azure/Squidex.Infrastructure.Azure.csproj
@@ -4,6 +4,7 @@
Squidex.Infrastructure
+
diff --git a/src/Squidex.Infrastructure.GetEventStore/Squidex.Infrastructure.GetEventStore.csproj b/src/Squidex.Infrastructure.GetEventStore/Squidex.Infrastructure.GetEventStore.csproj
index ff39e7c0f..a3687426d 100644
--- a/src/Squidex.Infrastructure.GetEventStore/Squidex.Infrastructure.GetEventStore.csproj
+++ b/src/Squidex.Infrastructure.GetEventStore/Squidex.Infrastructure.GetEventStore.csproj
@@ -9,6 +9,7 @@
+
diff --git a/src/Squidex.Infrastructure.GoogleCloud/Squidex.Infrastructure.GoogleCloud.csproj b/src/Squidex.Infrastructure.GoogleCloud/Squidex.Infrastructure.GoogleCloud.csproj
index 97b29e8a3..51ff2ad54 100644
--- a/src/Squidex.Infrastructure.GoogleCloud/Squidex.Infrastructure.GoogleCloud.csproj
+++ b/src/Squidex.Infrastructure.GoogleCloud/Squidex.Infrastructure.GoogleCloud.csproj
@@ -9,6 +9,7 @@
+
diff --git a/src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj b/src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj
index 0be75ee3e..babdf9e18 100644
--- a/src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj
+++ b/src/Squidex.Infrastructure.MongoDb/Squidex.Infrastructure.MongoDb.csproj
@@ -12,6 +12,7 @@
+
diff --git a/src/Squidex.Infrastructure.RabbitMq/Squidex.Infrastructure.RabbitMq.csproj b/src/Squidex.Infrastructure.RabbitMq/Squidex.Infrastructure.RabbitMq.csproj
index 0bfe8f4ce..9a9ae3306 100644
--- a/src/Squidex.Infrastructure.RabbitMq/Squidex.Infrastructure.RabbitMq.csproj
+++ b/src/Squidex.Infrastructure.RabbitMq/Squidex.Infrastructure.RabbitMq.csproj
@@ -9,6 +9,7 @@
+
diff --git a/src/Squidex.Infrastructure.Redis/Squidex.Infrastructure.Redis.csproj b/src/Squidex.Infrastructure.Redis/Squidex.Infrastructure.Redis.csproj
index 2455a50b5..5790bb386 100644
--- a/src/Squidex.Infrastructure.Redis/Squidex.Infrastructure.Redis.csproj
+++ b/src/Squidex.Infrastructure.Redis/Squidex.Infrastructure.Redis.csproj
@@ -11,6 +11,7 @@
+
diff --git a/src/Squidex.Infrastructure/CQRS/Events/DefaultStreamNameResolver.cs b/src/Squidex.Infrastructure/CQRS/Events/DefaultStreamNameResolver.cs
index c5870445d..19820a19a 100644
--- a/src/Squidex.Infrastructure/CQRS/Events/DefaultStreamNameResolver.cs
+++ b/src/Squidex.Infrastructure/CQRS/Events/DefaultStreamNameResolver.cs
@@ -18,7 +18,7 @@ namespace Squidex.Infrastructure.CQRS.Events
{
var typeName = char.ToLower(aggregateType.Name[0]) + aggregateType.Name.Substring(1);
- if (typeName.EndsWith(Suffix))
+ if (typeName.EndsWith(Suffix, StringComparison.Ordinal))
{
typeName = typeName.Substring(0, typeName.Length - Suffix.Length);
}
diff --git a/src/Squidex.Infrastructure/CollectionExtensions.cs b/src/Squidex.Infrastructure/CollectionExtensions.cs
index 6aff6af5f..845f523bb 100644
--- a/src/Squidex.Infrastructure/CollectionExtensions.cs
+++ b/src/Squidex.Infrastructure/CollectionExtensions.cs
@@ -25,7 +25,7 @@ namespace Squidex.Infrastructure
foreach (var item in collection)
{
- if (item != null)
+ if (!Equals(item, null))
{
hashCode = (hashCode * 23) + comparer.GetHashCode(item);
}
@@ -43,7 +43,7 @@ namespace Squidex.Infrastructure
{
Guard.NotNull(comparer, nameof(comparer));
- var hashCodes = collection.Where(x => x != null).Select(x => x.GetHashCode()).OrderBy(x => x).ToArray();
+ var hashCodes = collection.Where(x => !Equals(x, null)).Select(x => x.GetHashCode()).OrderBy(x => x).ToArray();
var hashCode = 17;
@@ -68,7 +68,7 @@ namespace Squidex.Infrastructure
{
hashCode = (hashCode * 23) + keyComparer.GetHashCode(kvp.Key);
- if (kvp.Value != null)
+ if (!Equals(kvp.Value, null))
{
hashCode = (hashCode * 23) + valueComparer.GetHashCode(kvp.Value);
}
diff --git a/src/Squidex.Infrastructure/Reflection/SimpleMapper.cs b/src/Squidex.Infrastructure/Reflection/SimpleMapper.cs
index 75e49a4fd..065e3e26d 100644
--- a/src/Squidex.Infrastructure/Reflection/SimpleMapper.cs
+++ b/src/Squidex.Infrastructure/Reflection/SimpleMapper.cs
@@ -11,6 +11,8 @@ using System.Collections.Generic;
using System.Globalization;
using System.Linq;
+#pragma warning disable RECS0108 // Warns about static fields in generic types
+
namespace Squidex.Infrastructure.Reflection
{
public static class SimpleMapper
@@ -25,7 +27,7 @@ namespace Squidex.Infrastructure.Reflection
this.targetType = targetType;
}
- public override void Map(object source, object destination, CultureInfo culture)
+ public override void MapProperty(object source, object destination, CultureInfo culture)
{
var value = GetValue(source);
@@ -64,7 +66,7 @@ namespace Squidex.Infrastructure.Reflection
this.dstAccessor = dstAccessor;
}
- public virtual void Map(object source, object destination, CultureInfo culture)
+ public virtual void MapProperty(object source, object destination, CultureInfo culture)
{
var value = GetValue(source);
@@ -139,11 +141,11 @@ namespace Squidex.Infrastructure.Reflection
Mappers = newMappers.ToArray();
}
- public static TDestination Map(TSource source, TDestination destination, CultureInfo culture)
+ public static TDestination MapClass(TSource source, TDestination destination, CultureInfo culture)
{
foreach (var mapper in Mappers)
{
- mapper.Map(source, destination, culture);
+ mapper.MapProperty(source, destination, culture);
}
return destination;
@@ -172,7 +174,7 @@ namespace Squidex.Infrastructure.Reflection
Guard.NotNull(culture, nameof(culture));
Guard.NotNull(destination, nameof(destination));
- return ClassMapper.Map(source, destination, culture);
+ return ClassMapper.MapClass(source, destination, culture);
}
}
}
diff --git a/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj b/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
index 4552a56c0..7d70aed5d 100644
--- a/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
+++ b/src/Squidex.Infrastructure/Squidex.Infrastructure.csproj
@@ -13,6 +13,7 @@
+
diff --git a/src/Squidex.Infrastructure/ValidationExtensions.cs b/src/Squidex.Infrastructure/ValidationExtensions.cs
index a43ab2df6..1a30f9cb8 100644
--- a/src/Squidex.Infrastructure/ValidationExtensions.cs
+++ b/src/Squidex.Infrastructure/ValidationExtensions.cs
@@ -11,6 +11,8 @@ using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
+#pragma warning disable RECS0026 // Possible unassigned object created by 'new'
+
namespace Squidex.Infrastructure
{
public static class ValidationExtensions
diff --git a/src/Squidex.Shared/Squidex.Shared.csproj b/src/Squidex.Shared/Squidex.Shared.csproj
index 408b0946c..30976c0d8 100644
--- a/src/Squidex.Shared/Squidex.Shared.csproj
+++ b/src/Squidex.Shared/Squidex.Shared.csproj
@@ -7,6 +7,7 @@
True
+
diff --git a/src/Squidex/Config/Identity/GoogleHandler.cs b/src/Squidex/Config/Identity/GoogleHandler.cs
index b3688ecde..6c311dc34 100644
--- a/src/Squidex/Config/Identity/GoogleHandler.cs
+++ b/src/Squidex/Config/Identity/GoogleHandler.cs
@@ -38,7 +38,7 @@ namespace Squidex.Config.Identity
{
pictureUrl = context.User?["image"]?.Value("url");
- if (pictureUrl != null && pictureUrl.EndsWith("?sz=50"))
+ if (pictureUrl != null && pictureUrl.EndsWith("?sz=50", System.StringComparison.Ordinal))
{
pictureUrl = pictureUrl.Substring(0, pictureUrl.Length - 6);
}
diff --git a/src/Squidex/Controllers/UI/Account/AccountController.cs b/src/Squidex/Controllers/UI/Account/AccountController.cs
index e84a954f3..8f8b8856e 100644
--- a/src/Squidex/Controllers/UI/Account/AccountController.cs
+++ b/src/Squidex/Controllers/UI/Account/AccountController.cs
@@ -193,7 +193,7 @@ namespace Squidex.Controllers.UI.Account
[HttpGet]
[Route("account/external-callback/")]
- public async Task ExternalCallback(string returnUrl = null, string remoteError = null)
+ public async Task ExternalCallback(string returnUrl = null)
{
var externalLogin = await signInManager.GetExternalLoginInfoWithDisplayNameAsync();
@@ -308,7 +308,7 @@ namespace Squidex.Controllers.UI.Account
user.SetClaim(SquidexClaimTypes.SquidexDisplayName, email);
}
- foreach (var squidexClaim in externalLogin.Principal.Claims.Where(c => c.Type.StartsWith(SquidexClaimTypes.Prefix)))
+ foreach (var squidexClaim in externalLogin.Principal.Claims.Where(c => c.Type.StartsWith(SquidexClaimTypes.Prefix, StringComparison.Ordinal)))
{
user.AddClaim(squidexClaim);
}
diff --git a/src/Squidex/Squidex.csproj b/src/Squidex/Squidex.csproj
index 0f17c1bd5..1c427c432 100644
--- a/src/Squidex/Squidex.csproj
+++ b/src/Squidex/Squidex.csproj
@@ -77,6 +77,7 @@
+
diff --git a/tests/Benchmarks/Benchmarks.csproj b/tests/Benchmarks/Benchmarks.csproj
index 93ea623c2..3e0aab20a 100644
--- a/tests/Benchmarks/Benchmarks.csproj
+++ b/tests/Benchmarks/Benchmarks.csproj
@@ -9,6 +9,7 @@
+
diff --git a/tests/Squidex.Domain.Apps.Core.Tests/Squidex.Domain.Apps.Core.Tests.csproj b/tests/Squidex.Domain.Apps.Core.Tests/Squidex.Domain.Apps.Core.Tests.csproj
index 56b36b28a..fbfbec33b 100644
--- a/tests/Squidex.Domain.Apps.Core.Tests/Squidex.Domain.Apps.Core.Tests.csproj
+++ b/tests/Squidex.Domain.Apps.Core.Tests/Squidex.Domain.Apps.Core.Tests.csproj
@@ -12,6 +12,7 @@
+
diff --git a/tests/Squidex.Domain.Apps.Read.Tests/Squidex.Domain.Apps.Read.Tests.csproj b/tests/Squidex.Domain.Apps.Read.Tests/Squidex.Domain.Apps.Read.Tests.csproj
index 7e0923252..a9f8e20aa 100644
--- a/tests/Squidex.Domain.Apps.Read.Tests/Squidex.Domain.Apps.Read.Tests.csproj
+++ b/tests/Squidex.Domain.Apps.Read.Tests/Squidex.Domain.Apps.Read.Tests.csproj
@@ -21,6 +21,7 @@
+
diff --git a/tests/Squidex.Domain.Apps.Read.Tests/Webhooks/WebhookDequeuerTests.cs b/tests/Squidex.Domain.Apps.Read.Tests/Webhooks/WebhookDequeuerTests.cs
index 21448f6dc..d860bf55a 100644
--- a/tests/Squidex.Domain.Apps.Read.Tests/Webhooks/WebhookDequeuerTests.cs
+++ b/tests/Squidex.Domain.Apps.Read.Tests/Webhooks/WebhookDequeuerTests.cs
@@ -15,6 +15,8 @@ using Squidex.Domain.Apps.Read.Webhooks.Repositories;
using Squidex.Infrastructure.Log;
using Xunit;
+#pragma warning disable RECS0165 // Asynchronous methods should return a Task instead of void
+
namespace Squidex.Domain.Apps.Read.Webhooks
{
public class WebhookDequeuerTests
diff --git a/tests/Squidex.Domain.Apps.Write.Tests/Squidex.Domain.Apps.Write.Tests.csproj b/tests/Squidex.Domain.Apps.Write.Tests/Squidex.Domain.Apps.Write.Tests.csproj
index 023665539..7558a2c52 100644
--- a/tests/Squidex.Domain.Apps.Write.Tests/Squidex.Domain.Apps.Write.Tests.csproj
+++ b/tests/Squidex.Domain.Apps.Write.Tests/Squidex.Domain.Apps.Write.Tests.csproj
@@ -13,6 +13,7 @@
+
diff --git a/tests/Squidex.Domain.Users.Tests/AssetUserPictureStoreTests.cs b/tests/Squidex.Domain.Users.Tests/AssetUserPictureStoreTests.cs
index 5ab20d03a..6c959cff7 100644
--- a/tests/Squidex.Domain.Users.Tests/AssetUserPictureStoreTests.cs
+++ b/tests/Squidex.Domain.Users.Tests/AssetUserPictureStoreTests.cs
@@ -14,6 +14,8 @@ using Squidex.Infrastructure.Assets;
using Squidex.Infrastructure.Tasks;
using Xunit;
+#pragma warning disable RECS0165 // Asynchronous methods should return a Task instead of void
+
namespace Squidex.Domain.Users
{
public class AssetUserPictureStoreTests
diff --git a/tests/Squidex.Domain.Users.Tests/Squidex.Domain.Users.Tests.csproj b/tests/Squidex.Domain.Users.Tests/Squidex.Domain.Users.Tests.csproj
index 02a3fc2cc..fa86b62b1 100644
--- a/tests/Squidex.Domain.Users.Tests/Squidex.Domain.Users.Tests.csproj
+++ b/tests/Squidex.Domain.Users.Tests/Squidex.Domain.Users.Tests.csproj
@@ -14,6 +14,7 @@
+
diff --git a/tests/Squidex.Infrastructure.Tests/Assets/AssetStoreTests.cs b/tests/Squidex.Infrastructure.Tests/Assets/AssetStoreTests.cs
index d39695aa4..bf6c35b64 100644
--- a/tests/Squidex.Infrastructure.Tests/Assets/AssetStoreTests.cs
+++ b/tests/Squidex.Infrastructure.Tests/Assets/AssetStoreTests.cs
@@ -15,16 +15,16 @@ namespace Squidex.Infrastructure.Assets
{
public abstract class AssetStoreTests : IDisposable where T : IAssetStore
{
- private readonly T sut;
+ private readonly Lazy sut;
protected AssetStoreTests()
{
- sut = CreateStore();
+ sut = new Lazy(CreateStore);
}
protected T Sut
{
- get { return sut; }
+ get { return sut.Value; }
}
public abstract T CreateStore();
diff --git a/tests/Squidex.Infrastructure.Tests/Log/SemanticLogTests.cs b/tests/Squidex.Infrastructure.Tests/Log/SemanticLogTests.cs
index b6ddf9df1..2f7ae0128 100644
--- a/tests/Squidex.Infrastructure.Tests/Log/SemanticLogTests.cs
+++ b/tests/Squidex.Infrastructure.Tests/Log/SemanticLogTests.cs
@@ -240,7 +240,7 @@ namespace Squidex.Infrastructure.Log
.WriteProperty("message", "My Message")
.WriteProperty("elapsedMs", 0));
- Assert.True(output.StartsWith(expected.Substring(0, 55)));
+ Assert.True(output.StartsWith(expected.Substring(0, 55), StringComparison.Ordinal));
}
[Fact]
@@ -254,7 +254,7 @@ namespace Squidex.Infrastructure.Log
.WriteProperty("message", "My Message")
.WriteProperty("elapsedMs", 0));
- Assert.True(output.StartsWith(expected.Substring(0, 55)));
+ Assert.True(output.StartsWith(expected.Substring(0, 55), StringComparison.Ordinal));
}
[Fact]
@@ -268,7 +268,7 @@ namespace Squidex.Infrastructure.Log
.WriteProperty("message", "My Message")
.WriteProperty("elapsedMs", 0));
- Assert.True(output.StartsWith(expected.Substring(0, 55)));
+ Assert.True(output.StartsWith(expected.Substring(0, 55), StringComparison.Ordinal));
}
[Fact]
diff --git a/tests/Squidex.Infrastructure.Tests/Squidex.Infrastructure.Tests.csproj b/tests/Squidex.Infrastructure.Tests/Squidex.Infrastructure.Tests.csproj
index 97cf8a852..0035b5ed9 100644
--- a/tests/Squidex.Infrastructure.Tests/Squidex.Infrastructure.Tests.csproj
+++ b/tests/Squidex.Infrastructure.Tests/Squidex.Infrastructure.Tests.csproj
@@ -16,6 +16,7 @@
+
diff --git a/tools/Migrate_01/Migrate_01.csproj b/tools/Migrate_01/Migrate_01.csproj
index a512174cc..b753938fd 100644
--- a/tools/Migrate_01/Migrate_01.csproj
+++ b/tools/Migrate_01/Migrate_01.csproj
@@ -5,6 +5,7 @@
+