You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by te...@apache.org on 2008/05/27 00:21:57 UTC
svn commit: r660326 [15/17] - in /harmony/enhanced/microemulator: ./
microemu-android/ microemu-android/src/ microemu-android/src/org/
microemu-android/src/org/microemu/ microemu-android/src/org/microemu/android/
microemu-android/src/org/microemu/andro...
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/DynamicallyLoadedStatus.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/DynamicallyLoadedStatus.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/DynamicallyLoadedStatus.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/DynamicallyLoadedStatus.java Mon May 26 15:20:19 2008
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org;
+
+/**
+ * @author vlads
+ *
+ */
+public class DynamicallyLoadedStatus {
+
+ static boolean runnerSuccess = false;
+
+ static {
+ runnerSuccess = false;
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/DynamicallyLoadedStatus.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/OverrideMicroeditionClient.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/OverrideMicroeditionClient.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/OverrideMicroeditionClient.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/OverrideMicroeditionClient.java Mon May 26 15:20:19 2008
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org;
+
+import javax.microedition.NotAccessible;
+
+/**
+ * @author vlads
+ *
+ */
+public class OverrideMicroeditionClient implements Runnable {
+
+ public void run() {
+ NotAccessible.doStuff();
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/OverrideMicroeditionClient.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestMain.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestMain.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestMain.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestMain.java Mon May 26 15:20:19 2008
@@ -0,0 +1,110 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org;
+
+public class TestMain implements Runnable {
+
+ public static boolean verbose = false;
+
+ public static void main(String[] args) {
+ (new TestMain()).run();
+ }
+
+ public void run() {
+
+ if (System.getProperty("test.verbose") != null) {
+ verbose = true;
+ }
+
+ if (verbose) {
+ System.out.println("ClassLoader " + this.getClass().getClassLoader().hashCode() + " TestMain");
+ }
+
+ assertProperty("test.property1", "1");
+ assertProperty("microedition.platform", null);
+
+ if (verbose) {
+ System.out.println("System.getProperty OK");
+ }
+
+ (new TestResourceLoad()).run();
+ (new TestStaticInitializer()).run();
+
+ try {
+ (new OverrideMicroeditionClient()).run();
+ throw new RuntimeException("Can execute OverrideMicroeditionClient");
+ } catch (Throwable e) {
+ if (e instanceof NoClassDefFoundError) {
+ if (verbose) {
+ System.out.println("no acess to java.microedition in MIDlet jar OK " + e.toString());
+ }
+ } else {
+ throw new RuntimeException("Can acess java.microedition from MIDlet jar " + e.toString());
+ }
+ }
+
+ try {
+ Class.forName("javax.microedition.NotAccessible");
+ throw new RuntimeException("Can acess java.microedition from MIDlet jar using Class.forName");
+ } catch (ClassNotFoundException e) {
+ if (verbose) {
+ System.out.println("no acess to java.microedition in MIDlet jar OK " + e.toString());
+ }
+ }
+
+ String runnerName = "org.DynamicallyLoadedRunner";
+ Class drunner;
+ try {
+ drunner = Class.forName(runnerName);
+ if (verbose) {
+ System.out.println("Class.forName("+ runnerName +") OK ");
+ }
+ } catch (ClassNotFoundException e) {
+ throw new RuntimeException("Can't load "+ runnerName +" from MIDlet jar using Class.forName", e);
+ }
+ Object r;
+ try {
+ r = drunner.newInstance();
+ if (verbose) {
+ System.out.println("Class.forName("+ runnerName +").newInstance() OK ");
+ }
+ } catch (Exception e) {
+ throw new RuntimeException("Can't create "+ runnerName +" from MIDlet jar using Class.forName", e);
+ }
+
+ ((Runnable)r).run();
+ if (!DynamicallyLoadedStatus.runnerSuccess) {
+ throw new RuntimeException("Can execute DynamicallyLoadedRunner from MIDlet jar" );
+ }
+
+
+ System.out.println("All tests OK");
+ }
+
+ private void assertProperty(String key, String expected) {
+ String value = System.getProperty(key);
+ if (verbose) {
+ System.out.println("Got System.getProperty " + key + " value [" + value + "]");
+ }
+ if (((expected == null) && (value != null)) || ((expected != null) && (!expected.equals(value)))) {
+ throw new RuntimeException("Unexpected property value " + value + " expected " + expected);
+ }
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestMain.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestResourceLoad.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestResourceLoad.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestResourceLoad.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestResourceLoad.java Mon May 26 15:20:19 2008
@@ -0,0 +1,119 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+/**
+ * This class illustrate Resource usage paterns commonly used in MIDlet and not aceptable in Java SE application
+ * @author vlads
+ */
+
+public class TestResourceLoad implements Runnable {
+
+ public void loadStringsUsingSystemClassLoaded() {
+ String resourceName;
+ String expected;
+
+ resourceName = "/app-data.txt";
+ expected = "private app-data";
+ verifyLoadStrings("".getClass().getResourceAsStream(resourceName), "\"\".getClass() " + resourceName, expected);
+ verifyLoadStrings(String.class.getResourceAsStream(resourceName), "String.class. " + resourceName, expected);
+
+ }
+
+ public void accessTest() {
+ String resourceName;
+ String expected;
+
+ resourceName = "/container-internal.txt";
+ verifyLoadStrings(this.getClass().getResourceAsStream(resourceName), "this.getClass() " + resourceName, null);
+ verifyLoadStrings("".getClass().getResourceAsStream(resourceName), "\"\".getClass() " + resourceName, null);
+
+ resourceName = "/app-data.txt";
+ expected = "private app-data";
+ verifyLoadStrings(this.getClass().getResourceAsStream(resourceName), "this.getClass() " + resourceName, expected);
+ verifyLoadStrings("".getClass().getResourceAsStream(resourceName), "\"\".getClass() " + resourceName, expected);
+ }
+
+ public void multipleResources() {
+
+ String resourceName = "/strings.txt";
+ String expected = "proper MIDlet resources strings";
+ verifyLoadStrings(this.getClass().getResourceAsStream(resourceName), "this.getClass() " + resourceName, expected);
+ verifyLoadStrings("".getClass().getResourceAsStream(resourceName), "\"\".getClass() " + resourceName, expected);
+
+ }
+
+ public void packageResources() {
+
+ String resourceName = "resource-package.txt";
+ String expected = "package relative";
+ verifyLoadStrings(TestResourceLoad.class.getResourceAsStream(resourceName), "this.class " + resourceName,
+ expected);
+ }
+
+ private void verifyLoadStrings(InputStream inputstream, String resourceName, String expected) {
+ if (inputstream == null) {
+ if (expected == null) {
+ if (TestMain.verbose) {
+ System.out.println("OK - Resource not found " + resourceName);
+ }
+ return;
+ }
+ throw new RuntimeException("Resource not found " + resourceName);
+ } else {
+ if (expected == null) {
+ throw new RuntimeException("Can access resource " + resourceName);
+ }
+ }
+ try {
+ BufferedReader r = new BufferedReader(new InputStreamReader(inputstream));
+ String value = r.readLine();
+ if (!expected.equals(value)) {
+ throw new RuntimeException("Unexpected resource " + resourceName + " value [" + value + "]\nexpected [" + expected + "]");
+ }
+ } catch (IOException e) {
+ throw new RuntimeException("Resource read error " + resourceName, e);
+ } finally {
+ try {
+ inputstream.close();
+ } catch (IOException ignore) {
+ }
+ }
+ }
+
+ public void run() {
+
+ if (TestMain.verbose) {
+ System.out.println("ClassLoader " + this.getClass().getClassLoader().hashCode() + " TestResourceLoad");
+ }
+
+ loadStringsUsingSystemClassLoaded();
+ multipleResources();
+ accessTest();
+ packageResources();
+
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestResourceLoad.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestStaticInitializer.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestStaticInitializer.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestStaticInitializer.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestStaticInitializer.java Mon May 26 15:20:19 2008
@@ -0,0 +1,47 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org;
+
+/**
+ * @author vlads
+ *
+ */
+public class TestStaticInitializer implements Runnable {
+
+ private static int count = 0;
+
+ static {
+ count = 1;
+ }
+
+
+ public void run() {
+
+ if (count != 1) {
+ throw new RuntimeException("Same class is used again " + count);
+ }
+
+ if (TestMain.verbose) {
+ System.out.println("Static initializer OK");
+ }
+
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/TestStaticInitializer.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/CatchThrowable.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/CatchThrowable.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/CatchThrowable.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/CatchThrowable.java Mon May 26 15:20:19 2008
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.catchBlock;
+
+/**
+ * @author vlads
+ *
+ */
+public class CatchThrowable extends RunnableBase {
+
+ public void run() {
+ try {
+ Object o = null;
+ o.getClass();
+ } catch (Throwable e) {
+ if (verbose) {
+ System.out.println("caught " + e.getClass().getName());
+ }
+ }
+
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/CatchThrowable.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/RunnableBase.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/RunnableBase.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/RunnableBase.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/RunnableBase.java Mon May 26 15:20:19 2008
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.catchBlock;
+
+/**
+ * @author vlads
+ *
+ */
+public abstract class RunnableBase implements Runnable {
+
+ public boolean verbose = false;
+
+ public RunnableBase() {
+ if (System.getProperty("test.verbose") != null) {
+ verbose = true;
+ }
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/java/org/catchBlock/RunnableBase.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/app-data.txt
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/app-data.txt?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/app-data.txt (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/app-data.txt Mon May 26 15:20:19 2008
@@ -0,0 +1 @@
+private app-data
\ No newline at end of file
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/app-data.txt
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/org/resource-package.txt
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/org/resource-package.txt?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/org/resource-package.txt (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/org/resource-package.txt Mon May 26 15:20:19 2008
@@ -0,0 +1 @@
+package relative
\ No newline at end of file
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/org/resource-package.txt
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/strings.txt
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/strings.txt?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/strings.txt (added)
+++ harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/strings.txt Mon May 26 15:20:19 2008
@@ -0,0 +1 @@
+proper MIDlet resources strings
\ No newline at end of file
Propchange: harmony/enhanced/microemulator/microemu-tests/bytecode-test-app/src/main/resources/strings.txt
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2 tests JUnit.launch
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2%20tests%20JUnit.launch?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2 tests JUnit.launch (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2 tests JUnit.launch Mon May 26 15:20:19 2008
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/microemu-test-midlet"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="microemu-test-midlet"/>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="org.microemu.tests.UnitTestsMIDLet"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.microemu.app.Main"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="4"/>
+</listAttribute>
+</launchConfiguration>
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2 tests manual.launch
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2%20tests%20manual.launch?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2 tests manual.launch (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/me-2 tests manual.launch Mon May 26 15:20:19 2008
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/microemu-javase-swing/src/main/java/org/microemu/app/Main.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
+<listAttribute key="org.eclipse.debug.ui.favoriteGroups">
+<listEntry value="org.eclipse.debug.ui.launchGroup.debug"/>
+<listEntry value="org.eclipse.debug.ui.launchGroup.run"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.microemu.app.Main"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="org.microemu.tests.MainTestMIDlet"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="microemu-test-midlet"/>
+</launchConfiguration>
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/microemu-test-midlet.jad
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/microemu-test-midlet.jad?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/microemu-test-midlet.jad (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/microemu-test-midlet.jad Mon May 26 15:20:19 2008
@@ -0,0 +1,8 @@
+MIDlet-Jar-URL: microemu-test-midlet.jar
+MIDlet-Jar-Size: 13146
+MIDlet-Name: microemu-test
+MIDlet-Vendor: MicroEmulator Team
+MIDlet-Version: 2.0.0
+MIDlet-1: MainTest, , org.microemu.tests.MainTestMIDlet
+MicroEdition-Configuration: CLDC-1.1
+MicroEdition-Profile: MIDP-2.0
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/pom.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/pom.xml?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/pom.xml (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/pom.xml Mon May 26 15:20:19 2008
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0">
+ <!-- @version $Revision: 1626 $ ($Author: vlads $) $Date: 2008-03-04 21:47:36 -0500 (Tue, 04 Mar 2008) $ -->
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.microemu</groupId>
+ <artifactId>microemu-tests</artifactId>
+ <version>2.0.3-SNAPSHOT</version><!--me-version-->
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
+ <artifactId>microemu-test-midlet</artifactId>
+ <name>microemu-test-midlet</name>
+
+ <description>microemu-test-midlet</description>
+
+ <repositories>
+
+ <repository>
+ <id>pyx4me-web</id>
+ <url>http://www.pyx4me.com/maven2</url>
+ </repository>
+
+ </repositories>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.microemu</groupId>
+ <artifactId>microemu-javase-swing</artifactId>
+ <version>${project.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>com.pyx4me</groupId>
+ <artifactId>cldcunit</artifactId>
+ <version>${pyx4meVersion}</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>com.pyx4me</groupId>
+ <artifactId>cldcunit-se</artifactId>
+ <version>${pyx4meVersion}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.3</source>
+ <target>1.1</target>
+ <compilerArguments>
+ <bootclasspath>${basedir}/../../api/cldcapi11/target/cldcapi11-${project.version}.jar${path.separator}${basedir}/../../api/midpapi20/target/midpapi20-${project.version}.jar</bootclasspath>
+ </compilerArguments>
+ </configuration>
+ </plugin>
+
+ <!-- Add EclipseME nature to the generated project-->
+ <!--
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-eclipse-plugin</artifactId>
+ <configuration>
+ <buildcommands>
+ <buildcommand>org.eclipse.jdt.core.javabuilder</buildcommand>
+ <buildcommand>eclipseme.core.preverifier</buildcommand>
+ </buildcommands>
+ <projectnatures>
+ <projectnature>org.eclipse.jdt.core.javanature</projectnature>
+ <projectnature>eclipseme.core.nature</projectnature>
+ </projectnatures>
+ <classpathContainers>
+ <classpathContainer>J2MELIB</classpathContainer>
+ <classpathContainer>org.eclipse.jdt.launching.JRE_CONTAINER</classpathContainer>
+ </classpathContainers>
+ </configuration>
+ </plugin>
+ -->
+
+ <plugin>
+ <groupId>net.sf.jour</groupId>
+ <artifactId>jour-maven-plugin</artifactId>
+ <version>${jourVersion}</version>
+ <executions>
+ <execution>
+ <phase>test-compile</phase>
+ <goals>
+ <goal>instrument</goal>
+ </goals>
+ <configuration>
+ <jourConfig>${basedir}/process-test-classes.jour.xml</jourConfig>
+ <classesDirectory>${project.build.testOutputDirectory}</classesDirectory>
+ <output>test-classes</output>
+ </configuration>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>com.pyx4me</groupId>
+ <artifactId>cldcunit-instrument</artifactId>
+ <version>${pyx4meVersion}</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+
+ <!-- Create application loadable on the phone -->
+ <plugin>
+ <groupId>com.pyx4me</groupId>
+ <artifactId>j2me-maven-plugin</artifactId>
+ <version>${pyx4meVersion}</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>package</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <!--wtkHome>${env.WTK_HOME}</wtkHome-->
+ <useWtkLibs>false</useWtkLibs>
+ <proguard>true</proguard>
+ <obfuscate>false</obfuscate>
+ <proguardPreverify>true</proguardPreverify>
+ <proguardOptions>
+ <options>
+ <option>-overloadaggressively</option>
+ <option>-dontoptimize</option>
+ <option>-allowaccessmodification</option>
+ <option>-dontusemixedcaseclassnames</option>
+ <option>-keep public interface javax.microedition.*</option>
+ </options>
+ </proguardOptions>
+ <test>true</test>
+ <midlets>
+ <MIDlet>
+ <name>MainTest</name>
+ <class>org.microemu.tests.MainTestMIDlet</class>
+ </MIDlet>
+ <MIDlet>
+ <name>UnitTests</name>
+ <class>org.microemu.tests.UnitTestsMIDLet</class>
+ <test>true</test>
+ </MIDlet>
+ </midlets>
+ <libs>
+ <lib>${basedir}/../../api/cldcapi11/target/cldcapi11-${project.version}.jar</lib>
+ <lib>${basedir}/../../api/midpapi20/target/midpapi20-${project.version}.jar</lib>
+ </libs>
+ <dependencies>
+ <dependency>
+ <groupId>org.microemu</groupId>
+ <artifactId>microemu-javase-swing</artifactId>
+ <exclude>true</exclude>
+ <withTrail>true</withTrail>
+ </dependency>
+ </dependencies>
+ </configuration>
+ <!--
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.proguard</groupId>
+ <artifactId>proguard</artifactId>
+ <version>3.10.1</version>
+ <scope>runtime</scope>
+ </dependency>
+ </dependencies>
+ -->
+ </plugin>
+
+ <!-- install jar in project site -->
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>site-copy-artifacts</id>
+ <phase>site</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <tasks>
+ <copy overwrite="true"
+ file="${project.build.directory}/${artifactId}-${version}-test.jar"
+ tofile="${project.build.directory}/site/${artifactId}-${version}-test.jar"/>
+ <copy overwrite="true"
+ file="${project.build.directory}/${artifactId}-${version}-test.jad"
+ tofile="${project.build.directory}/site/${artifactId}-${version}-test.jad"/>
+ </tasks>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ </plugins>
+ </build>
+
+
+</project>
\ No newline at end of file
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/process-test-classes.jour.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/process-test-classes.jour.xml?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/process-test-classes.jour.xml (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/process-test-classes.jour.xml Mon May 26 15:20:19 2008
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<jour xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="jour.xsd" debug="false">
+ <aspect descr="TestCaseReflectionData" type="com.pyx4me.cldcunit.TestCaseReflectionDataInstrumentor" enabled="true">
+ <typedef>*.*Test</typedef>
+ <!--pointcut expr="* junit.framework.TestCase=>test*()"/-->
+ <pointcut expr="* test*()"/>
+ <pointcut expr="junit.framework.Test suite()"/>
+ </aspect>
+</jour>
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/process-test-classes.jour.xml
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRFacade.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRFacade.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRFacade.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRFacade.java Mon May 26 15:20:19 2008
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package javax.microedition.io.newjsr;
+
+/**
+ * @author vlads
+ *
+ * To test if MIDlet can override javax.microedition package on the device.
+ */
+public class NewJSRFacade {
+
+ private static class WorkerImpl implements NewJSRInterface {
+
+ public String doStuff(String data) {
+ System.out.println("Working on " + data);
+ return data;
+ }
+
+ }
+
+ public static NewJSRInterface createWorker() {
+ return new WorkerImpl();
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRFacade.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRInterface.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRInterface.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRInterface.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRInterface.java Mon May 26 15:20:19 2008
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package javax.microedition.io.newjsr;
+
+/**
+ * @author vlads
+ *
+ * To test if MIDlet can override javax.microedition package on the device.
+ *
+ */
+public interface NewJSRInterface {
+
+ public String doStuff(String data);
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/io/newjsr/NewJSRInterface.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Facade.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Facade.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Facade.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Facade.java Mon May 26 15:20:19 2008
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package javax.microedition.newjsr2;
+
+/**
+ * @author vlads
+ *
+ * To test if MIDlet can override javax.microedition package on the device.
+ */
+public class NewJSR2Facade {
+
+ private static class WorkerImpl implements NewJSR2Interface {
+
+ public String doStuff(String data) {
+ System.out.println("Working on " + data);
+ return data;
+ }
+
+ }
+
+ public static NewJSR2Interface createWorker() {
+ return new WorkerImpl();
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Facade.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Interface.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Interface.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Interface.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Interface.java Mon May 26 15:20:19 2008
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package javax.microedition.newjsr2;
+
+/**
+ * @author vlads
+ *
+ * To test if MIDlet can override javax.microedition package on the device.
+ *
+ */
+public interface NewJSR2Interface {
+
+ public String doStuff(String data);
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/javax/microedition/newjsr2/NewJSR2Interface.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsCanvas.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsCanvas.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsCanvas.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsCanvas.java Mon May 26 15:20:19 2008
@@ -0,0 +1,64 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Canvas;
+import javax.microedition.lcdui.Command;
+import javax.microedition.lcdui.CommandListener;
+import javax.microedition.lcdui.Displayable;
+import javax.microedition.lcdui.Graphics;
+
+public abstract class BaseTestsCanvas extends Canvas implements CommandListener, DisplayableUnderTests {
+
+ protected boolean fullScreenMode = false;
+
+ protected static final Command fullScreenModeCommand = new Command("Full Screen", Command.ITEM, 5);
+
+ public BaseTestsCanvas(String title) {
+ super();
+ super.setTitle(title);
+
+ addCommand(DisplayableUnderTests.backCommand);
+ addCommand(fullScreenModeCommand);
+ setCommandListener(this);
+ }
+
+ public int writeln(Graphics g, int line, String s) {
+ int y = (g.getFont().getHeight() + 1) * line;
+ g.drawString(s, 0, y, Graphics.LEFT | Graphics.TOP);
+ return y;
+ }
+
+ public void commandAction(Command c, Displayable d) {
+ if (d == this) {
+ if (c == DisplayableUnderTests.backCommand) {
+ Manager.midletInstance.showMainPage();
+ } else if (c == fullScreenModeCommand) {
+ setFullScreenMode(!fullScreenMode);
+ repaint();
+ }
+ }
+ }
+
+ public void setFullScreenMode(boolean mode) {
+ fullScreenMode = mode;
+ super.setFullScreenMode(mode);
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsCanvas.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsForm.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsForm.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsForm.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsForm.java Mon May 26 15:20:19 2008
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Command;
+import javax.microedition.lcdui.CommandListener;
+import javax.microedition.lcdui.Displayable;
+import javax.microedition.lcdui.Form;
+
+public abstract class BaseTestsForm extends Form implements CommandListener, DisplayableUnderTests {
+
+ public BaseTestsForm(String title) {
+ super(title);
+
+ addCommand(DisplayableUnderTests.backCommand);
+ setCommandListener(this);
+ }
+
+ public void commandAction(Command c, Displayable d) {
+ if (d == this) {
+ if (c == backCommand) {
+ Manager.midletInstance.showMainPage();
+ }
+ }
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/BaseTestsForm.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/DisplayableUnderTests.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/DisplayableUnderTests.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/DisplayableUnderTests.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/DisplayableUnderTests.java Mon May 26 15:20:19 2008
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Command;
+
+public interface DisplayableUnderTests {
+
+ public static final Command backCommand = new Command("MainMenu", Command.BACK, 1);
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/DisplayableUnderTests.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingCanvas.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingCanvas.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingCanvas.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingCanvas.java Mon May 26 15:20:19 2008
@@ -0,0 +1,76 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Graphics;
+
+public class ErrorHandlingCanvas extends BaseTestsCanvas {
+
+ boolean makeErrorInPaint = false;
+
+ int lastKeyCode = 0;
+
+ public ErrorHandlingCanvas() {
+ super("Canvas with Errors");
+ }
+
+ protected void paint(Graphics g) {
+ int width = getWidth();
+ int height = getHeight();
+
+ g.setGrayScale(255);
+ g.fillRect(0, 0, width, height);
+
+ g.setColor(0);
+ int line = 0;
+ writeln(g, line++, "Make Error Canvas");
+ if (fullScreenMode) {
+ writeln(g, line++, "0 - Normal Mode");
+ }
+ writeln(g, line++, "1 - Error in keyPressed");
+ writeln(g, line++, "2 - Error in pain");
+ if (makeErrorInPaint) {
+ makeErrorInPaint = false;
+ writeln(g, line++, "Making error");
+ throw new IllegalArgumentException("Emulator Should still work");
+ }
+ if (lastKeyCode != 0) {
+ writeln(g, line++, "KeyCode: " + lastKeyCode);
+ }
+
+ }
+
+ protected void keyPressed(int keyCode) {
+ switch (keyCode) {
+ case '0':
+ if (fullScreenMode) {
+ setFullScreenMode(false);
+ }
+ break;
+ case '1':
+ throw new IllegalArgumentException("Emulator Should still work");
+ case '2':
+ makeErrorInPaint = true;
+ break;
+ }
+ lastKeyCode = keyCode;
+ repaint();
+ }
+}
\ No newline at end of file
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingCanvas.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingForm.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingForm.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingForm.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingForm.java Mon May 26 15:20:19 2008
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Command;
+import javax.microedition.lcdui.Displayable;
+
+public class ErrorHandlingForm extends BaseTestsForm {
+
+ static final Command makeErrorCommand = new Command("make error", Command.ITEM, 1);
+
+ static final Command catchExceptionCommand = new Command("catch Exception", Command.ITEM, 2);
+
+ public ErrorHandlingForm() {
+ super("Form with Errors");
+ addCommand(makeErrorCommand);
+ addCommand(catchExceptionCommand);
+ }
+
+
+ private void tryCatchTest() {
+ System.out.println("test Exception catch bytcode injection");
+ try {
+ throwExceptionFunction();
+ } catch (IllegalArgumentException e) {
+ handleCatchIllegalArgumentException(e);
+ }
+ try {
+ throwExceptionFunction();
+ } catch (Throwable e) {
+ handleCatchThrowable(e);
+ }
+ }
+
+ public static Throwable handleCatchIllegalArgumentException(Throwable t) {
+ System.out.println("App caught " + t.toString());
+ return t;
+ }
+
+ public static Throwable handleCatchThrowable(Throwable t) {
+ System.out.println("App caught " + t.toString());
+ return t;
+ }
+
+ private void throwExceptionFunction() {
+ System.out.println("App will throw new IllegalArgumentException");
+ throw new IllegalArgumentException("Emulator should print stack trace");
+ }
+
+
+ public void commandAction(Command c, Displayable d) {
+ if (d == this) {
+ if (c == makeErrorCommand) {
+ throw new IllegalArgumentException("Emulator Should still work");
+ } else if (c == catchExceptionCommand) {
+ tryCatchTest();
+ }
+ }
+ super.commandAction(c, d);
+ }
+}
\ No newline at end of file
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ErrorHandlingForm.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ItemsOnForm.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ItemsOnForm.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ItemsOnForm.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ItemsOnForm.java Mon May 26 15:20:19 2008
@@ -0,0 +1,54 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Command;
+import javax.microedition.lcdui.CommandListener;
+import javax.microedition.lcdui.Displayable;
+import javax.microedition.lcdui.Form;
+import javax.microedition.lcdui.Item;
+import javax.microedition.lcdui.StringItem;
+
+public class ItemsOnForm extends Form implements CommandListener, DisplayableUnderTests {
+
+ public static final Command addCommand = new Command("add", Command.ITEM, 1);
+
+ public ItemsOnForm(Item[] items) {
+ super("Form with Items", items);
+ addCommand(addCommand);
+ addCommand(DisplayableUnderTests.backCommand);
+ setCommandListener(this);
+ }
+
+ public ItemsOnForm() {
+ this(null);
+ }
+
+ public void commandAction(Command c, Displayable d) {
+ if (d == this) {
+ if (c == DisplayableUnderTests.backCommand) {
+ Manager.midletInstance.showMainPage();
+ } if (c == addCommand) {
+ append(new StringItem("si:", "StringItem" + Manager.sequenceNext()));
+ }
+ }
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/ItemsOnForm.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MIDletUnderTests.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MIDletUnderTests.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MIDletUnderTests.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MIDletUnderTests.java Mon May 26 15:20:19 2008
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Command;
+import javax.microedition.lcdui.Displayable;
+
+public interface MIDletUnderTests {
+
+ public static final Command exitCommand = new Command("Exit", Command.EXIT, 1);
+
+ public void showMainPage();
+
+ public void setCurrentDisplayable(Displayable nextDisplayable);
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MIDletUnderTests.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MainTestMIDlet.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MainTestMIDlet.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MainTestMIDlet.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MainTestMIDlet.java Mon May 26 15:20:19 2008
@@ -0,0 +1,114 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import java.util.Enumeration;
+import java.util.Vector;
+
+import javax.microedition.lcdui.Command;
+import javax.microedition.lcdui.CommandListener;
+import javax.microedition.lcdui.Display;
+import javax.microedition.lcdui.Displayable;
+import javax.microedition.lcdui.List;
+import javax.microedition.midlet.MIDlet;
+import javax.microedition.midlet.MIDletStateChangeException;
+
+public class MainTestMIDlet extends MIDlet implements CommandListener, MIDletUnderTests {
+
+ // static final Command exitCommand = MIDletUnderTests.exitCommand;
+
+ List menuList = null;
+
+ Vector testPanels;
+
+ static {
+ System.out.println("MainTestMIDlet static init");
+ ThreadTestsForm.onMIDletInit();
+ }
+
+ public MainTestMIDlet() {
+
+ }
+
+ protected void startApp() throws MIDletStateChangeException {
+ Manager.midletInstance = this;
+
+ if (menuList == null) {
+ testPanels = new Vector();
+ testPanels.addElement(new ItemsOnForm());
+ testPanels.addElement(new ErrorHandlingForm());
+ testPanels.addElement(new ErrorHandlingCanvas());
+ testPanels.addElement(new RecordStoreForm());
+ testPanels.addElement(new ThreadTestsForm());
+ if (OverrideNewJSRCanvas.enabled) {
+ testPanels.addElement(new OverrideNewJSRCanvas());
+ }
+ if (OverrideNewJSR2Canvas.enabled) {
+ testPanels.addElement(new OverrideNewJSR2Canvas());
+ }
+ if (OverrideNewJSR2Canvas.enabled) {
+ testPanels.addElement(new OverrideNewJSR2Canvas());
+ }
+ if (PreporcessorTestCanvas.enabled) {
+ testPanels.addElement(new PreporcessorTestCanvas());
+ }
+
+ menuList = new List("Manual Tests", List.IMPLICIT);
+
+ for (Enumeration iter = testPanels.elements(); iter.hasMoreElements();) {
+ menuList.append(((Displayable) iter.nextElement()).getTitle(), null);
+ }
+ menuList.addCommand(exitCommand);
+ menuList.setCommandListener(this);
+ }
+ setCurrentDisplayable(menuList);
+ }
+
+ public void commandAction(Command c, Displayable d) {
+ if (d == menuList) {
+ if (c == List.SELECT_COMMAND) {
+ setCurrentDisplayable((Displayable) testPanels.elementAt(menuList.getSelectedIndex()));
+ } else if (c == exitCommand) {
+ try {
+ destroyApp(true);
+ } catch (MIDletStateChangeException e) {
+ }
+ notifyDestroyed();
+ }
+ }
+ }
+
+ public void showMainPage() {
+ setCurrentDisplayable(menuList);
+ }
+
+ public void setCurrentDisplayable(Displayable nextDisplayable) {
+ Display display = Display.getDisplay(this);
+ // Displayable current = display.getCurrent();
+ display.setCurrent(nextDisplayable);
+ }
+
+ protected void destroyApp(boolean unconditional) throws MIDletStateChangeException {
+ }
+
+ protected void pauseApp() {
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/MainTestMIDlet.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/Manager.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/Manager.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/Manager.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/Manager.java Mon May 26 15:20:19 2008
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+
+public abstract class Manager {
+
+ public static MIDletUnderTests midletInstance = null;
+
+ public static int sequence = 0;
+
+ public static int sequenceNext() {
+ return (sequence++);
+ }
+
+ public static int sequenceValue() {
+ return sequence;
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/Manager.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Canvas.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Canvas.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Canvas.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Canvas.java Mon May 26 15:20:19 2008
@@ -0,0 +1,62 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Graphics;
+
+/**
+ * @author vlads
+ *
+ */
+public class OverrideNewJSR2Canvas extends BaseTestsCanvas {
+
+ public static final boolean enabled = false;
+
+ public OverrideNewJSR2Canvas() {
+ super("OverrideNewJSR2");
+ }
+
+ /* (non-Javadoc)
+ * @see javax.microedition.lcdui.Canvas#paint(javax.microedition.lcdui.Graphics)
+ */
+ protected void paint(Graphics g) {
+ int width = getWidth();
+ int height = getHeight();
+
+ g.setGrayScale(255);
+ g.fillRect(0, 0, width, height);
+
+ g.setColor(0);
+ int line = 0;
+ writeln(g, line++, "Override New JSR2");
+
+ String result;
+
+ try {
+ result = new OverrideNewJSR2Client().doJSR2Stuff("Can use new classes");
+ writeln(g, line++, "success");
+ } catch (Throwable e) {
+ writeln(g, line++, "failure");
+ result = e.toString();
+ }
+
+ writeln(g, line++, result);
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Canvas.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Client.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Client.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Client.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Client.java Mon May 26 15:20:19 2008
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.newjsr2.NewJSR2Facade;
+
+/**
+ * @author vlads
+ *
+ */
+public class OverrideNewJSR2Client {
+
+ public String doJSR2Stuff(String data) {
+ return NewJSR2Facade.createWorker().doStuff(data);
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSR2Client.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRCanvas.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRCanvas.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRCanvas.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRCanvas.java Mon May 26 15:20:19 2008
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.lcdui.Graphics;
+
+/**
+ * @author vlads
+ * To test if MIDlet can override javax.microedition package on the device.
+ */
+public class OverrideNewJSRCanvas extends BaseTestsCanvas {
+
+ public static final boolean enabled = true;
+
+ public OverrideNewJSRCanvas() {
+ super("OverrideNew IO JSR");
+ }
+
+ /* (non-Javadoc)
+ * @see javax.microedition.lcdui.Canvas#paint(javax.microedition.lcdui.Graphics)
+ */
+ protected void paint(Graphics g) {
+ int width = getWidth();
+ int height = getHeight();
+
+ g.setGrayScale(255);
+ g.fillRect(0, 0, width, height);
+
+ g.setColor(0);
+ int line = 0;
+ writeln(g, line++, "Override New JSR");
+
+ String result;
+
+ try {
+ result = new OverrideNewJSRClient().doJSRStuff("Can use new classes");
+ writeln(g, line++, "success");
+ } catch (Throwable e) {
+ writeln(g, line++, "failure");
+ result = e.toString();
+ }
+
+ writeln(g, line++, result);
+ }
+
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRCanvas.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRClient.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRClient.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRClient.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRClient.java Mon May 26 15:20:19 2008
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import javax.microedition.io.newjsr.NewJSRFacade;
+
+/**
+ * @author vlads
+ * To test if MIDlet can override javax.microedition package on the device.
+ */
+public class OverrideNewJSRClient {
+
+ public String doJSRStuff(String data) {
+ return NewJSRFacade.createWorker().doStuff(data);
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/OverrideNewJSRClient.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/PreporcessorTestCanvas.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/PreporcessorTestCanvas.java?rev=660326&view=auto
==============================================================================
--- harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/PreporcessorTestCanvas.java (added)
+++ harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/PreporcessorTestCanvas.java Mon May 26 15:20:19 2008
@@ -0,0 +1,134 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.microemu.tests;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+import javax.microedition.lcdui.Graphics;
+
+/**
+ * @author vlads
+ *
+ */
+public class PreporcessorTestCanvas extends BaseTestsCanvas {
+
+ public static final boolean enabled = true;
+
+ public PreporcessorTestCanvas() {
+ super("bytecode test");
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see javax.microedition.lcdui.Canvas#paint(javax.microedition.lcdui.Graphics)
+ */
+ protected void paint(Graphics g) {
+ int width = getWidth();
+ int height = getHeight();
+
+ g.setGrayScale(255);
+ g.fillRect(0, 0, width, height);
+
+ g.setColor(0);
+ int line = 0;
+ writeln(g, line++, "bytecode test");
+
+ System.out.println("print data to console");
+
+ try {
+ String resourceName = "/app-data.txt";
+ String expected = "private app-data";
+
+ String result = verifyLoadStrings(String.class.getResourceAsStream(resourceName), "String.class. "
+ + resourceName, expected);
+
+ writeln(g, line++, "loaded " + result);
+ } catch (Throwable e) {
+ writeln(g, line++, "failure");
+ writeln(g, line++, e.toString());
+ }
+
+ try {
+ String resourceName = "resource-path-text.txt";
+ String expected = null;
+
+ String result = verifyLoadStrings(PreporcessorTestCanvas.class.getResourceAsStream(resourceName),
+ "App.class. " + resourceName, expected);
+
+ writeln(g, line++, "loaded " + result);
+ } catch (Throwable e) {
+ writeln(g, line++, "failure");
+ writeln(g, line++, e.toString());
+ }
+
+ try {
+ String resourceName = "resource-package.txt";
+ String expected = "package relative";
+
+ String result = verifyLoadStrings(PreporcessorTestCanvas.class.getResourceAsStream(resourceName),
+ "App.class. " + resourceName, expected);
+
+ writeln(g, line++, "loaded " + result);
+ } catch (Throwable e) {
+ writeln(g, line++, "failure");
+ writeln(g, line++, e.toString());
+ }
+ }
+
+ private String verifyLoadStrings(InputStream inputstream, String resourceName, String expected) {
+ if (inputstream == null) {
+ if (expected == null) {
+ System.out.println("OK - Resource not found " + resourceName);
+ return "{not found}";
+ } else {
+ System.err.println("Resource not found " + resourceName);
+ }
+ throw new RuntimeException("Resource not found " + resourceName);
+ } else {
+ if (expected == null) {
+ throw new RuntimeException("Can access resource " + resourceName);
+ }
+ }
+ try {
+ InputStreamReader r = new InputStreamReader(inputstream);
+ StringBuffer value = new StringBuffer();
+ int b;
+ while ((b = r.read()) != -1) {
+ value.append((char) b);
+ }
+ if (!expected.equals(value.toString())) {
+ throw new RuntimeException("Unexpected resource " + resourceName + " value [" + value + "]\nexpected ["
+ + expected + "]");
+ }
+ return value.toString();
+ } catch (IOException e) {
+ e.printStackTrace();
+ throw new RuntimeException("Resource read error " + resourceName + " " + e.getMessage());
+ } finally {
+ try {
+ inputstream.close();
+ } catch (IOException ignore) {
+ }
+ }
+ }
+}
Propchange: harmony/enhanced/microemulator/microemu-tests/microemu-test-midlet/src/main/java/org/microemu/tests/PreporcessorTestCanvas.java
------------------------------------------------------------------------------
svn:eol-style = native