From 0249b3d31b2888ce29e0370cee91a3e00bdc3f9f Mon Sep 17 00:00:00 2001 From: Ronan Amicel Date: Wed, 17 Aug 2022 18:15:32 +0200 Subject: [PATCH] Add tests for autocomplete without accents --- test/nbrowser/ChoiceList.ts | 17 +++++++++++++++++ test/nbrowser/ReferenceColumns.ts | 12 ++++++++++++ test/nbrowser/ReferenceList.ts | 12 ++++++++++++ 3 files changed, 41 insertions(+) diff --git a/test/nbrowser/ChoiceList.ts b/test/nbrowser/ChoiceList.ts index 8cbb434e..d528ecb9 100644 --- a/test/nbrowser/ChoiceList.ts +++ b/test/nbrowser/ChoiceList.ts @@ -301,6 +301,23 @@ describe('ChoiceList', function() { await gu.waitForServer(); assert.equal(await driver.find('.cell_editor').isPresent(), false); assert.equal(await gu.getCell({rowNum: 1, col: 'B'}).getText(), 'Blue\nGreen\nBlack'); + + + // Starting to type names without accents should match the actual choices + await gu.addColumn("Accents"); + await api.applyUserActions(docId, [ + ['ModifyColumn', 'Table1', 'Accents', { + type: 'ChoiceList', + widgetOptions: JSON.stringify({ + choices: ['Adélaïde', 'Adèle', 'Agnès', 'Amélie'], + }) + }], + ]); + await gu.getCell({rowNum: 1, col: 'Accents'}).click(); + await driver.sendKeys('Ade', Key.ENTER); + await driver.sendKeys('Agne', Key.ENTER); + await driver.sendKeys('Ame', Key.ENTER); + assert.deepEqual(await getEditorTokens(), ['Adélaïde', 'Agnès', 'Amélie']); }); it('should be visible in formulas', async () => { diff --git a/test/nbrowser/ReferenceColumns.ts b/test/nbrowser/ReferenceColumns.ts index 5f9d09ca..b799d193 100644 --- a/test/nbrowser/ReferenceColumns.ts +++ b/test/nbrowser/ReferenceColumns.ts @@ -413,6 +413,18 @@ describe('ReferenceColumns', function() { ['Dark Slate Blue', 'Dark Slate Gray', 'Slate Blue', 'Medium Slate Blue']); await driver.sendKeys(Key.ESCAPE); + // Starting to type Añil with the accent + await driver.sendKeys('añ'); + assert.deepEqual(await getACOptions(2), + ['Añil', 'Alice Blue']); + await driver.sendKeys(Key.ESCAPE); + + // Starting to type Añil without the accent should work too + await driver.sendKeys('an'); + assert.deepEqual(await getACOptions(2), + ['Añil', 'Alice Blue']); + await driver.sendKeys(Key.ESCAPE); + await driver.sendKeys('blac'); assert.deepEqual(await getACOptions(6), ['Black', 'Blanched Almond', 'Blue', 'Blue Violet', 'Alice Blue', 'Cadet Blue']); diff --git a/test/nbrowser/ReferenceList.ts b/test/nbrowser/ReferenceList.ts index 2a43ce63..86eb7e73 100644 --- a/test/nbrowser/ReferenceList.ts +++ b/test/nbrowser/ReferenceList.ts @@ -709,6 +709,18 @@ describe('ReferenceList', function() { ['Dark Slate Blue', 'Dark Slate Gray', 'Slate Blue', 'Medium Slate Blue']); await driver.sendKeys(Key.ESCAPE); + // Starting to type Añil with the accent + await driver.sendKeys('añ'); + assert.deepEqual(await getACOptions(2), + ['Añil', 'Alice Blue']); + await driver.sendKeys(Key.ESCAPE); + + // Starting to type Añil without the accent should work too + await driver.sendKeys('an'); + assert.deepEqual(await getACOptions(2), + ['Añil', 'Alice Blue']); + await driver.sendKeys(Key.ESCAPE); + await driver.sendKeys('blac'); assert.deepEqual(await getACOptions(6), ['Black', 'Blanched Almond', 'Blue', 'Blue Violet', 'Alice Blue', 'Cadet Blue']);