📄 jumptargettestcase.java
字号:
/**
* Copyright (c) 2003-2004 Craig Setera
* All Rights Reserved.
* Licensed under the Eclipse Public License - v 1.0
* For more information see http://www.eclipse.org/legal/epl-v10.html
*/
package preverification.tests;
import java.io.InputStream;
import java.net.URL;
import java.util.List;
import java.util.Vector;
import eclipseme.preverifier.ClassPreverifier;
import eclipseme.preverifier.results.PreverificationResults;
/**
* Type description
* <p />
* Copyright (c) 2003-2004 Craig Setera<br>
* All Rights Reserved.<br>
* Licensed under the Eclipse Public License - v 1.0<p/>
* <br>
* $Revision: 1.1 $
* <br>
* $Date: 2005/09/25 23:53:29 $
* <br>
* @author Craig Setera
*/
public class JumpTargetTestCase extends BasePreverifyTestCase {
public void testPreverify() {
InputStream classStream = getSourceClassStream("preverification.inputs.JumpTargetTest");
assertNotNull(classStream);
TestPreverificationPolicy policy = new CLDC_1_0_Policy();
ClassPreverifier preverifier = new ClassPreverifier(policy);
try {
PreverificationResults results = preverifier.preverify(classStream, new URL[0]);
assertTrue("Expected no errors", !results.isErrorResult());
byte[] preverifiedClass = results.getPreverifiedClassBytes();
assertNotNull("Code Stream bytes should not be null", preverifiedClass);
// Attempt to load the testable and check its validity
verifyBytecode(preverifiedClass);
String className = getClassName(results);
ITestable testable = loadTestable(className, preverifiedClass);
// Do a deeper comparison...
compareWithPreverifierBinary(policy, className, results.getPreverifiedClassBytes());
// Test the testable
Integer[] data = new Integer[] {
new Integer(-10),
new Integer(100),
new Integer(2),
};
int[] expected = new int[] {
1,
100,
2,
};
Vector testResults = (Vector) testable.test(data);
assertEquals("Jump Test result count mismatch", testResults.size(), expected.length);
for (int i = 0; i < expected.length; i++) {
assertEquals("Jump Test result " + i + " mismatch", expected[i], getIntAtIndex(testResults, i));
}
} catch (Exception e) {
fail(e);
}
}
private int getIntAtIndex(List list, int index) {
Integer i = (Integer) list.get(index);
return i.intValue();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -