Broken parsing if a request's first line started with spaces

Closes #80
This commit is contained in:
Boaz Leskes 2014-01-26 23:19:09 +01:00
parent 54e8b5780b
commit 4b96360adb
2 changed files with 29 additions and 0 deletions

View file

@ -192,6 +192,10 @@ define([
var pos = currentReqRange.start;
var tokenIter = editor.iterForPosition(pos.row, pos.column, editor);
var t = tokenIter.getCurrentToken();
if (editor.parser.isEmptyToken(t)) {
// if the row starts with some spaces, skip them.
t = editor.parser.nextNonEmptyToken(tokenIter);
}
request.method = t.value;
t = editor.parser.nextNonEmptyToken(tokenIter);
if (!t || t.type == "method") return null;

View file

@ -88,6 +88,31 @@ define([
});
});
utils_test("simple request range, prefixed with spaces", " " + simple_request.prefix, simple_request.data, function () {
input.getCurrentRequestRange(function (range) {
var expected = new aceRange.Range(
0, 0,
3, 1
);
deepEqual(range, expected);
start();
});
});
utils_test("simple request data, prefixed with spaces", " " + simple_request.prefix, simple_request.data, function () {
input.getCurrentRequest(function (request) {
var expected = {
method: "POST",
url: "_search",
data: [simple_request.data]
};
deepEqual(request, expected);
start();
});
});
utils_test("single line request range", single_line_request.prefix, single_line_request.data, function () {
input.getCurrentRequestRange(function (range) {
var expected = new aceRange.Range(