@@ -709,6 +709,53 @@ await SetupAndRunRestApiTest(
709709 ) ;
710710 }
711711
712+ /// <summary>
713+ /// Tests the REST Api for Find operation with filters containing various special characters
714+ /// that need URL encoding: plus (+), equals (=), and percent (%).
715+ /// Validates that multiple types of special characters are handled correctly.
716+ /// </summary>
717+ [ TestMethod ]
718+ public async Task FindTestWithFilterContainingMultipleSpecialCharacters ( )
719+ {
720+ // Test with plus and equals signs
721+ await SetupAndRunRestApiTest (
722+ primaryKeyRoute : string . Empty ,
723+ queryString : "?$filter=title eq 'A+B=C'" ,
724+ entityNameOrPath : _integrationEntityName ,
725+ sqlQuery : GetQuery ( nameof ( FindTestWithFilterContainingMultipleSpecialCharacters ) )
726+ ) ;
727+ }
728+
729+ /// <summary>
730+ /// Tests the REST Api for Find operation with a filter containing ampersand
731+ /// in a different context to ensure robustness across various data patterns.
732+ /// </summary>
733+ [ TestMethod ]
734+ public async Task FindTestWithFilterContainingAmpersandInPhrase ( )
735+ {
736+ await SetupAndRunRestApiTest (
737+ primaryKeyRoute : string . Empty ,
738+ queryString : "?$filter=title eq 'Tom & Jerry'" ,
739+ entityNameOrPath : _integrationEntityName ,
740+ sqlQuery : GetQuery ( nameof ( FindTestWithFilterContainingAmpersandInPhrase ) )
741+ ) ;
742+ }
743+
744+ /// <summary>
745+ /// Tests the REST Api for Find operation with a filter containing percent sign (%)
746+ /// which has special meaning in URL encoding and SQL LIKE patterns.
747+ /// </summary>
748+ [ TestMethod ]
749+ public async Task FindTestWithFilterContainingPercentSign ( )
750+ {
751+ await SetupAndRunRestApiTest (
752+ primaryKeyRoute : string . Empty ,
753+ queryString : "?$filter=title eq '100% Complete'" ,
754+ entityNameOrPath : _integrationEntityName ,
755+ sqlQuery : GetQuery ( nameof ( FindTestWithFilterContainingPercentSign ) )
756+ ) ;
757+ }
758+
712759 /// <summary>
713760 /// Tests the REST Api for Find operation where we compare one field
714761 /// to the bool returned from another comparison.
0 commit comments