Skip to content

Commit 5e03e71

Browse files
committed
Add tests
1 parent a8bc68d commit 5e03e71

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

src/Ramstack.ExpressionParser/ExpressionBuilder.Helpers.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,8 @@ private static Expression ApplyBinaryExpression(Identifier op, Func<Expression,
117117
if (enumUnderlyingType is not null)
118118
{
119119
if (lhs.Type != rhs.Type)
120-
{
121120
if (lhs.Type.IsEnum ? enumUnderlyingType != rhs.Type : enumUnderlyingType != lhs.Type)
122121
Error.NonApplicableBinaryOperator(op, lhs.Type, rhs.Type);
123-
}
124122

125123
if (lhs.Type.IsEnum)
126124
lhs = Expression.Convert(lhs, enumUnderlyingType);

tests/Rmastack.ExpressionParser.Tests/Data/Errors.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,3 +84,6 @@ Ambiguous match found:\n Char Chars [Int32] (in System.String)
8484

8585
"test"["a"]
8686
Ambiguous match found:\n Char Chars [Int32] (in System.String)
87+
88+
StringSplitOptions.None | StringComparison.Ordinal
89+
Operator '|' cannot be applied to operands of type 'System.StringSplitOptions' and 'System.StringComparison'.

tests/Rmastack.ExpressionParser.Tests/Data/Expressions.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,9 @@ IIF(((10 == 10) OrElse (20 == 20)), IIF((1 > 0), 10, 20), IIF((0 < 1), 30, 40))
187187
StringSplitOptions.None & ~StringSplitOptions.RemoveEmptyEntries
188188
Convert((Convert(StringSplitOptions.None, Int32) & Convert(Convert(~(Convert(StringSplitOptions.RemoveEmptyEntries, Int32)), StringSplitOptions), Int32)), StringSplitOptions)
189189

190+
StringSplitOptions.None | StringSplitOptions.RemoveEmptyEntries
191+
Convert((Convert(StringSplitOptions.None, Int32) | Convert(StringSplitOptions.RemoveEmptyEntries, Int32)), StringSplitOptions)
192+
190193
~StringSplitOptions.RemoveEmptyEntries
191194
Convert(~(Convert(StringSplitOptions.RemoveEmptyEntries, Int32)), StringSplitOptions)
192195

0 commit comments

Comments
 (0)