< prev index next >
jdk/test/java/lang/StackTraceElement/PublicConstructor.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code 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.
--- 1,7 ----
/*
! * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code 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.
*** 21,65 ****
* questions.
*/
/*
* @test
! * @bug 4712607
* @summary Basic test for StackTraceElementPublic constructor
* @author Josh Bloch
*/
! import java.util.*;
public class PublicConstructor {
! public static void main(String args[]) {
StackTraceElement ste = new StackTraceElement("com.acme.Widget",
! "frobnicate", "Widget.java", 42);
if (!(ste.getClassName().equals("com.acme.Widget") &&
ste.getFileName().equals("Widget.java") &&
ste.getMethodName().equals("frobnicate") &&
ste.getLineNumber() == 42))
throw new RuntimeException("1");
if (ste.isNativeMethod())
throw new RuntimeException("2");
! StackTraceElement ste2
! = new StackTraceElement("jdk.module",
"9.0",
"com.acme.Widget",
"frobnicate",
"Widget.java",
42);
! if (!(ste2.getClassName().equals("com.acme.Widget") &&
! ste2.getModuleName().equals("jdk.module") &&
! ste2.getModuleVersion().equals("9.0") &&
! ste2.getFileName().equals("Widget.java") &&
! ste2.getMethodName().equals("frobnicate") &&
! ste2.getLineNumber() == 42))
throw new RuntimeException("3");
! if (ste2.isNativeMethod())
throw new RuntimeException("4");
! StackTraceElement ste3 = new StackTraceElement("com.acme.Widget",
! "frobnicate", "Widget.java", -2);
! if (!ste3.isNativeMethod())
! throw new RuntimeException("5");
}
}
--- 21,96 ----
* questions.
*/
/*
* @test
! * @bug 4712607 6479237
* @summary Basic test for StackTraceElementPublic constructor
* @author Josh Bloch
*/
! import java.lang.module.ModuleDescriptor;
! import java.lang.reflect.Module;
public class PublicConstructor {
! public static void main(String... args) {
! testConstructor();
! testConstructorWithModule();
! }
!
! static void testConstructor() {
StackTraceElement ste = new StackTraceElement("com.acme.Widget",
! "frobnicate",
! "Widget.java", 42);
if (!(ste.getClassName().equals("com.acme.Widget") &&
ste.getFileName().equals("Widget.java") &&
ste.getMethodName().equals("frobnicate") &&
ste.getLineNumber() == 42))
throw new RuntimeException("1");
+
if (ste.isNativeMethod())
throw new RuntimeException("2");
!
! assertEquals(ste.toString(),
! "com.acme.Widget.frobnicate(Widget.java:42)");
!
! StackTraceElement ste1 = new StackTraceElement("com.acme.Widget",
! "frobnicate",
! "Widget.java",
! -2);
! if (!ste1.isNativeMethod())
! throw new RuntimeException("3");
!
! assertEquals(ste1.toString(),
! "com.acme.Widget.frobnicate(Native Method)");
! }
!
! static void testConstructorWithModule() {
! StackTraceElement ste = new StackTraceElement("app",
! "jdk.module",
"9.0",
"com.acme.Widget",
"frobnicate",
"Widget.java",
42);
! if (!(ste.getClassName().equals("com.acme.Widget") &&
! ste.getModuleName().equals("jdk.module") &&
! ste.getModuleVersion().equals("9.0") &&
! ste.getClassLoaderName().equals("app") &&
! ste.getFileName().equals("Widget.java") &&
! ste.getMethodName().equals("frobnicate") &&
! ste.getLineNumber() == 42))
throw new RuntimeException("3");
!
! if (ste.isNativeMethod())
throw new RuntimeException("4");
!
! assertEquals(ste.toString(),
! "app/jdk.module@9.0/com.acme.Widget.frobnicate(Widget.java:42)");
! }
!
! static void assertEquals(String s, String expected) {
! if (!s.equals(expected)) {
! throw new RuntimeException("Expected: " + expected + " but found: " + s);
! }
}
}
< prev index next >