1/* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 */ 18 19/** 20 * @author Anatoly F. Bondarenko 21 */ 22 23/** 24 * Created on 17.03.2005 25 */ 26package org.apache.harmony.jpda.tests.jdwp.ObjectReference; 27 28import org.apache.harmony.jpda.tests.share.JPDADebuggeeSynchronizer; 29import org.apache.harmony.jpda.tests.share.SyncDebuggee; 30 31public class SetValues003Debuggee extends SyncDebuggee { 32 33 static String passedStatus = "PASSED"; 34 static String failedStatus = "FAILED"; 35 static String status = passedStatus; 36 37 static SetValues003Debuggee setValues003DebuggeeObject; 38 39 SetValues003Debuggee_ExtraClass objectField; 40 static SetValues003Debuggee_ExtraClass objectFieldCopy; 41 42 public void run() { 43 logWriter.println("--> Debuggee: SetValues003Debuggee: START"); 44 setValues003DebuggeeObject = new SetValues003Debuggee(); 45 setValues003DebuggeeObject.objectField = new SetValues003Debuggee_ExtraClass(); 46 objectFieldCopy = setValues003DebuggeeObject.objectField; 47 48 logWriter.println("\n--> Debuggee: SetValues003Debuggee: Before ObjectReference::SetValues command:"); 49 logWriter.println("--> objectField value = " + setValues003DebuggeeObject.objectField); 50 logWriter.println("--> value to set = " + setValues003DebuggeeObject); 51 52 synchronizer.sendMessage(JPDADebuggeeSynchronizer.SGNL_READY); 53 synchronizer.receiveMessage(JPDADebuggeeSynchronizer.SGNL_CONTINUE); 54 55 logWriter.println("\n--> Debuggee: SetValues003Debuggee: After ObjectReference::SetValues command:"); 56 logWriter.println("--> objectField value = " + setValues003DebuggeeObject.objectField); 57 if ( ! objectFieldCopy.equals(setValues003DebuggeeObject.objectField) ) { 58 logWriter.println("##> Debuggee: FAILURE: Unexpected value"); 59 logWriter.println("##> Expected value = " + objectFieldCopy); 60 status = failedStatus; 61 } else { 62 logWriter.println("--> Debuggee: PASSED: Expected value"); 63 } 64 65 if ( status.equals(failedStatus) ) { 66 logWriter.println("\n##> Debuggee: Check status = FAILED"); 67 } else { 68 logWriter.println("\n--> Debuggee: Check status = PASSED"); 69 } 70 71 logWriter.println("--> Debuggee: Send check status for SetValues003Test...\n"); 72 synchronizer.sendMessage(status); 73 74 logWriter.println("--> Debuggee: SetValues003Debuggee: FINISH"); 75 } 76 77 public static void main(String [] args) { 78 runDebuggee(SetValues003Debuggee.class); 79 } 80} 81 82class SetValues003Debuggee_ExtraClass { 83 84} 85