diff --git a/test/System.Linq.Dynamic.Core.Tests/Helpers/Models/AppSettings.cs b/test/System.Linq.Dynamic.Core.Tests/Helpers/Models/AppSettings.cs index 260ffef2..3c6b96c5 100644 --- a/test/System.Linq.Dynamic.Core.Tests/Helpers/Models/AppSettings.cs +++ b/test/System.Linq.Dynamic.Core.Tests/Helpers/Models/AppSettings.cs @@ -14,6 +14,8 @@ public static class AppSettings { { "jwt", "test" } }; + + public const string ConstantField = "test"; } [DynamicLinqType] @@ -28,6 +30,8 @@ public static class AppSettings2 { { "jwt", "test" } }; + + public const string ConstantField = "test"; } public class AppSettings3 @@ -41,5 +45,7 @@ public class AppSettings3 { { "jwt", "test" } }; + + public const string ConstantField = "test"; } } \ No newline at end of file diff --git a/test/System.Linq.Dynamic.Core.Tests/SecurityTests.cs b/test/System.Linq.Dynamic.Core.Tests/SecurityTests.cs index 787124e3..53fd16c2 100644 --- a/test/System.Linq.Dynamic.Core.Tests/SecurityTests.cs +++ b/test/System.Linq.Dynamic.Core.Tests/SecurityTests.cs @@ -85,8 +85,10 @@ public void UsingSystemReflectionAssembly_ThrowsException(string selector) [Theory] [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsProp[\"jwt\"]")] [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsField[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.ConstantField")] [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsProp[\"jwt\"]")] [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsField[\"jwt\"]")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.ConstantField")] public void UsingStaticClassAsType_ThrowsException(string selector) { // Arrange @@ -103,10 +105,12 @@ public void UsingStaticClassAsType_ThrowsException(string selector) } [Theory] - [InlineData("new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3().SettingsProp[\"jwt\"]")] - [InlineData("new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3().SettingsField[\"jwt\"]")] - [InlineData("c => new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3().SettingsProp[\"jwt\"]")] - [InlineData("c => new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3().SettingsField[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsProp[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsField[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.ConstantField")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsProp[\"jwt\"]")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsField[\"jwt\"]")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.ConstantField")] public void UsingClassAsType_ThrowsException(string selector) { // Arrange @@ -125,8 +129,10 @@ public void UsingClassAsType_ThrowsException(string selector) [Theory] [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsProp[\"jwt\"]")] [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsField[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.ConstantField")] [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsProp[\"jwt\"]")] [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.SettingsField[\"jwt\"]")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings.ConstantField")] public void UsingStaticClassAsType_WhenAddedToDefaultDynamicLinqCustomTypeProvider_ShouldBeOk(string selector) { // Arrange @@ -146,11 +152,13 @@ public void UsingStaticClassAsType_WhenAddedToDefaultDynamicLinqCustomTypeProvid } [Theory] - [InlineData("new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3()", "SettingsProp[\"jwt\"]")] - [InlineData("new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3()", "SettingsField[\"jwt\"]")] - [InlineData("c => new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3()", "SettingsProp[\"jwt\"]")] - [InlineData("c => new System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3()", "SettingsField[\"jwt\"]")] - public void UsingClassAsType_WhenAddedToDefaultDynamicLinqCustomTypeProvider_ShouldBeOk(string selector1, string selector2) + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsProp[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsField[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.ConstantField")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsProp[\"jwt\"]")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.SettingsField[\"jwt\"]")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings3.ConstantField")] + public void UsingClassAsType_WhenAddedToDefaultDynamicLinqCustomTypeProvider_ShouldBeOk(string selector) { // Arrange var config = new ParsingConfig(); @@ -162,7 +170,7 @@ public void UsingClassAsType_WhenAddedToDefaultDynamicLinqCustomTypeProvider_Sho }.AsQueryable(); // Act - Action action = () => queryable.Select(config, selector1).Select(config, selector2); + Action action = () => queryable.Select(config, selector); // Assert action.Should().NotThrow(); @@ -171,8 +179,10 @@ public void UsingClassAsType_WhenAddedToDefaultDynamicLinqCustomTypeProvider_Sho [Theory] [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings2.SettingsProp[\"jwt\"]")] [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings2.SettingsField[\"jwt\"]")] + [InlineData("System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings2.ConstantField")] [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings2.SettingsProp[\"jwt\"]")] [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings2.SettingsField[\"jwt\"]")] + [InlineData("c => System.Linq.Dynamic.Core.Tests.Helpers.Models.AppSettings2.ConstantField")] public void UsingStaticClassWithDynamicTypeAttribute_ShouldBeOk(string selector) { // Arrange