< prev index next >
test/com/sun/jdi/LambdaBreakpointTest.java
Print this page
rev 16940 : 8177507: line number sensitive tests for jdi should be unified
Reviewed-by: duke
*** 1,7 ****
/*
! * Copyright (c) 2013, 2015, 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) 2013, 2017, 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.
*** 19,41 ****
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
! /********** LINE NUMBER SENSITIVE! *****************************************************************/
/**
* @test
* @summary Test setting breakpoints on lambda calls
- *
* @author Staffan Larsen
*
- * @modules jdk.jdi
* @run build TestScaffold VMConnection TargetListener TargetAdapter
* @run compile -g LambdaBreakpointTest.java
* @run driver LambdaBreakpointTest
*/
import java.util.List;
import com.sun.jdi.LocalVariable;
import com.sun.jdi.Location;
import com.sun.jdi.Method;
--- 19,40 ----
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
! // THIS TEST IS LINE NUMBER SENSITIVE
/**
* @test
* @summary Test setting breakpoints on lambda calls
* @author Staffan Larsen
*
* @run build TestScaffold VMConnection TargetListener TargetAdapter
* @run compile -g LambdaBreakpointTest.java
* @run driver LambdaBreakpointTest
*/
+
import java.util.List;
import com.sun.jdi.LocalVariable;
import com.sun.jdi.Location;
import com.sun.jdi.Method;
*** 48,80 ****
import com.sun.jdi.event.StepEvent;
/********** target program **********/
class LambdaBreakpointTestTarg {
-
- static int[] breakpointLines = {
- 63, 67, 64, 65, 66, 68
- };
-
public static void main(String[] args) {
test();
}
private static void test() {
! Runnable r = () -> { // B1: L62
! String from = "lambda"; // B3: L63
! System.out.println("Hello from " + from); // B4: L64
! }; // B5: L65
! r.run(); // B2: L66
! System.out.println("Goodbye."); // B6: L67
}
}
/********** test program **********/
public class LambdaBreakpointTest extends TestScaffold {
LambdaBreakpointTest (String args[]) {
super(args);
}
--- 47,76 ----
import com.sun.jdi.event.StepEvent;
/********** target program **********/
class LambdaBreakpointTestTarg {
public static void main(String[] args) {
test();
}
private static void test() {
! Runnable r = () -> { // LambdaBreakpointTest::FIRST_BKPT_LINE
! String from = "lambda";
! System.out.println("Hello from " + from);
! };
! r.run();
! System.out.println("Goodbye."); // LambdaBreakpointTest::LAST_BKPT_LINE
}
}
/********** test program **********/
public class LambdaBreakpointTest extends TestScaffold {
+ private static final int FIRST_BKPT_LINE = 57;
+ private static final int LAST_BKPT_LINE = 62;
LambdaBreakpointTest (String args[]) {
super(args);
}
*** 90,100 ****
throws Exception
{
startToMain("LambdaBreakpointTestTarg");
// Put a breakpoint on each location in the order they should happen
! for (int line : LambdaBreakpointTestTarg.breakpointLines) {
System.out.println("Running to line: " + line);
BreakpointEvent be = resumeTo("LambdaBreakpointTestTarg", line);
int stoppedAt = be.location().lineNumber();
System.out.println("Stopped at line: " + stoppedAt);
if (stoppedAt != line) {
--- 86,96 ----
throws Exception
{
startToMain("LambdaBreakpointTestTarg");
// Put a breakpoint on each location in the order they should happen
! for (int line = FIRST_BKPT_LINE; line <= LAST_BKPT_LINE; ++line) {
System.out.println("Running to line: " + line);
BreakpointEvent be = resumeTo("LambdaBreakpointTestTarg", line);
int stoppedAt = be.location().lineNumber();
System.out.println("Stopped at line: " + stoppedAt);
if (stoppedAt != line) {
< prev index next >