/******************************************************************************* * Copyright (c) 2002, 2008 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.jdt.debug.tests.eval; import org.eclipse.debug.core.model.IValue; import org.eclipse.jdt.debug.core.IJavaPrimitiveValue; import org.eclipse.jdt.internal.debug.core.model.JDIObjectValue; public class LongOperatorsTests extends Tests { public LongOperatorsTests(String arg) { super(arg); } protected void init() throws Exception { initializeFrame("EvalSimpleTests",15,1); } protected void end() throws Exception { destroyFrame(); } // long + {byte, char, short, int, long, float, double} public void testLongPlusByte() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long plus byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus byte : wrong result : ", xLongValue + yByteValue, longValue); value = eval(yLong + plusOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long plus byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus byte : wrong result : ", yLongValue + xByteValue, longValue); } finally { end(); } } public void testLongPlusChar() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long plus char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus char : wrong result : ", xLongValue + yCharValue, longValue); value = eval(yLong + plusOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long plus char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus char : wrong result : ", yLongValue + xCharValue, longValue); } finally { end(); } } public void testLongPlusShort() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long plus short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus short : wrong result : ", xLongValue + yShortValue, longValue); value = eval(yLong + plusOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long plus short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus short : wrong result : ", yLongValue + xShortValue, longValue); } finally { end(); } } public void testLongPlusInt() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long plus int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus int : wrong result : ", xLongValue + yIntValue, longValue); value = eval(yLong + plusOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long plus int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus int : wrong result : ", yLongValue + xIntValue, longValue); } finally { end(); } } public void testLongPlusLong() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long plus long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus long : wrong result : ", xLongValue + yLongValue, longValue); value = eval(yLong + plusOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long plus long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long plus long : wrong result : ", yLongValue + xLongValue, longValue); } finally { end(); } } public void testLongPlusFloat() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long plus float : wrong type : ", "float", typeName); float floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long plus float : wrong result : ", xLongValue + yFloatValue, floatValue, 0); value = eval(yLong + plusOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long plus float : wrong type : ", "float", typeName); floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long plus float : wrong result : ", yLongValue + xFloatValue, floatValue, 0); } finally { end(); } } public void testLongPlusDouble() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long plus double : wrong type : ", "double", typeName); double doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long plus double : wrong result : ", xLongValue + yDoubleValue, doubleValue, 0); value = eval(yLong + plusOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long plus double : wrong type : ", "double", typeName); doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long plus double : wrong result : ", yLongValue + xDoubleValue, doubleValue, 0); } finally { end(); } } public void testLongPlusString() throws Throwable { try { init(); IValue value = eval(xLong + plusOp + yString); String typeName = value.getReferenceTypeName(); assertEquals("long plus java.lang.String : wrong type : ", "java.lang.String", typeName); String stringValue = ((JDIObjectValue)value).getValueString(); assertEquals("long plus java.lang.String : wrong result : ", xLongValue + yStringValue, stringValue); value = eval(yLong + plusOp + xString); typeName = value.getReferenceTypeName(); assertEquals("long plus java.lang.String : wrong type : ", "java.lang.String", typeName); stringValue = ((JDIObjectValue)value).getValueString(); assertEquals("long plus java.lang.String : wrong result : ", yLongValue + xStringValue, stringValue); } finally { end(); } } // long - {byte, char, short, int, long, float, double} public void testLongMinusByte() throws Throwable { try { init(); IValue value = eval(xLong + minusOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long minus byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus byte : wrong result : ", xLongValue - yByteValue, longValue); value = eval(yLong + minusOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long minus byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus byte : wrong result : ", yLongValue - xByteValue, longValue); } finally { end(); } } public void testLongMinusChar() throws Throwable { try { init(); IValue value = eval(xLong + minusOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long minus char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus char : wrong result : ", xLongValue - yCharValue, longValue); value = eval(yLong + minusOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long minus char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus char : wrong result : ", yLongValue - xCharValue, longValue); } finally { end(); } } public void testLongMinusShort() throws Throwable { try { init(); IValue value = eval(xLong + minusOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long minus short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus short : wrong result : ", xLongValue - yShortValue, longValue); value = eval(yLong + minusOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long minus short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus short : wrong result : ", yLongValue - xShortValue, longValue); } finally { end(); } } public void testLongMinusInt() throws Throwable { try { init(); IValue value = eval(xLong + minusOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long minus int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus int : wrong result : ", xLongValue - yIntValue, longValue); value = eval(yLong + minusOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long minus int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus int : wrong result : ", yLongValue - xIntValue, longValue); } finally { end(); } } public void testLongMinusLong() throws Throwable { try { init(); IValue value = eval(xLong + minusOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long minus long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus long : wrong result : ", xLongValue - yLongValue, longValue); value = eval(yLong + minusOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long minus long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long minus long : wrong result : ", yLongValue - xLongValue, longValue); } finally { end(); } } public void testLongMinusFloat() throws Throwable { try { init(); IValue value = eval(xLong + minusOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long minus float : wrong type : ", "float", typeName); float floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long minus float : wrong result : ", xLongValue - yFloatValue, floatValue, 0); value = eval(yLong + minusOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long minus float : wrong type : ", "float", typeName); floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long minus float : wrong result : ", yLongValue - xFloatValue, floatValue, 0); } finally { end(); } } public void testLongMinusDouble() throws Throwable { try { init(); IValue value = eval(xLong + minusOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long minus double : wrong type : ", "double", typeName); double doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long minus double : wrong result : ", xLongValue - yDoubleValue, doubleValue, 0); value = eval(yLong + minusOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long minus double : wrong type : ", "double", typeName); doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long minus double : wrong result : ", yLongValue - xDoubleValue, doubleValue, 0); } finally { end(); } } // long * {byte, char, short, int, long, float, double} public void testLongMultiplyByte() throws Throwable { try { init(); IValue value = eval(xLong + multiplyOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long multiply byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply byte : wrong result : ", xLongValue * yByteValue, longValue); value = eval(yLong + multiplyOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long multiply byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply byte : wrong result : ", yLongValue * xByteValue, longValue); } finally { end(); } } public void testLongMultiplyChar() throws Throwable { try { init(); IValue value = eval(xLong + multiplyOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long multiply char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply char : wrong result : ", xLongValue * yCharValue, longValue); value = eval(yLong + multiplyOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long multiply char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply char : wrong result : ", yLongValue * xCharValue, longValue); } finally { end(); } } public void testLongMultiplyShort() throws Throwable { try { init(); IValue value = eval(xLong + multiplyOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long multiply short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply short : wrong result : ", xLongValue * yShortValue, longValue); value = eval(yLong + multiplyOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long multiply short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply short : wrong result : ", yLongValue * xShortValue, longValue); } finally { end(); } } public void testLongMultiplyInt() throws Throwable { try { init(); IValue value = eval(xLong + multiplyOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long multiply int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply int : wrong result : ", xLongValue * yIntValue, longValue); value = eval(yLong + multiplyOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long multiply int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply int : wrong result : ", yLongValue * xIntValue, longValue); } finally { end(); } } public void testLongMultiplyLong() throws Throwable { try { init(); IValue value = eval(xLong + multiplyOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long multiply long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply long : wrong result : ", xLongValue * yLongValue, longValue); value = eval(yLong + multiplyOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long multiply long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long multiply long : wrong result : ", yLongValue * xLongValue, longValue); } finally { end(); } } public void testLongMultiplyFloat() throws Throwable { try { init(); IValue value = eval(xLong + multiplyOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long multiply float : wrong type : ", "float", typeName); float floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long multiply float : wrong result : ", xLongValue * yFloatValue, floatValue, 0); value = eval(yLong + multiplyOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long multiply float : wrong type : ", "float", typeName); floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long multiply float : wrong result : ", yLongValue * xFloatValue, floatValue, 0); } finally { end(); } } public void testLongMultiplyDouble() throws Throwable { try { init(); IValue value = eval(xLong + multiplyOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long multiply double : wrong type : ", "double", typeName); double doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long multiply double : wrong result : ", xLongValue * yDoubleValue, doubleValue, 0); value = eval(yLong + multiplyOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long multiply double : wrong type : ", "double", typeName); doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long multiply double : wrong result : ", yLongValue * xDoubleValue, doubleValue, 0); } finally { end(); } } // long / {byte, char, short, int, long, float, double} public void testLongDivideByte() throws Throwable { try { init(); IValue value = eval(xLong + divideOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long divide byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide byte : wrong result : ", xLongValue / yByteValue, longValue); value = eval(yLong + divideOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long divide byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide byte : wrong result : ", yLongValue / xByteValue, longValue); } finally { end(); } } public void testLongDivideChar() throws Throwable { try { init(); IValue value = eval(xLong + divideOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long divide char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide char : wrong result : ", xLongValue / yCharValue, longValue); value = eval(yLong + divideOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long divide char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide char : wrong result : ", yLongValue / xCharValue, longValue); } finally { end(); } } public void testLongDivideShort() throws Throwable { try { init(); IValue value = eval(xLong + divideOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long divide short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide short : wrong result : ", xLongValue / yShortValue, longValue); value = eval(yLong + divideOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long divide short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide short : wrong result : ", yLongValue / xShortValue, longValue); } finally { end(); } } public void testLongDivideInt() throws Throwable { try { init(); IValue value = eval(xLong + divideOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long divide int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide int : wrong result : ", xLongValue / yIntValue, longValue); value = eval(yLong + divideOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long divide int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide int : wrong result : ", yLongValue / xIntValue, longValue); } finally { end(); } } public void testLongDivideLong() throws Throwable { try { init(); IValue value = eval(xLong + divideOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long divide long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide long : wrong result : ", xLongValue / yLongValue, longValue); value = eval(yLong + divideOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long divide long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long divide long : wrong result : ", yLongValue / xLongValue, longValue); } finally { end(); } } public void testLongDivideFloat() throws Throwable { try { init(); IValue value = eval(xLong + divideOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long divide float : wrong type : ", "float", typeName); float floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long divide float : wrong result : ", xLongValue / yFloatValue, floatValue, 0); value = eval(yLong + divideOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long divide float : wrong type : ", "float", typeName); floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long divide float : wrong result : ", yLongValue / xFloatValue, floatValue, 0); } finally { end(); } } public void testLongDivideDouble() throws Throwable { try { init(); IValue value = eval(xLong + divideOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long divide double : wrong type : ", "double", typeName); double doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long divide double : wrong result : ", xLongValue / yDoubleValue, doubleValue, 0); value = eval(yLong + divideOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long divide double : wrong type : ", "double", typeName); doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long divide double : wrong result : ", yLongValue / xDoubleValue, doubleValue, 0); } finally { end(); } } // long % {byte, char, short, int, long, float, double} public void testLongRemainderByte() throws Throwable { try { init(); IValue value = eval(xLong + remainderOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long remainder byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder byte : wrong result : ", xLongValue % yByteValue, longValue); value = eval(yLong + remainderOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long remainder byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder byte : wrong result : ", yLongValue % xByteValue, longValue); } finally { end(); } } public void testLongRemainderChar() throws Throwable { try { init(); IValue value = eval(xLong + remainderOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long remainder char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder char : wrong result : ", xLongValue % yCharValue, longValue); value = eval(yLong + remainderOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long remainder char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder char : wrong result : ", yLongValue % xCharValue, longValue); } finally { end(); } } public void testLongRemainderShort() throws Throwable { try { init(); IValue value = eval(xLong + remainderOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long remainder short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder short : wrong result : ", xLongValue % yShortValue, longValue); value = eval(yLong + remainderOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long remainder short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder short : wrong result : ", yLongValue % xShortValue, longValue); } finally { end(); } } public void testLongRemainderInt() throws Throwable { try { init(); IValue value = eval(xLong + remainderOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long remainder int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder int : wrong result : ", xLongValue % yIntValue, longValue); value = eval(yLong + remainderOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long remainder int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder int : wrong result : ", yLongValue % xIntValue, longValue); } finally { end(); } } public void testLongRemainderLong() throws Throwable { try { init(); IValue value = eval(xLong + remainderOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long remainder long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder long : wrong result : ", xLongValue % yLongValue, longValue); value = eval(yLong + remainderOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long remainder long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long remainder long : wrong result : ", yLongValue % xLongValue, longValue); } finally { end(); } } public void testLongRemainderFloat() throws Throwable { try { init(); IValue value = eval(xLong + remainderOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long remainder float : wrong type : ", "float", typeName); float floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long remainder float : wrong result : ", xLongValue % yFloatValue, floatValue, 0); value = eval(yLong + remainderOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long remainder float : wrong type : ", "float", typeName); floatValue = ((IJavaPrimitiveValue)value).getFloatValue(); assertEquals("long remainder float : wrong result : ", yLongValue % xFloatValue, floatValue, 0); } finally { end(); } } public void testLongRemainderDouble() throws Throwable { try { init(); IValue value = eval(xLong + remainderOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long remainder double : wrong type : ", "double", typeName); double doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long remainder double : wrong result : ", xLongValue % yDoubleValue, doubleValue, 0); value = eval(yLong + remainderOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long remainder double : wrong type : ", "double", typeName); doubleValue = ((IJavaPrimitiveValue)value).getDoubleValue(); assertEquals("long remainder double : wrong result : ", yLongValue % xDoubleValue, doubleValue, 0); } finally { end(); } } // long > {byte, char, short, int, long, float, double} public void testLongGreaterByte() throws Throwable { try { init(); IValue value = eval(xLong + greaterOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long greater byte : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater byte : wrong result : ", xLongValue > yByteValue, booleanValue); value = eval(yLong + greaterOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long greater byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater byte : wrong result : ", yLongValue > xByteValue, booleanValue); value = eval(xLong + greaterOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long greater byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater byte : wrong result : ", xLongValue > xByteValue, booleanValue); } finally { end(); } } public void testLongGreaterChar() throws Throwable { try { init(); IValue value = eval(xLong + greaterOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long greater char : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater char : wrong result : ", xLongValue > yCharValue, booleanValue); value = eval(yLong + greaterOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long greater char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater char : wrong result : ", yLongValue > xCharValue, booleanValue); value = eval(xLong + greaterOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long greater char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater char : wrong result : ", xLongValue > xCharValue, booleanValue); } finally { end(); } } public void testLongGreaterShort() throws Throwable { try { init(); IValue value = eval(xLong + greaterOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long greater short : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater short : wrong result : ", xLongValue > yShortValue, booleanValue); value = eval(yLong + greaterOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long greater short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater short : wrong result : ", yLongValue > xShortValue, booleanValue); value = eval(xLong + greaterOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long greater short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater short : wrong result : ", xLongValue > xShortValue, booleanValue); } finally { end(); } } public void testLongGreaterInt() throws Throwable { try { init(); IValue value = eval(xLong + greaterOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long greater int : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater int : wrong result : ", xLongValue > yIntValue, booleanValue); value = eval(yLong + greaterOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long greater int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater int : wrong result : ", yLongValue > xIntValue, booleanValue); value = eval(xLong + greaterOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long greater int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater int : wrong result : ", xLongValue > xIntValue, booleanValue); } finally { end(); } } public void testLongGreaterLong() throws Throwable { try { init(); IValue value = eval(xLong + greaterOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long greater long : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater long : wrong result : ", xLongValue > yLongValue, booleanValue); value = eval(yLong + greaterOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long greater long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater long : wrong result : ", yLongValue > xLongValue, booleanValue); value = eval(xLong + greaterOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long greater long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater long : wrong result : ", xLongValue > xLongValue, booleanValue); } finally { end(); } } public void testLongGreaterFloat() throws Throwable { try { init(); IValue value = eval(xLong + greaterOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long greater float : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater float : wrong result : ", xLongValue > yFloatValue, booleanValue); value = eval(yLong + greaterOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long greater float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater float : wrong result : ", yLongValue > xFloatValue, booleanValue); value = eval(xLong + greaterOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long greater float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater float : wrong result : ", xLongValue > xFloatValue, booleanValue); } finally { end(); } } public void testLongGreaterDouble() throws Throwable { try { init(); IValue value = eval(xLong + greaterOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long greater double : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater double : wrong result : ", xLongValue > yDoubleValue, booleanValue); value = eval(yLong + greaterOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long greater double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater double : wrong result : ", yLongValue > xDoubleValue, booleanValue); value = eval(xLong + greaterOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long greater double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greater double : wrong result : ", xLongValue > xDoubleValue, booleanValue); } finally { end(); } } // long >= {byte, char, short, int, long, float, double} public void testLongGreaterEqualByte() throws Throwable { try { init(); IValue value = eval(xLong + greaterEqualOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual byte : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual byte : wrong result : ", xLongValue >= yByteValue, booleanValue); value = eval(yLong + greaterEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual byte : wrong result : ", yLongValue >= xByteValue, booleanValue); value = eval(xLong + greaterEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual byte : wrong result : ", xLongValue >= xByteValue, booleanValue); } finally { end(); } } public void testLongGreaterEqualChar() throws Throwable { try { init(); IValue value = eval(xLong + greaterEqualOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual char : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual char : wrong result : ", xLongValue >= yCharValue, booleanValue); value = eval(yLong + greaterEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual char : wrong result : ", yLongValue >= xCharValue, booleanValue); value = eval(xLong + greaterEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual char : wrong result : ", xLongValue >= xCharValue, booleanValue); } finally { end(); } } public void testLongGreaterEqualShort() throws Throwable { try { init(); IValue value = eval(xLong + greaterEqualOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual short : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual short : wrong result : ", xLongValue >= yShortValue, booleanValue); value = eval(yLong + greaterEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual short : wrong result : ", yLongValue >= xShortValue, booleanValue); value = eval(xLong + greaterEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual short : wrong result : ", xLongValue >= xShortValue, booleanValue); } finally { end(); } } public void testLongGreaterEqualInt() throws Throwable { try { init(); IValue value = eval(xLong + greaterEqualOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual int : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual int : wrong result : ", xLongValue >= yIntValue, booleanValue); value = eval(yLong + greaterEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual int : wrong result : ", yLongValue >= xIntValue, booleanValue); value = eval(xLong + greaterEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual int : wrong result : ", xLongValue >= xIntValue, booleanValue); } finally { end(); } } public void testLongGreaterEqualLong() throws Throwable { try { init(); IValue value = eval(xLong + greaterEqualOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual long : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual long : wrong result : ", xLongValue >= yLongValue, booleanValue); value = eval(yLong + greaterEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual long : wrong result : ", yLongValue >= xLongValue, booleanValue); value = eval(xLong + greaterEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual long : wrong result : ", xLongValue >= xLongValue, booleanValue); } finally { end(); } } public void testLongGreaterEqualFloat() throws Throwable { try { init(); IValue value = eval(xLong + greaterEqualOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual float : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual float : wrong result : ", xLongValue >= yFloatValue, booleanValue); value = eval(yLong + greaterEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual float : wrong result : ", yLongValue >= xFloatValue, booleanValue); value = eval(xLong + greaterEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual float : wrong result : ", xLongValue >= xFloatValue, booleanValue); } finally { end(); } } public void testLongGreaterEqualDouble() throws Throwable { try { init(); IValue value = eval(xLong + greaterEqualOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual double : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual double : wrong result : ", xLongValue >= yDoubleValue, booleanValue); value = eval(yLong + greaterEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual double : wrong result : ", yLongValue >= xDoubleValue, booleanValue); value = eval(xLong + greaterEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long greaterEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long greaterEqual double : wrong result : ", xLongValue >= xDoubleValue, booleanValue); } finally { end(); } } // long < {byte, char, short, int, long, float, double} public void testLongLessByte() throws Throwable { try { init(); IValue value = eval(xLong + lessOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long less byte : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less byte : wrong result : ", xLongValue < yByteValue, booleanValue); value = eval(yLong + lessOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long less byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less byte : wrong result : ", yLongValue < xByteValue, booleanValue); value = eval(xLong + lessOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long less byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less byte : wrong result : ", xLongValue < xByteValue, booleanValue); } finally { end(); } } public void testLongLessChar() throws Throwable { try { init(); IValue value = eval(xLong + lessOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long less char : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less char : wrong result : ", xLongValue < yCharValue, booleanValue); value = eval(yLong + lessOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long less char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less char : wrong result : ", yLongValue < xCharValue, booleanValue); value = eval(xLong + lessOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long less char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less char : wrong result : ", xLongValue < xCharValue, booleanValue); } finally { end(); } } public void testLongLessShort() throws Throwable { try { init(); IValue value = eval(xLong + lessOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long less short : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less short : wrong result : ", xLongValue < yShortValue, booleanValue); value = eval(yLong + lessOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long less short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less short : wrong result : ", yLongValue < xShortValue, booleanValue); value = eval(xLong + lessOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long less short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less short : wrong result : ", xLongValue < xShortValue, booleanValue); } finally { end(); } } public void testLongLessInt() throws Throwable { try { init(); IValue value = eval(xLong + lessOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long less int : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less int : wrong result : ", xLongValue < yIntValue, booleanValue); value = eval(yLong + lessOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long less int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less int : wrong result : ", yLongValue < xIntValue, booleanValue); value = eval(xLong + lessOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long less int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less int : wrong result : ", xLongValue < xIntValue, booleanValue); } finally { end(); } } public void testLongLessLong() throws Throwable { try { init(); IValue value = eval(xLong + lessOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long less long : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less long : wrong result : ", xLongValue < yLongValue, booleanValue); value = eval(yLong + lessOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long less long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less long : wrong result : ", yLongValue < xLongValue, booleanValue); value = eval(xLong + lessOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long less long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less long : wrong result : ", xLongValue < xLongValue, booleanValue); } finally { end(); } } public void testLongLessFloat() throws Throwable { try { init(); IValue value = eval(xLong + lessOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long less float : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less float : wrong result : ", xLongValue < yFloatValue, booleanValue); value = eval(yLong + lessOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long less float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less float : wrong result : ", yLongValue < xFloatValue, booleanValue); value = eval(xLong + lessOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long less float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less float : wrong result : ", xLongValue < xFloatValue, booleanValue); } finally { end(); } } public void testLongLessDouble() throws Throwable { try { init(); IValue value = eval(xLong + lessOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long less double : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less double : wrong result : ", xLongValue < yDoubleValue, booleanValue); value = eval(yLong + lessOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long less double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less double : wrong result : ", yLongValue < xDoubleValue, booleanValue); value = eval(xLong + lessOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long less double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long less double : wrong result : ", xLongValue < xDoubleValue, booleanValue); } finally { end(); } } // long <= {byte, char, short, int, long, float, double} public void testLongLessEqualByte() throws Throwable { try { init(); IValue value = eval(xLong + lessEqualOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long lessEqual byte : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual byte : wrong result : ", xLongValue <= yByteValue, booleanValue); value = eval(yLong + lessEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual byte : wrong result : ", yLongValue <= xByteValue, booleanValue); value = eval(xLong + lessEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual byte : wrong result : ", xLongValue <= xByteValue, booleanValue); } finally { end(); } } public void testLongLessEqualChar() throws Throwable { try { init(); IValue value = eval(xLong + lessEqualOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long lessEqual char : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual char : wrong result : ", xLongValue <= yCharValue, booleanValue); value = eval(yLong + lessEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual char : wrong result : ", yLongValue <= xCharValue, booleanValue); value = eval(xLong + lessEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual char : wrong result : ", xLongValue <= xCharValue, booleanValue); } finally { end(); } } public void testLongLessEqualShort() throws Throwable { try { init(); IValue value = eval(xLong + lessEqualOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long lessEqual short : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual short : wrong result : ", xLongValue <= yShortValue, booleanValue); value = eval(yLong + lessEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual short : wrong result : ", yLongValue <= xShortValue, booleanValue); value = eval(xLong + lessEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual short : wrong result : ", xLongValue <= xShortValue, booleanValue); } finally { end(); } } public void testLongLessEqualInt() throws Throwable { try { init(); IValue value = eval(xLong + lessEqualOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long lessEqual int : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual int : wrong result : ", xLongValue <= yIntValue, booleanValue); value = eval(yLong + lessEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual int : wrong result : ", yLongValue <= xIntValue, booleanValue); value = eval(xLong + lessEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual int : wrong result : ", xLongValue <= xIntValue, booleanValue); } finally { end(); } } public void testLongLessEqualLong() throws Throwable { try { init(); IValue value = eval(xLong + lessEqualOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long lessEqual long : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual long : wrong result : ", xLongValue <= yLongValue, booleanValue); value = eval(yLong + lessEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual long : wrong result : ", yLongValue <= xLongValue, booleanValue); value = eval(xLong + lessEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual long : wrong result : ", xLongValue <= xLongValue, booleanValue); } finally { end(); } } public void testLongLessEqualFloat() throws Throwable { try { init(); IValue value = eval(xLong + lessEqualOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long lessEqual float : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual float : wrong result : ", xLongValue <= yFloatValue, booleanValue); value = eval(yLong + lessEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual float : wrong result : ", yLongValue <= xFloatValue, booleanValue); value = eval(xLong + lessEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual float : wrong result : ", xLongValue <= xFloatValue, booleanValue); } finally { end(); } } public void testLongLessEqualDouble() throws Throwable { try { init(); IValue value = eval(xLong + lessEqualOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long lessEqual double : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual double : wrong result : ", xLongValue <= yDoubleValue, booleanValue); value = eval(yLong + lessEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual double : wrong result : ", yLongValue <= xDoubleValue, booleanValue); value = eval(xLong + lessEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long lessEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long lessEqual double : wrong result : ", xLongValue <= xDoubleValue, booleanValue); } finally { end(); } } // long == {byte, char, short, int, long, float, double} public void testLongEqualEqualByte() throws Throwable { try { init(); IValue value = eval(xLong + equalEqualOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long equalEqual byte : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual byte : wrong result : ", xLongValue == yByteValue, booleanValue); value = eval(yLong + equalEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual byte : wrong result : ", yLongValue == xByteValue, booleanValue); value = eval(xLong + equalEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual byte : wrong result : ", xLongValue == xByteValue, booleanValue); } finally { end(); } } public void testLongEqualEqualChar() throws Throwable { try { init(); IValue value = eval(xLong + equalEqualOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long equalEqual char : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual char : wrong result : ", xLongValue == yCharValue, booleanValue); value = eval(yLong + equalEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual char : wrong result : ", yLongValue == xCharValue, booleanValue); value = eval(xLong + equalEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual char : wrong result : ", xLongValue == xCharValue, booleanValue); } finally { end(); } } public void testLongEqualEqualShort() throws Throwable { try { init(); IValue value = eval(xLong + equalEqualOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long equalEqual short : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual short : wrong result : ", xLongValue == yShortValue, booleanValue); value = eval(yLong + equalEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual short : wrong result : ", yLongValue == xShortValue, booleanValue); value = eval(xLong + equalEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual short : wrong result : ", xLongValue == xShortValue, booleanValue); } finally { end(); } } public void testLongEqualEqualInt() throws Throwable { try { init(); IValue value = eval(xLong + equalEqualOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long equalEqual int : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual int : wrong result : ", xLongValue == yIntValue, booleanValue); value = eval(yLong + equalEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual int : wrong result : ", yLongValue == xIntValue, booleanValue); value = eval(xLong + equalEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual int : wrong result : ", xLongValue == xIntValue, booleanValue); } finally { end(); } } public void testLongEqualEqualLong() throws Throwable { try { init(); IValue value = eval(xLong + equalEqualOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long equalEqual long : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual long : wrong result : ", xLongValue == yLongValue, booleanValue); value = eval(yLong + equalEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual long : wrong result : ", yLongValue == xLongValue, booleanValue); value = eval(xLong + equalEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual long : wrong result : ", true, booleanValue); } finally { end(); } } public void testLongEqualEqualFloat() throws Throwable { try { init(); IValue value = eval(xLong + equalEqualOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long equalEqual float : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual float : wrong result : ", xLongValue == yFloatValue, booleanValue); value = eval(yLong + equalEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual float : wrong result : ", yLongValue == xFloatValue, booleanValue); value = eval(xLong + equalEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual float : wrong result : ", xLongValue == xFloatValue, booleanValue); } finally { end(); } } public void testLongEqualEqualDouble() throws Throwable { try { init(); IValue value = eval(xLong + equalEqualOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long equalEqual double : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual double : wrong result : ", xLongValue == yDoubleValue, booleanValue); value = eval(yLong + equalEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual double : wrong result : ", yLongValue == xDoubleValue, booleanValue); value = eval(xLong + equalEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long equalEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long equalEqual double : wrong result : ", xLongValue == xDoubleValue, booleanValue); } finally { end(); } } // long != {byte, char, short, int, long, float, double} public void testLongNotEqualByte() throws Throwable { try { init(); IValue value = eval(xLong + notEqualOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long notEqual byte : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual byte : wrong result : ", xLongValue != yByteValue, booleanValue); value = eval(yLong + notEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long notEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual byte : wrong result : ", yLongValue != xByteValue, booleanValue); value = eval(xLong + notEqualOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long notEqual byte : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual byte : wrong result : ", xLongValue != xByteValue, booleanValue); } finally { end(); } } public void testLongNotEqualChar() throws Throwable { try { init(); IValue value = eval(xLong + notEqualOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long notEqual char : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual char : wrong result : ", xLongValue != yCharValue, booleanValue); value = eval(yLong + notEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long notEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual char : wrong result : ", yLongValue != xCharValue, booleanValue); value = eval(xLong + notEqualOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long notEqual char : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual char : wrong result : ", xLongValue != xCharValue, booleanValue); } finally { end(); } } public void testLongNotEqualShort() throws Throwable { try { init(); IValue value = eval(xLong + notEqualOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long notEqual short : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual short : wrong result : ", xLongValue != yShortValue, booleanValue); value = eval(yLong + notEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long notEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual short : wrong result : ", yLongValue != xShortValue, booleanValue); value = eval(xLong + notEqualOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long notEqual short : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual short : wrong result : ", xLongValue != xShortValue, booleanValue); } finally { end(); } } public void testLongNotEqualInt() throws Throwable { try { init(); IValue value = eval(xLong + notEqualOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long notEqual int : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual int : wrong result : ", xLongValue != yIntValue, booleanValue); value = eval(yLong + notEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long notEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual int : wrong result : ", yLongValue != xIntValue, booleanValue); value = eval(xLong + notEqualOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long notEqual int : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual int : wrong result : ", xLongValue != xIntValue, booleanValue); } finally { end(); } } public void testLongNotEqualLong() throws Throwable { try { init(); IValue value = eval(xLong + notEqualOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long notEqual long : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual long : wrong result : ", xLongValue != yLongValue, booleanValue); value = eval(yLong + notEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long notEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual long : wrong result : ", yLongValue != xLongValue, booleanValue); value = eval(xLong + notEqualOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long notEqual long : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual long : wrong result : ", false, booleanValue); } finally { end(); } } public void testLongNotEqualFloat() throws Throwable { try { init(); IValue value = eval(xLong + notEqualOp + yFloat); String typeName = value.getReferenceTypeName(); assertEquals("long notEqual float : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual float : wrong result : ", xLongValue != yFloatValue, booleanValue); value = eval(yLong + notEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long notEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual float : wrong result : ", yLongValue != xFloatValue, booleanValue); value = eval(xLong + notEqualOp + xFloat); typeName = value.getReferenceTypeName(); assertEquals("long notEqual float : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual float : wrong result : ", xLongValue != xFloatValue, booleanValue); } finally { end(); } } public void testLongNotEqualDouble() throws Throwable { try { init(); IValue value = eval(xLong + notEqualOp + yDouble); String typeName = value.getReferenceTypeName(); assertEquals("long notEqual double : wrong type : ", "boolean", typeName); boolean booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual double : wrong result : ", xLongValue != yDoubleValue, booleanValue); value = eval(yLong + notEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long notEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual double : wrong result : ", yLongValue != xDoubleValue, booleanValue); value = eval(xLong + notEqualOp + xDouble); typeName = value.getReferenceTypeName(); assertEquals("long notEqual double : wrong type : ", "boolean", typeName); booleanValue = ((IJavaPrimitiveValue)value).getBooleanValue(); assertEquals("long notEqual double : wrong result : ", xLongValue != xDoubleValue, booleanValue); } finally { end(); } } // long << {byte, char, short, int, long} public void testLongLeftShiftByte() throws Throwable { try { init(); IValue value = eval(xLong + leftShiftOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long leftShift byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift byte : wrong result : ", xLongValue << yByteValue, longValue); value = eval(yLong + leftShiftOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long leftShift byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift byte : wrong result : ", yLongValue << xByteValue, longValue); } finally { end(); } } public void testLongLeftShiftChar() throws Throwable { try { init(); IValue value = eval(xLong + leftShiftOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long leftShift char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift char : wrong result : ", xLongValue << yCharValue, longValue); value = eval(yLong + leftShiftOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long leftShift char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift char : wrong result : ", yLongValue << xCharValue, longValue); } finally { end(); } } public void testLongLeftShiftShort() throws Throwable { try { init(); IValue value = eval(xLong + leftShiftOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long leftShift short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift short : wrong result : ", xLongValue << yShortValue, longValue); value = eval(yLong + leftShiftOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long leftShift short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift short : wrong result : ", yLongValue << xShortValue, longValue); } finally { end(); } } public void testLongLeftShiftInt() throws Throwable { try { init(); IValue value = eval(xLong + leftShiftOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long leftShift int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift int : wrong result : ", xLongValue << yIntValue, longValue); value = eval(yLong + leftShiftOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long leftShift int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift int : wrong result : ", yLongValue << xIntValue, longValue); } finally { end(); } } public void testLongLeftShiftLong() throws Throwable { try { init(); IValue value = eval(xLong + leftShiftOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long leftShift long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift long : wrong result : ", xLongValue << yLongValue, longValue); value = eval(yLong + leftShiftOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long leftShift long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long leftShift long : wrong result : ", yLongValue << xLongValue, longValue); } finally { end(); } } // long >> {byte, char, short, int, long} public void testLongRightShiftByte() throws Throwable { try { init(); IValue value = eval(xLong + rightShiftOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long rightShift byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift byte : wrong result : ", xLongValue >> yByteValue, longValue); value = eval(yLong + rightShiftOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long rightShift byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift byte : wrong result : ", yLongValue >> xByteValue, longValue); } finally { end(); } } public void testLongRightShiftChar() throws Throwable { try { init(); IValue value = eval(xLong + rightShiftOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long rightShift char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift char : wrong result : ", xLongValue >> yCharValue, longValue); value = eval(yLong + rightShiftOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long rightShift char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift char : wrong result : ", yLongValue >> xCharValue, longValue); } finally { end(); } } public void testLongRightShiftShort() throws Throwable { try { init(); IValue value = eval(xLong + rightShiftOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long rightShift short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift short : wrong result : ", xLongValue >> yShortValue, longValue); value = eval(yLong + rightShiftOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long rightShift short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift short : wrong result : ", yLongValue >> xShortValue, longValue); } finally { end(); } } public void testLongRightShiftInt() throws Throwable { try { init(); IValue value = eval(xLong + rightShiftOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long rightShift int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift int : wrong result : ", xLongValue >> yIntValue, longValue); value = eval(yLong + rightShiftOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long rightShift int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift int : wrong result : ", yLongValue >> xIntValue, longValue); } finally { end(); } } public void testLongRightShiftLong() throws Throwable { try { init(); IValue value = eval(xLong + rightShiftOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long rightShift long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift long : wrong result : ", xLongValue >> yLongValue, longValue); value = eval(yLong + rightShiftOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long rightShift long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long rightShift long : wrong result : ", yLongValue >> xLongValue, longValue); } finally { end(); } } // long >>> {byte, char, short, int, long} public void testLongUnsignedRightShiftByte() throws Throwable { try { init(); IValue value = eval(xLong + unsignedRightShiftOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift byte : wrong result : ", xLongValue >>> yByteValue, longValue); value = eval(yLong + unsignedRightShiftOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift byte : wrong result : ", yLongValue >>> xByteValue, longValue); } finally { end(); } } public void testLongUnsignedRightShiftChar() throws Throwable { try { init(); IValue value = eval(xLong + unsignedRightShiftOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift char : wrong result : ", xLongValue >>> yCharValue, longValue); value = eval(yLong + unsignedRightShiftOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift char : wrong result : ", yLongValue >>> xCharValue, longValue); } finally { end(); } } public void testLongUnsignedRightShiftShort() throws Throwable { try { init(); IValue value = eval(xLong + unsignedRightShiftOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift short : wrong result : ", xLongValue >>> yShortValue, longValue); value = eval(yLong + unsignedRightShiftOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift short : wrong result : ", yLongValue >>> xShortValue, longValue); } finally { end(); } } public void testLongUnsignedRightShiftInt() throws Throwable { try { init(); IValue value = eval(xLong + unsignedRightShiftOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift int : wrong result : ", xLongValue >>> yIntValue, longValue); value = eval(yLong + unsignedRightShiftOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift int : wrong result : ", yLongValue >>> xIntValue, longValue); } finally { end(); } } public void testLongUnsignedRightShiftLong() throws Throwable { try { init(); IValue value = eval(xLong + unsignedRightShiftOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift long : wrong result : ", xLongValue >>> yLongValue, longValue); value = eval(yLong + unsignedRightShiftOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long unsignedRightShift long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long unsignedRightShift long : wrong result : ", yLongValue >>> xLongValue, longValue); } finally { end(); } } // long | {byte, char, short, int, long} public void testLongOrByte() throws Throwable { try { init(); IValue value = eval(xLong + orOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long or byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or byte : wrong result : ", xLongValue | yByteValue, longValue); value = eval(yLong + orOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long or byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or byte : wrong result : ", yLongValue | xByteValue, longValue); } finally { end(); } } public void testLongOrChar() throws Throwable { try { init(); IValue value = eval(xLong + orOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long or char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or char : wrong result : ", xLongValue | yCharValue, longValue); value = eval(yLong + orOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long or char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or char : wrong result : ", yLongValue | xCharValue, longValue); } finally { end(); } } public void testLongOrShort() throws Throwable { try { init(); IValue value = eval(xLong + orOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long or short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or short : wrong result : ", xLongValue | yShortValue, longValue); value = eval(yLong + orOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long or short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or short : wrong result : ", yLongValue | xShortValue, longValue); } finally { end(); } } public void testLongOrInt() throws Throwable { try { init(); IValue value = eval(xLong + orOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long or int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or int : wrong result : ", xLongValue | yIntValue, longValue); value = eval(yLong + orOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long or int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or int : wrong result : ", yLongValue | xIntValue, longValue); } finally { end(); } } public void testLongOrLong() throws Throwable { try { init(); IValue value = eval(xLong + orOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long or long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or long : wrong result : ", xLongValue | yLongValue, longValue); value = eval(yLong + orOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long or long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long or long : wrong result : ", yLongValue | xLongValue, longValue); } finally { end(); } } // long & {byte, char, short, int, long} public void testLongAndByte() throws Throwable { try { init(); IValue value = eval(xLong + andOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long and byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and byte : wrong result : ", xLongValue & yByteValue, longValue); value = eval(yLong + andOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long and byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and byte : wrong result : ", yLongValue & xByteValue, longValue); } finally { end(); } } public void testLongAndChar() throws Throwable { try { init(); IValue value = eval(xLong + andOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long and char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and char : wrong result : ", xLongValue & yCharValue, longValue); value = eval(yLong + andOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long and char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and char : wrong result : ", yLongValue & xCharValue, longValue); } finally { end(); } } public void testLongAndShort() throws Throwable { try { init(); IValue value = eval(xLong + andOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long and short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and short : wrong result : ", xLongValue & yShortValue, longValue); value = eval(yLong + andOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long and short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and short : wrong result : ", yLongValue & xShortValue, longValue); } finally { end(); } } public void testLongAndInt() throws Throwable { try { init(); IValue value = eval(xLong + andOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long and int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and int : wrong result : ", xLongValue & yIntValue, longValue); value = eval(yLong + andOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long and int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and int : wrong result : ", yLongValue & xIntValue, longValue); } finally { end(); } } public void testLongAndLong() throws Throwable { try { init(); IValue value = eval(xLong + andOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long and long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and long : wrong result : ", xLongValue & yLongValue, longValue); value = eval(yLong + andOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long and long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long and long : wrong result : ", yLongValue & xLongValue, longValue); } finally { end(); } } // long ^ {byte, char, short, int, long} public void testLongXorByte() throws Throwable { try { init(); IValue value = eval(xLong + xorOp + yByte); String typeName = value.getReferenceTypeName(); assertEquals("long xor byte : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor byte : wrong result : ", xLongValue ^ yByteValue, longValue); value = eval(yLong + xorOp + xByte); typeName = value.getReferenceTypeName(); assertEquals("long xor byte : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor byte : wrong result : ", yLongValue ^ xByteValue, longValue); } finally { end(); } } public void testLongXorChar() throws Throwable { try { init(); IValue value = eval(xLong + xorOp + yChar); String typeName = value.getReferenceTypeName(); assertEquals("long xor char : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor char : wrong result : ", xLongValue ^ yCharValue, longValue); value = eval(yLong + xorOp + xChar); typeName = value.getReferenceTypeName(); assertEquals("long xor char : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor char : wrong result : ", yLongValue ^ xCharValue, longValue); } finally { end(); } } public void testLongXorShort() throws Throwable { try { init(); IValue value = eval(xLong + xorOp + yShort); String typeName = value.getReferenceTypeName(); assertEquals("long xor short : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor short : wrong result : ", xLongValue ^ yShortValue, longValue); value = eval(yLong + xorOp + xShort); typeName = value.getReferenceTypeName(); assertEquals("long xor short : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor short : wrong result : ", yLongValue ^ xShortValue, longValue); } finally { end(); } } public void testLongXorInt() throws Throwable { try { init(); IValue value = eval(xLong + xorOp + yInt); String typeName = value.getReferenceTypeName(); assertEquals("long xor int : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor int : wrong result : ", xLongValue ^ yIntValue, longValue); value = eval(yLong + xorOp + xInt); typeName = value.getReferenceTypeName(); assertEquals("long xor int : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor int : wrong result : ", yLongValue ^ xIntValue, longValue); } finally { end(); } } public void testLongXorLong() throws Throwable { try { init(); IValue value = eval(xLong + xorOp + yLong); String typeName = value.getReferenceTypeName(); assertEquals("long xor long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor long : wrong result : ", xLongValue ^ yLongValue, longValue); value = eval(yLong + xorOp + xLong); typeName = value.getReferenceTypeName(); assertEquals("long xor long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("long xor long : wrong result : ", yLongValue ^ xLongValue, longValue); } finally { end(); } } // + long public void testPlusLong() throws Throwable { try { init(); IValue value = eval(plusOp + xLong); String typeName = value.getReferenceTypeName(); assertEquals("plus long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("plus long : wrong result : ", + xLongValue, longValue); value = eval(plusOp + yLong); typeName = value.getReferenceTypeName(); assertEquals("plus long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("plus long : wrong result : ", + yLongValue, longValue); } finally { end(); } } // - long public void testMinusLong() throws Throwable { try { init(); IValue value = eval(minusOp + xLong); String typeName = value.getReferenceTypeName(); assertEquals("minus long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("minus long : wrong result : ", - xLongValue, longValue); value = eval(minusOp + yLong); typeName = value.getReferenceTypeName(); assertEquals("minus long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("minus long : wrong result : ", - yLongValue, longValue); } finally { end(); } } // ~ long public void testTwiddleLong() throws Throwable { try { init(); IValue value = eval(twiddleOp + xLong); String typeName = value.getReferenceTypeName(); assertEquals("twiddle long : wrong type : ", "long", typeName); long longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("twiddle long : wrong result : ", ~ xLongValue, longValue); value = eval(twiddleOp + yLong); typeName = value.getReferenceTypeName(); assertEquals("twiddle long : wrong type : ", "long", typeName); longValue = ((IJavaPrimitiveValue)value).getLongValue(); assertEquals("twiddle long : wrong result : ", ~ yLongValue, longValue); } finally { end(); } } }