Package org.apache.harmony.jpda.tests.framework.jdwp

Examples of org.apache.harmony.jpda.tests.framework.jdwp.Value


                JDWPCommands.ClassTypeCommandSet.InvokeMethodCommand);
        invokeCommand.setNextValueAsClassID(debuggeeRefTypeID);
        invokeCommand.setNextValueAsThreadID(breakpointThreadID);
        invokeCommand.setNextValueAsMethodID(toInvokeMethodID);
        invokeCommand.setNextValueAsInt(1); // args number
        invokeCommand.setNextValueAsValue(new Value(timeOfMethodInvocation));
        invokeCommand
                .setNextValueAsInt(JDWPConstants.InvokeOptions.INVOKE_SINGLE_THREADED);

        // send MethodInvoke command, but not wait for reply
        try {
View Full Code Here


        checkReplyPacket(reply, "ReferenceType::GetValues command");

        int values = reply.getNextValueAsInt();
        assertEquals("ReferenceType::GetValues returned invalid number of values,", 1, values);

        Value value = reply.getNextValueAsValue();
        //System.err.println("value="+value);
        long arrayID = value.getLongValue();
        logWriter.println("arrayID = " + arrayID);

        packet = new CommandPacket(
                JDWPCommands.ArrayReferenceCommandSet.CommandSetID,
                JDWPCommands.ArrayReferenceCommandSet.LengthCommand);
View Full Code Here

        boolean success = true;
        //print and check values of variables
        logWriter.println("=> Values of variables: ");

        Value val = reply.getNextValueAsValue();
        if (val.getTag() == JDWPConstants.Tag.OBJECT_TAG) {
            logWriter.println("=> Tag is correct");
            logWriter.println("");
           
        } else {
            logWriter.printError("Unexpected tag of variable: "
                    + JDWPConstants.Tag.getName(val.getTag()) + " instead of: CLASS_OBJECT_TAG");
            logWriter.printError("");
            success = false;
        }

        val = reply.getNextValueAsValue();
        if (val.getTag() == JDWPConstants.Tag.BOOLEAN_TAG) {
            logWriter.println("=>Tag is correct");
            boolean boolValue = val.getBooleanValue();
            if (boolValue) {
                logWriter.println("=> "+varInfos[1].getName() + " = " + boolValue);
                logWriter.println("");
            } else {
                logWriter
                        .printError("Unexpected value of boolean variable: "
                                + boolValue + " instead of: true");
                logWriter.printError("");
                success = false;
            }
        } else {
            logWriter.printError("Unexpected tag of variable: "
                    + JDWPConstants.Tag.getName(val.getTag()) + " instead of: boolean");
            logWriter.printError("");
            success = false;
        }

        val = reply.getNextValueAsValue();
        if (val.getTag() == JDWPConstants.Tag.INT_TAG) {
            logWriter.println("=>Tag is correct");
            int intValue = val.getIntValue();
            if (intValue == -512) {
                logWriter.println("=> "+varInfos[2].getName() + " = " + intValue);
                logWriter.println("");
            } else {
                logWriter
                        .printError("unexpected value of int variable: "
                                + intValue + " instead of: -512");
                logWriter.printError("");
                success = false;
            }
        } else {
            logWriter.printError("Unexpected tag of variable: "
                    + JDWPConstants.Tag.getName(val.getTag()) + " instead of: integer");
            logWriter.printError("");
            success = false;
        }

        val = reply.getNextValueAsValue();
        if (val.getTag() == JDWPConstants.Tag.STRING_TAG) {
            logWriter.println("=>Tag is correct");
            long strLocalVariableID = val.getLongValue();
            String strLocalVariable = getStringValue(strLocalVariableID);
            if (strLocalVariable.equals("test string")) {
                logWriter.println("=> "+varInfos[2].getName() + " = "
                        + strLocalVariable);
                logWriter.println("");
            } else {
                logWriter
                        .printError("Unexpected value of string variable: "
                                + strLocalVariable
                                + " instead of: "
                                + "test string");
                logWriter.printError("");
                success = false;
            }
        } else {
            logWriter.printError("Unexpected tag of variable: "
                    + JDWPConstants.Tag.getName(val.getTag()) + " instead of: string");
            logWriter.printError("");
            success = false;
        }
        assertTrue(logWriter.getErrorMessage(), success);
    }
