/******************************************************************************* * Copyright (c) 2000, 2012 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.debug.jdi.tests; import java.util.List; import com.sun.jdi.Type; /** * Tests for JDI com.sun.jdi.VirtualMachine.classesByName */ public class ClassesByNameTest extends AbstractJDITest { /** * Creates a new test. */ public ClassesByNameTest() { super(); } /** * Init the fields that are used by this test only. */ @Override public void localSetUp() { } /** * Run all tests and output to standard output. * @param args */ public static void main(java.lang.String[] args) { new ClassesByNameTest().runSuite(args); } /** * Gets the name of the test case. * @see junit.framework.TestCase#getName() */ @Override public String getName() { return "com.sun.jdi.VirtualMachine.classesByName"; } /** * Test that there is a class object for 'int[]' */ public void testJDIIntArray() { List<?> classes = fVM.classesByName("int[]"); assertTrue( "Should be a class for int[]", classes.size() == 1 && ((Type) classes.get(0)).signature().equals("[I")); } /** * Test that there is a class object for 'int[][]' */ public void testJDIIntDoubleArray() { List<?> classes = fVM.classesByName("int[][]"); assertTrue( "Should be a class for int[][]", classes.size() == 1 && ((Type) classes.get(0)).signature().equals("[[I")); } /** * tests signature for an array of long values */ public void testJDILongArray() { List<?> classes = fVM.classesByName("long[]"); assertTrue( "Should be a class for long[]", classes.size() == 1 && ((Type) classes.get(0)).signature().equals("[J")); } /** * tests signature of a two dimensional array of long values */ public void testJDILongDoubleArray() { List<?> classes = fVM.classesByName("long[][]"); assertTrue( "Should be a class for long[][]", classes.size() == 1 && ((Type) classes.get(0)).signature().equals("[[J")); } /** * Test that there is a class object for 'java.lang.String[]' */ public void testJDIStringArray() { List<?> classes = fVM.classesByName("java.lang.String[]"); assertTrue( "Should be a class for java.lang.String[]", classes.size() == 1 && ((Type) classes.get(0)).signature().equals( "[Ljava/lang/String;")); } /** * Test that there is a class object for 'java.lang.String' */ public void testJDIString() { List<?> classes = fVM.classesByName("java.lang.String"); assertTrue( "Should be a class for java.lang.String", classes.size() == 1 && ((Type) classes.get(0)).signature().equals( "Ljava/lang/String;")); } }