public void ModuloInt32Assign(int x, int y)
{
dynamic dX = x;
dynamic dY = y;
if (y == 0)
Assert.Throws<DivideByZeroException>(() => dX %= dY);
else if (y == -1 && x == int.MinValue)
Assert.Throws<OverflowException>(() => dX %= dY);
else
{
dX %= dY;
Assert.Equal(x % y, dX);
}
}