From 88a3d33f84559303b9eeae95fee47ddc208c8b7b Mon Sep 17 00:00:00 2001 From: Timm Fitschen <t.fitschen@indiscale.com> Date: Thu, 2 Dec 2021 13:58:33 +0100 Subject: [PATCH] add tests for autocomletion --- src/core/js/edit_mode.js | 6 ++--- test/core/js/modules/ext_autocomplete.js.js | 26 +++++++++++++++++++-- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/src/core/js/edit_mode.js b/src/core/js/edit_mode.js index 284aaef6..87e588aa 100644 --- a/src/core/js/edit_mode.js +++ b/src/core/js/edit_mode.js @@ -1804,9 +1804,9 @@ var edit_mode = new function () { * which can be referenced by the property. */ this.retrieve_datatype_list = async function (datatype) { - var find_entity = ["FILE", "REFERENCE"].includes(datatype) ? "" : datatype; - var entities = datatype !== "FILE" ? await edit_mode.query(`FIND Record "${find_entity}"`) : []; - var files = await edit_mode.query(`FIND File "${find_entity}"`); + var find_entity = ["FILE", "REFERENCE"].includes(datatype) ? "" : `"${datatype}"`; + var entities = datatype !== "FILE" ? await edit_mode.query(`FIND Record ${find_entity}`) : []; + var files = await edit_mode.query(`FIND File ${find_entity}`); var options = edit_mode ._create_reference_options(entities) diff --git a/test/core/js/modules/ext_autocomplete.js.js b/test/core/js/modules/ext_autocomplete.js.js index e8776f94..96cab766 100644 --- a/test/core/js/modules/ext_autocomplete.js.js +++ b/test/core/js/modules/ext_autocomplete.js.js @@ -25,7 +25,7 @@ QUnit.module("ext_autocomplete.js", { before: function (assert){ ext_autocomplete.retrieve_names = async function () { - return ['IceCore', 'Bag', 'IceSample', 'IceCream', 'Palette']; + return ['IceCore', 'Bag', 'IceSample', 'IceCream', 'Palette', 'Ice Core']; } ext_autocomplete.init(); @@ -60,12 +60,34 @@ QUnit.test("search", async function(assert) { }; }; await ext_autocomplete.search("Ice", - gcallback( ['IceCore', 'IceSample', 'IceCream']) + gcallback( ['IceCore', 'IceSample', 'IceCream', 'Ice Core']) ); await ext_autocomplete.search("Core", gcallback([])); }); +QUnit.test("searchPost", async function(assert) { + const resultsFromServer = ["Ice Core", "IceCore"]; + const origJQElement = [{ + selectionEnd: 8, + value: "FIND Ice WHERE", + }]; + + const expected = [ + { + "html": "Ice Core", + "text": "FIND \"Ice Core\" WHERE" + }, + { + "html": "IceCore", + "text": "FIND IceCore WHERE" + } + ]; + + const result = ext_autocomplete.searchPost(resultsFromServer, origJQElement); + assert.propEqual(result, expected); +}); + QUnit.test("class", function(assert) { assert.ok(ext_autocomplete.switch_on_completion , "toggle available"); assert.ok(ext_autocomplete.switch_on_completion() , "toggle runs"); -- GitLab