Skip to content

Commit

Permalink
Merge pull request #118 from c4dt/fix_warnings
Browse files Browse the repository at this point in the history
Fixing some warnings
  • Loading branch information
ineiti authored Feb 16, 2024
2 parents 4a0b3a6 + f77be25 commit b5ad03e
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 23 deletions.
15 changes: 8 additions & 7 deletions web/frontend/tests/formIndex.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { expect, test } from '@playwright/test';
import { Locator, Page, expect, test } from '@playwright/test';
import { default as i18n } from 'i18next';
import { assertHasFooter, assertHasNavBar, initI18n, logIn, setUp, translate } from './shared';
import { SCIPER_ADMIN, SCIPER_USER, mockPersonalInfo } from './mocks/api';
Expand All @@ -9,7 +9,7 @@ import Admin from './json/api/personal_info/123456.json';

initI18n();

async function goForward(page: page) {
async function goForward(page: Page) {
await page.getByRole('button', { name: i18n.t('next') }).click();
}

Expand Down Expand Up @@ -85,7 +85,7 @@ test('Assert no forms are displayed for empty list', async ({ page }) => {
.toHaveLength(1);
});

async function assertQuickAction(row: locator, form: object, sciper?: string) {
async function assertQuickAction(row: Locator, form: any, sciper?: string) {
const user = sciper === SCIPER_USER ? User : (sciper === SCIPER_ADMIN ? Admin : undefined); // eslint-disable-line
const quickAction = row.getByTestId('quickAction');
switch (form.Status) {
Expand All @@ -94,6 +94,7 @@ async function assertQuickAction(row: locator, form: object, sciper?: string) {
if (
user !== undefined &&
form.FormID in user.authorization &&
// @ts-ignore
user.authorization[form.FormID].includes('vote')
) {
await expect(quickAction).toHaveText(i18n.t('vote'));
Expand Down Expand Up @@ -134,9 +135,9 @@ test('Assert forms are displayed correctly for unauthenticated user', async ({ p
await assertQuickAction(row, form);
}
await goForward(page);
let row = await table.getByRole('row', { name: translate(Forms.Forms.at(-1).Title) });
let row = await table.getByRole('row', { name: translate(Forms.Forms.at(-1)!.Title) });
await expect(row).toBeVisible();
await assertQuickAction(row, Forms.Forms.at(-1));
await assertQuickAction(row, Forms.Forms.at(-1)!);
});

test('Assert quick actions are displayed correctly for authenticated users', async ({ page }) => {
Expand All @@ -151,8 +152,8 @@ test('Assert quick actions are displayed correctly for authenticated users', asy
}
await goForward(page);
await assertQuickAction(
await table.getByRole('row', { name: translate(Forms.Forms.at(-1).Title) }),
Forms.Forms.at(-1)
await table.getByRole('row', { name: translate(Forms.Forms.at(-1)!.Title) }),
Forms.Forms.at(-1)!
);
}
});
16 changes: 8 additions & 8 deletions web/frontend/tests/forms.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { expect, test } from '@playwright/test';
import { Locator, Page, expect, test } from '@playwright/test';
import { default as i18n } from 'i18next';
import { assertHasFooter, assertHasNavBar, initI18n, logIn, setUp } from './shared';
import {
Expand Down Expand Up @@ -36,7 +36,7 @@ const prettyFormStates = [
// main elements

async function setUpMocks(
page: page,
page: Page,
formStatus: number,
dkgActorsStatus: number,
initialized?: boolean
Expand Down Expand Up @@ -69,7 +69,7 @@ test('Assert footer is present', async ({ page }) => {
await assertHasFooter(page);
});

async function assertIsOnlyVisibleToOwner(page: page, locator: locator) {
async function assertIsOnlyVisibleToOwner(page: Page, locator: Locator) {
await test.step('Assert is hidden to unauthenticated user', async () => {
await expect(locator).toBeHidden();
});
Expand All @@ -88,9 +88,9 @@ async function assertIsOnlyVisibleToOwner(page: page, locator: locator) {
}

async function assertIsOnlyVisibleInStates(
page: page,
locator: locator,
states: Array,
page: Page,
locator: Locator,
states: Array<number>,
assert: Function,
dkgActorsStatus?: number,
initialized?: boolean
Expand All @@ -112,7 +112,7 @@ async function assertIsOnlyVisibleInStates(
}

async function assertRouteIsCalled(
page: page,
page: Page,
url: string,
key: string,
action: string,
Expand Down Expand Up @@ -387,7 +387,7 @@ test('Assert "Vote" button is visible to admin/non-admin voter user', async ({ p
page.getByRole('button', { name: i18n.t('vote'), exact: true }), // by default name is not matched exactly which returns both the "Vote" and the "Add voters" button
[1],
// eslint-disable-next-line @typescript-eslint/no-shadow
async function (page: page, locator: locator) {
async function (page: Page, locator: Locator) {
await test.step('Assert is hidden to unauthenticated user', async () => {
await expect(locator).toBeHidden();
});
Expand Down
1 change: 1 addition & 0 deletions web/frontend/tests/navbar.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ test('Assert "Logout" calls logout API', async ({ page, baseURL }) => {
['menuitem', 'logout'],
['button', 'continue'],
]) {
// @ts-ignore
await page.getByRole(role, { name: i18n.t(key) }).click();
}
});
Expand Down
16 changes: 8 additions & 8 deletions web/frontend/tests/shared.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { default as i18n } from 'i18next';
import { expect } from '@playwright/test';
import { Locator, Page, expect } from '@playwright/test';
import en from './../src/language/en.json';
import fr from './../src/language/fr.json';
import de from './../src/language/de.json';
Expand All @@ -21,7 +21,7 @@ export function initI18n() {
});
}

export async function setUp(page: page, url: string) {
export async function setUp(page: Page, url: string) {
await mockProxy(page);
await mockGetDevLogin(page);
await mockLogout(page);
Expand All @@ -30,34 +30,34 @@ export async function setUp(page: page, url: string) {
await expect(page).toHaveURL(url);
}

export async function logIn(page: page, sciper: string) {
export async function logIn(page: Page, sciper: string) {
await mockPersonalInfo(page, sciper);
await page.reload({ waitUntil: 'networkidle' });
}

export async function assertOnlyVisibleToAuthenticated(page: page, locator: locator) {
export async function assertOnlyVisibleToAuthenticated(page: Page, locator: Locator) {
await expect(locator).toBeHidden(); // assert is hidden to unauthenticated user
await logIn(page, SCIPER_USER);
await expect(locator).toBeVisible(); // assert is visible to authenticated user
}

export async function assertOnlyVisibleToAdmin(page: page, locator: locator) {
export async function assertOnlyVisibleToAdmin(page: Page, locator: Locator) {
await expect(locator).toBeHidden(); // assert is hidden to unauthenticated user
await logIn(page, SCIPER_USER);
await expect(locator).toBeHidden(); // assert is hidden to authenticated non-admin user
await logIn(page, SCIPER_ADMIN);
await expect(locator).toBeVisible(); // assert is visible to admin user
}

export async function assertHasNavBar(page: page) {
export async function assertHasNavBar(page: Page) {
await expect(page.getByTestId('navBar')).toBeVisible();
}

export async function assertHasFooter(page: page) {
export async function assertHasFooter(page: Page) {
await expect(page.getByTestId('footer')).toBeVisible();
}

export function translate(internationalizable: object) {
export function translate(internationalizable: any) {
switch (i18n.language) {
case 'en':
return internationalizable.En;
Expand Down

0 comments on commit b5ad03e

Please sign in to comment.