From 5b37daa731455a8898881a827cfcbdc625b12e8f Mon Sep 17 00:00:00 2001 From: OZGCloud <ozgcloud@mgm-tp.com> Date: Thu, 21 Sep 2023 10:01:06 +0200 Subject: [PATCH] =?UTF-8?q?E2E=20Erg=C3=A4nzung=20Suche=20f=C3=BCr=20OZG-3?= =?UTF-8?q?955?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vorgang-list.search.e2e-spec.ts | 67 ++++++++++++++++++- 1 file changed, 65 insertions(+), 2 deletions(-) diff --git a/goofy-client/apps/goofy-e2e/src/integration/main-tests/vorgang-list/vorgang-list.search.e2e-spec.ts b/goofy-client/apps/goofy-e2e/src/integration/main-tests/vorgang-list/vorgang-list.search.e2e-spec.ts index ac4f926faa..9625881fd0 100644 --- a/goofy-client/apps/goofy-e2e/src/integration/main-tests/vorgang-list/vorgang-list.search.e2e-spec.ts +++ b/goofy-client/apps/goofy-e2e/src/integration/main-tests/vorgang-list/vorgang-list.search.e2e-spec.ts @@ -54,15 +54,19 @@ describe('VorgangList Suche', () => { const vorgangToStay: VorgangE2E = { ...createVorgang(), name: 'VorgangToStay', eingangs: [eingang], assignedTo: getUserSabineInternalId() }; const vorgangToDisappear: VorgangE2E = { ...buildVorgang(objectIds[0], 'VorgangToDisappear'), status: VorgangStatusE2E.NEU }; + const vorgangHyphen: VorgangE2E = { ...buildVorgang(objectIds[1], 'Vorgang-mit-Bindestrich'), status: VorgangStatusE2E.NEU }; + const vorgangWOHyphen: VorgangE2E = { ...buildVorgang(objectIds[2], 'Vorgang mit ohne Bindestrich'), status: VorgangStatusE2E.NEU }; const vorgangStayInList: VorgangListItemE2EComponent = vorgangList.getListItem(vorgangToStay.name); const vorgangDisappearInList: VorgangListItemE2EComponent = vorgangList.getListItem(vorgangToDisappear.name); + const vorgangHyphenInList: VorgangListItemE2EComponent = vorgangList.getListItem(vorgangHyphen.name); + const vorgangWOHyphenInList: VorgangListItemE2EComponent = vorgangList.getListItem(vorgangWOHyphen.name); const userSabine: UserE2E = getUserSabine(); before(() => { - initVorgaenge([vorgangToStay, vorgangToDisappear]); - initSearchIndex([vorgangToStay, vorgangToDisappear]); + initVorgaenge([vorgangToStay, vorgangToDisappear, vorgangHyphen, vorgangWOHyphen]); + initSearchIndex([vorgangToStay, vorgangToDisappear, vorgangHyphen, vorgangWOHyphen]); initUsermanagerUsers([getUserManagerUserSabine()]); loginAsSabine(); @@ -84,6 +88,64 @@ describe('VorgangList Suche', () => { notExist(vorgangDisappearInList.getRoot()); }) + describe('Search for partial strings...', () => { + it ('should find partial string at the beginning', () => { + doSearchWith('VorgangToS'); + waitForSpinnerToDisappear(); + + exist(vorgangStayInList.getRoot()); + }) + + it ('should find partial string in the middle', () => { + doSearchWith('gangToSt'); + waitForSpinnerToDisappear(); + + exist(vorgangStayInList.getRoot()); + }) + + it ('should find partial string at the end, case insensitive', () => { + doSearchWith('toStay'); + waitForSpinnerToDisappear(); + + exist(vorgangStayInList.getRoot()); + }) + + }) + + describe ('Search with hyphen', () => { + it ('should find entry with hyphen', () => { + doSearchWith('Vorgang-mit'); + waitForSpinnerToDisappear(); + + exist(vorgangHyphenInList.getRoot()); + notExist(vorgangWOHyphenInList.getRoot()); + }) + + it ('should find entry without hyphen', () => { + doSearchWith('Vorgang mit'); + waitForSpinnerToDisappear(); + + notExist(vorgangHyphenInList.getRoot()); + exist(vorgangWOHyphenInList.getRoot()); + }) + }) + + describe ('Search with AND', () => { + it ('should find entry with all matches', () => { + doSearchWith('Vorgang mit ohne Bindestrich'); + waitForSpinnerToDisappear(); + + exist(vorgangWOHyphenInList.getRoot()); + }) + + it ('should not find entry when using additional words', () => { + doSearchWith('Vorgang mit ohne als Bindestrich'); + waitForSpinnerToDisappear(); + + notExist(vorgangWOHyphenInList.getRoot()); + }) + }) + describe('navigate with filtered list to vorgang detail', () => { beforeEach(() => { @@ -444,6 +506,7 @@ describe('VorgangList Suche', () => { }) + function doSearchWith(searchBy: string): void { enterWith(vorgangSearch.getInput(), searchBy); } -- GitLab