From cd0309a3d4dddab9e6d5f5b8555284d30b3f0edd Mon Sep 17 00:00:00 2001 From: Maksym Sadovnychyy Date: Sun, 5 Jan 2025 15:15:48 +0100 Subject: [PATCH] (refactor): linq predicate test improvement --- .../Webapi/Models/PagedRequestTests.cs | 14 ++++++++++++++ src/MaksIT.Core/MaksIT.Core.csproj | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/MaksIT.Core.Tests/Webapi/Models/PagedRequestTests.cs b/src/MaksIT.Core.Tests/Webapi/Models/PagedRequestTests.cs index 20f11b3..d4356af 100644 --- a/src/MaksIT.Core.Tests/Webapi/Models/PagedRequestTests.cs +++ b/src/MaksIT.Core.Tests/Webapi/Models/PagedRequestTests.cs @@ -144,6 +144,20 @@ public class PagedRequestTests { Assert.Single(filtered); // Assuming only "John" starts with "Jo" } + [Fact] + public void BuildFilterExpression_ShouldHandleEqualsAndContainsOperators() { + var queryable = GetTestQueryable(); + var request = new PagedRequest { + Filters = "Age == \"31\" && (Name.Contains(\"Jo\"))" + }; + + var predicate = request.BuildFilterExpression(); + var filtered = queryable.Where(predicate).ToList(); + + Assert.Contains(filtered, t => t.Name.StartsWith("Jo")); + Assert.Single(filtered); // Assuming only "John" starts with "Jo" + } + [Fact] public void BuildFilterExpression_ShouldHandleEndsWithOperator() { var queryable = GetTestQueryable(); diff --git a/src/MaksIT.Core/MaksIT.Core.csproj b/src/MaksIT.Core/MaksIT.Core.csproj index f1eb383..194cd94 100644 --- a/src/MaksIT.Core/MaksIT.Core.csproj +++ b/src/MaksIT.Core/MaksIT.Core.csproj @@ -8,7 +8,7 @@ MaksIT.Core - 1.3.2 + 1.3.3 Maksym Sadovnychyy MAKS-IT MaksIT.Core