Multiple client source sending feature. (#1957)

Whit this enhancement the debugger can able handle more than one source file across the new source wait mode.
This feature can be used by the python client with the --client-source [paths] switch.
The client will store every source path, when the debugger send a signal about the waiting status, then the client will send one file from the list.

JerryScript-DCO-1.0-Signed-off-by: Imre Kiss kissi.szeged@partner.samsung.com
This commit is contained in:
Imre Kiss
2017-08-21 09:19:36 +02:00
committed by László Langó
parent 2888a6f488
commit 3b1d578050
14 changed files with 197 additions and 42 deletions
@@ -0,0 +1,7 @@
n
n
s
s
s
s
c
@@ -0,0 +1,15 @@
Connecting to: localhost:5001
Stopped at tests/debugger/client_source_multiple_2.js:15
(jerry-debugger) n
Stopped at tests/debugger/client_source_multiple_1.js:15
(jerry-debugger) n
Stopped at tests/debugger/client_source_multiple_1.js:27
(jerry-debugger) s
Stopped at tests/debugger/client_source_multiple_1.js:18 (in foo() at line:17, col:1)
(jerry-debugger) s
Stopped at tests/debugger/client_source_multiple_1.js:19 (in foo() at line:17, col:1)
(jerry-debugger) s
Stopped at tests/debugger/client_source_multiple_2.js:18 (in bar() at line:17, col:1)
(jerry-debugger) s
Stopped at tests/debugger/client_source_multiple_2.js:19 (in bar() at line:17, col:1)
(jerry-debugger) c
@@ -0,0 +1,27 @@
// Copyright JS Foundation and other contributors, http://js.foundation
//
// Licensed 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.
print("multiple-client-source-test-file-1");
function foo() {
print("foo");
bar("called-from-test-file-1");
}
function crossFoo(str) {
print("crossFoo");
print("str-argument: " + str);
}
foo();
@@ -0,0 +1,21 @@
// Copyright JS Foundation and other contributors, http://js.foundation
//
// Licensed 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.
print("multiple-client-source-test-file-2");
function bar(str) {
print("bar");
print("str-argument: " + str);
crossFoo("called-from-test-file-2");
}