View Full Code Here

        //System.err.println("testField: "+fieldInfo.toString());
        // if field has primitive type
        if (fieldInfo.getSignature().length()>=1) {
            switch (fieldInfo.getSignature().charAt(0)) {
            case 'B': // byte
                testField(classID, fieldInfo, new Value(Byte.MIN_VALUE));
                testField(classID, fieldInfo, new Value(Byte.MAX_VALUE));
                testField(classID, fieldInfo, new Value((byte)0));
                break;
            case 'C': // char
                testField(classID, fieldInfo, new Value((char)Character.MAX_VALUE));
                testField(classID, fieldInfo, new Value((char)Character.MIN_VALUE));
                break;
            case 'F': // float
                testField(classID, fieldInfo, new Value((float)Float.MIN_VALUE));
                testField(classID, fieldInfo, new Value((float)Float.MAX_VALUE));
                testField(classID, fieldInfo, new Value((float)Float.NaN));
                testField(classID, fieldInfo, new Value((float)Float.NEGATIVE_INFINITY));
                testField(classID, fieldInfo, new Value((float)Float.POSITIVE_INFINITY));
                testField(classID, fieldInfo, new Value((float)0));
                break;
            case 'D': // double
                testField(classID, fieldInfo, new Value((double)Double.MIN_VALUE));
                testField(classID, fieldInfo, new Value((double)Double.MAX_VALUE));
                testField(classID, fieldInfo, new Value((double)Double.NaN));
                testField(classID, fieldInfo, new Value((double)Double.NEGATIVE_INFINITY));
                testField(classID, fieldInfo, new Value((double)Double.POSITIVE_INFINITY));
                testField(classID, fieldInfo, new Value((double)0));
                break;
            case 'I': // int
                testField(classID, fieldInfo, new Value((int)Integer.MIN_VALUE));
                testField(classID, fieldInfo, new Value((int)Integer.MAX_VALUE));
                testField(classID, fieldInfo, new Value((int)0));
                break;
            case 'J': // long
                testField(classID, fieldInfo, new Value((long)Long.MIN_VALUE));
                testField(classID, fieldInfo, new Value((long)Long.MAX_VALUE));
                testField(classID, fieldInfo, new Value((long)0));
                break;
            case 'S': // short
                testField(classID, fieldInfo, new Value((short)Short.MIN_VALUE));
                testField(classID, fieldInfo, new Value((short)Short.MAX_VALUE));
                testField(classID, fieldInfo, new Value((short)0));
                break;
            case 'Z': // boolean
                testField(classID, fieldInfo, new Value((boolean)Boolean.FALSE.booleanValue()));
                testField(classID, fieldInfo, new Value((boolean)Boolean.TRUE.booleanValue()));
                break;
            }
        }
    }
View Full Code Here

        reply = debuggeeWrapper.vmMirror.performCommand(packet);
        checkReplyPacket(reply, "ClassType::GetValues command");
       
        int fields = reply.getNextValueAsInt();
        assertEquals("ClassType::SetValues returne invalid fields number,", 1, fields);
        Value returnedValue = reply.getNextValueAsValue();
        assertEquals("ClassType::SetValues returne invalid returned value,", value, returnedValue);
        logWriter.println("==> testField: OK");
    }
View Full Code Here

        ReplyPacket getValuesReply = debuggeeWrapper.vmMirror.performCommand(getValuesCommand);
        checkReplyPacket(getValuesReply, "ReferenceType::GetValues command");
       
        //int returnedValuesNumber =
            getValuesReply.getNextValueAsInt();
        Value fieldValue = getValuesReply.getNextValueAsValue();
        byte fieldTag = fieldValue.getTag();
        logWriter.println("=> Returned value tag = " + fieldTag
            + "(" + JDWPConstants.Tag.getName(fieldTag) + ")");
        assertEquals("Invalid value tag is returned,", JDWPConstants.Tag.INT_TAG, fieldTag
                , JDWPConstants.Tag.getName(JDWPConstants.Tag.INT_TAG)
                , JDWPConstants.Tag.getName(fieldTag));
       
        int intValue = fieldValue.getIntValue();
        logWriter.println("=> Returned value = " + intValue);
        // here expected value = 99 (staticIntField)
        int expectedIntValue = 99;
        assertEquals("Invalid int value,", expectedIntValue, intValue);
