Browse Source

Cover dynamic bitwise and shift binary operators

The pretty DynamicTests exercised arithmetic and relational binary operators on
dynamic operands, but never the bitwise and shift operators (& | ^ << >>). Add a
BitwiseAndShiftBinaryOperators case so this operator family is pinned by a
round-trip test alongside the others.

Assisted-by: Claude:claude-opus-4-8:Claude Code
pull/3834/head
Christoph Wille 2 weeks ago committed by Siegfried Pammer
parent
commit
5d7d5dd5e5
  1. 17
      ICSharpCode.Decompiler.Tests/TestCases/Pretty/DynamicTests.cs

17
ICSharpCode.Decompiler.Tests/TestCases/Pretty/DynamicTests.cs

@ -310,6 +310,23 @@ namespace ICSharpCode.Decompiler.Tests.TestCases.Pretty
} }
} }
private static void BitwiseAndShiftBinaryOperators(dynamic a, dynamic b)
{
DynamicTests.MemberAccess(a & b);
DynamicTests.MemberAccess(a & 1);
DynamicTests.MemberAccess(a & null);
DynamicTests.MemberAccess(a | b);
DynamicTests.MemberAccess(a | 1);
DynamicTests.MemberAccess(a | null);
DynamicTests.MemberAccess(a ^ b);
DynamicTests.MemberAccess(a ^ 1);
DynamicTests.MemberAccess(a ^ null);
DynamicTests.MemberAccess(a << b);
DynamicTests.MemberAccess(a << 1);
DynamicTests.MemberAccess(a >> b);
DynamicTests.MemberAccess(a >> 1);
}
private static void RelationalOperators(dynamic a, dynamic b) private static void RelationalOperators(dynamic a, dynamic b)
{ {
DynamicTests.MemberAccess(a == b); DynamicTests.MemberAccess(a == b);

Loading…
Cancel
Save