1// Copyright 2014 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Flags: --expose-debug-as debug
6
7(function outer() {
8  var C = (function C_() {
9    var y = 1;
10    function CC() {
11      this.x = 0;
12    }
13    CC.prototype.f = function CCf() {
14      this.x += y;
15      return this.x;
16    };
17    return CC;
18  })();
19
20  var c = new C(0);
21})
22
23function sentinel() {}
24
25Debug = debug.Debug;
26Debug.setListener(function(){});
27
28var script = Debug.findScript(sentinel);
29var line = 14;
30var line_start = Debug.findScriptSourcePosition(script, line, 0);
31var line_end = Debug.findScriptSourcePosition(script, line + 1, 0) - 1;
32var actual = Debug.setBreakPointByScriptIdAndPosition(
33                 script.id, line_start).actual_position;
34// Make sure the actual break position is within the line where we set
35// the break point.
36assertTrue(line_start <= actual);
37assertTrue(actual <= line_end);
38
39Debug.setListener(null);
40