View Full Code Here

            synchronizer.sendMessage("TO_FINISH");
            assertEquals("ReferenceType::GetValues command returned unexpected number of values,",
                    1, returnedValuesNumber);
        }

        Value checkedObjectFieldValue = getValuesReply.getNextValueAsValue();
        byte checkedObjectFieldTag = checkedObjectFieldValue.getTag();
        logWriter.println("=> Returned field value tag for checked object= " + checkedObjectFieldTag
            + "(" + JDWPConstants.Tag.getName(checkedObjectFieldTag) + ")");
        if ( checkedObjectFieldTag != JDWPConstants.Tag.OBJECT_TAG ) {
            finalSyncMessage = "TO_FINISH";
            printErrorAndFail(
            "ReferenceType::GetValues command returned unexpected tag: " +
            checkedObjectFieldTag + "(" +
            JDWPConstants.Tag.getName(checkedObjectFieldTag) + ")" +
            ", Expected tag = " + JDWPConstants.Tag.OBJECT_TAG + "(OBJECT_TAG)");
        }
       
        long checkedObjectID = checkedObjectFieldValue.getLongValue();
        logWriter.println("=> Returned checked ObjectID = " + checkedObjectID);

        logWriter.println
            ("\n=> CHECK: send " + thisCommandName + " for checked ObjectID: INVALID_CLASS is expected...");
View Full Code Here

        int returnedValuesNumber = getValuesReply.getNextValueAsInt();
        logWriter.println("=> Returned values number = " + returnedValuesNumber);
        assertEquals("ReferenceType::GetValues returned invalid values number,",
                1, returnedValuesNumber);

        Value objectFieldValueToSet = getValuesReply.getNextValueAsValue();
        byte objectFieldValueToSetTag = objectFieldValueToSet.getTag();
        logWriter.println
            ("=> Returned field value tag for checked object= " + objectFieldValueToSetTag
            + "(" + JDWPConstants.Tag.getName(objectFieldValueToSetTag) + ")");
        assertEquals("ReferenceType::GetValues returned invalid value tag,",
                JDWPConstants.Tag.OBJECT_TAG, objectFieldValueToSetTag,
                JDWPConstants.Tag.getName(JDWPConstants.Tag.OBJECT_TAG),
                JDWPConstants.Tag.getName(objectFieldValueToSetTag));

        long objectFieldID = objectFieldValueToSet.getLongValue();
        logWriter.println("=> Returned ObjectID = " + objectFieldID);
        logWriter.println
            ("=> CHECK: send " + thisCommandName
            + " for Debuggee class with value which has other referenceType than field to set...");
View Full Code Here

                JDWPConstants.Tag.CLASS_OBJECT_TAG,
                JDWPConstants.Tag.CLASS_LOADER_TAG,
        };
        logWriter.println("=> CHECK for returned values...");
        for (int i=0; i < returnedValuesNumber; i++) {
            Value fieldValue = checkedReply.getNextValueAsValue();
            byte fieldTag = fieldValue.getTag();
            logWriter.println
            ("\n=> Check for returned value for field: " + checkedFieldNames[i] + " ...");
            logWriter.println("=> Returned value tag = " + fieldTag
                + "(" + JDWPConstants.Tag.getName(fieldTag) + ")");
            if ( (fieldTag != expectedFieldTags[i]) && (fieldTag != JDWPConstants.Tag.OBJECT_TAG) ) {
                logWriter.println("\n## FAILURE:  Unexpected value tag is returned");
                logWriter.println("## Expected value tag = " + expectedFieldTags[i]
                + "(" + JDWPConstants.Tag.getName(expectedFieldTags[i]) + ")"
                + " or = " + JDWPConstants.Tag.OBJECT_TAG
                + "(" + JDWPConstants.Tag.getName(JDWPConstants.Tag.OBJECT_TAG) + ")");
                //testStatus = testStatusFailed;
                fail("Unexpected value tag is returned");
            }
            long objectIDValue = fieldValue.getLongValue();
            logWriter.println("=> ObjectId value = " + objectIDValue);
            assertEquals("Invalid objectID value is returned,", 0, objectIDValue);
        }

        assertAllDataRead(checkedReply);
View Full Code Here

        packet.setNextValueAsInt(0);
        logWriter.println(" Send ClassType.InvokeMethod");
        reply = debuggeeWrapper.vmMirror.performCommand(packet);
        checkReplyPacket(reply, "ClassType::InvokeMethod command");

        Value returnValue = reply.getNextValueAsValue();
        assertNotNull("Returned value is null", returnValue);
        logWriter.println(" ClassType.InvokeMethod: returnValue=" + returnValue);

        TaggedObject exception = reply.getNextValueAsTaggedObject();
        assertNotNull("ClassType::InvokeMethod returned null exception",
View Full Code Here

TOP

Related Classes of org.apache.harmony.jpda.tests.framework.jdwp.Value

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.