Auto merge of #50432 - GuillaumeGomez:fix-vec-new-search, r=QuietMisdreavus
Fix rustdoc pathes search Fixes #50086. Depends on #50302. r? @QuietMisdreavus
This commit is contained in:
commit
c8a3ec1ce6
|
@ -993,7 +993,7 @@
|
||||||
Math.min(results_returned[fullId].lev, returned);
|
Math.min(results_returned[fullId].lev, returned);
|
||||||
}
|
}
|
||||||
if (index !== -1 || lev <= MAX_LEV_DISTANCE) {
|
if (index !== -1 || lev <= MAX_LEV_DISTANCE) {
|
||||||
if (index !== -1) {
|
if (index !== -1 && paths.length < 2) {
|
||||||
lev = 0;
|
lev = 0;
|
||||||
}
|
}
|
||||||
if (results[fullId] === undefined) {
|
if (results[fullId] === undefined) {
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
|
||||||
|
// file at the top-level directory of this distribution and at
|
||||||
|
// http://rust-lang.org/COPYRIGHT.
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||||
|
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||||
|
// option. This file may not be copied, modified, or distributed
|
||||||
|
// except according to those terms.
|
||||||
|
|
||||||
|
// exact-check
|
||||||
|
|
||||||
|
const QUERY = 'pinbox::new';
|
||||||
|
|
||||||
|
const EXPECTED = {
|
||||||
|
'others': [
|
||||||
|
{ 'path': 'std::boxed::PinBox', 'name': 'new' },
|
||||||
|
{ 'path': 'alloc::boxed::PinBox', 'name': 'new' },
|
||||||
|
],
|
||||||
|
};
|
|
@ -0,0 +1,19 @@
|
||||||
|
// Copyright 2018 The Rust Project Developers. See the COPYRIGHT
|
||||||
|
// file at the top-level directory of this distribution and at
|
||||||
|
// http://rust-lang.org/COPYRIGHT.
|
||||||
|
//
|
||||||
|
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||||
|
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||||
|
// option. This file may not be copied, modified, or distributed
|
||||||
|
// except according to those terms.
|
||||||
|
|
||||||
|
const QUERY = 'Vec::new';
|
||||||
|
|
||||||
|
const EXPECTED = {
|
||||||
|
'others': [
|
||||||
|
{ 'path': 'std::vec::Vec', 'name': 'new' },
|
||||||
|
{ 'path': 'std::vec::Vec', 'name': 'ne' },
|
||||||
|
{ 'path': 'std::boxed::PinBox', 'name': 'new' },
|
||||||
|
],
|
||||||
|
};
|
|
@ -88,6 +88,7 @@ function loadContent(content) {
|
||||||
var m = new Module();
|
var m = new Module();
|
||||||
m._compile(content, "tmp.js");
|
m._compile(content, "tmp.js");
|
||||||
m.exports.ignore_order = content.indexOf("\n// ignore-order\n") !== -1;
|
m.exports.ignore_order = content.indexOf("\n// ignore-order\n") !== -1;
|
||||||
|
m.exports.exact_check = content.indexOf("\n// exact-check\n") !== -1;
|
||||||
return m.exports;
|
return m.exports;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -179,6 +180,7 @@ function main(argv) {
|
||||||
const expected = loadedFile.EXPECTED;
|
const expected = loadedFile.EXPECTED;
|
||||||
const query = loadedFile.QUERY;
|
const query = loadedFile.QUERY;
|
||||||
const ignore_order = loadedFile.ignore_order;
|
const ignore_order = loadedFile.ignore_order;
|
||||||
|
const exact_check = loadedFile.exact_check;
|
||||||
var results = loaded.execSearch(loaded.getQuery(query), index);
|
var results = loaded.execSearch(loaded.getQuery(query), index);
|
||||||
process.stdout.write('Checking "' + file + '" ... ');
|
process.stdout.write('Checking "' + file + '" ... ');
|
||||||
var error_text = [];
|
var error_text = [];
|
||||||
|
@ -191,13 +193,17 @@ function main(argv) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
var entry = expected[key];
|
var entry = expected[key];
|
||||||
var prev_pos = 0;
|
var prev_pos = -1;
|
||||||
for (var i = 0; i < entry.length; ++i) {
|
for (var i = 0; i < entry.length; ++i) {
|
||||||
var entry_pos = lookForEntry(entry[i], results[key]);
|
var entry_pos = lookForEntry(entry[i], results[key]);
|
||||||
if (entry_pos === null) {
|
if (entry_pos === null) {
|
||||||
error_text.push("==> Result not found in '" + key + "': '" +
|
error_text.push("==> Result not found in '" + key + "': '" +
|
||||||
JSON.stringify(entry[i]) + "'");
|
JSON.stringify(entry[i]) + "'");
|
||||||
} else if (entry_pos < prev_pos && ignore_order === false) {
|
} else if (exact_check === true && prev_pos + 1 !== entry_pos) {
|
||||||
|
error_text.push("==> Exact check failed at position " + (prev_pos + 1) + ": " +
|
||||||
|
"expected '" + JSON.stringify(entry[i]) + "' but found '" +
|
||||||
|
JSON.stringify(results[key][i]) + "'");
|
||||||
|
} else if (ignore_order === false && entry_pos < prev_pos) {
|
||||||
error_text.push("==> '" + JSON.stringify(entry[i]) + "' was supposed to be " +
|
error_text.push("==> '" + JSON.stringify(entry[i]) + "' was supposed to be " +
|
||||||
" before '" + JSON.stringify(results[key][entry_pos]) + "'");
|
" before '" + JSON.stringify(results[key][entry_pos]) + "'");
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue