/* * * * Copyright 1990-2009 Sun Microsystems, Inc. All Rights Reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License version * 2 only, as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License version 2 for more details (a copy is * included at /legal/license.txt). * * You should have received a copy of the GNU General Public License * version 2 along with this work; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA * * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa * Clara, CA 95054 or visit www.sun.com if you need additional * information or have any questions. */ package com.sun.j2me.content; import com.sun.midp.midlet.MIDletSuite; import com.sun.midp.i3test.TestCase; import javax.microedition.content.Registry; import javax.microedition.content.ContentHandler; /** * Test the internal functions of RegistryImpl. */ public class TestRegistryImpl extends ExtendedTestCase { /** Constant application ID for testing. */ private static final String SUITE_ID = "GraphicalInstaller"; /** Constant classname for testing. */ private static final String CLASSNAME = "classname"; /** The name and ID of the GraphicalInstaller. */ private static final String GS_NAME = "GraphicalInstaller"; /** The suiteId of the GraphicalInstaller. */ private static final int GS_SUITEID = MIDletSuite.INTERNAL_SUITE_ID; /** The class of the GraphicalInstaller. */ private static final String GS_CLASSNAME = "com.sun.midp.installer.GraphicalInstaller"; /** The types registered for the GraphicalInstaller. */ private String[] types = {"text/vnd.sun.j2me.app-descriptor", "application/java-archive"}; /** The suffixes registered for the GraphicalInstaller. */ private String[] suffixes = {".jad", ".jar"}; /** The registry to use. */ RegistryImpl registry; /** * Run the tests. */ public void runTests() { setup(); test001(); test002(); } /** * Setup the registry. */ void setup() { registry = getRegistry(); } /** * Test that the built-in suite is registered. * The Graphical Installer must be present. */ void test001() { declare("Verify built-in registration for GraphicalInstaller"); try { AppProxy app = AppProxy.getCurrent().forClass(GS_CLASSNAME); ContentHandlerImpl ch = registry.getServer(app); assertNotNull("Verify GraphicalInstaller is present", ch); if (ch != null) { assertEquals("Verify getID", GS_NAME, ch.getID()); assertEquals("Verify classname", GS_CLASSNAME, ch.classname); assertEquals("Verify getTypeCount", 2, ch.getTypeCount()); assertEquals("Verify Type1", types[0], ch.getType(0)); assertEquals("Verify Type2", types[1], ch.getType(1)); assertEquals("Verify getSuffixCount", 2, ch.getSuffixCount()); assertEquals("Verify Suffix1", suffixes[0], ch.getSuffix(0)); assertEquals("Verify Suffix2", suffixes[1], ch.getSuffix(1)); assertEquals("Verify Action", 2, ch.getActionCount()); assertEquals("Verify Action Name Maps", 3, ch.getActionNameMapCount()); } } catch (ClassNotFoundException cnfe) { fail("Unexpected exception"); cnfe.printStackTrace(); } } /** * Test that the value of the System property "CHAPI-Version" * is "1.0". */ void test002() { declare("Check system properties"); String ver = System.getProperty("microedition.chapi.version"); assertEquals("Verify microedition.chapi.version", "1.0", ver); } }