Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HAI-1879 Show separate bus and tram indexes #384

Merged
merged 1 commit into from
Oct 12, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion cypress/integration/E2E.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,8 @@ const hankeMockIndex: Partial<HankeIndexData> = {
tyyppi: HANKE_INDEX_TYPE.PERUSINDEKSI,
},
pyorailyIndeksi: 3,
joukkoliikenneIndeksi: 4,
raitiovaunuIndeksi: 4,
linjaautoIndeksi: 3,
perusIndeksi: 4.8,
};

Expand Down
11 changes: 6 additions & 5 deletions cypress/utils/indexValidator.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,18 @@ export const validateIndexes = (hankeIndexData: Partial<HankeIndexData>) => {
if (hankeIndexData.liikennehaittaIndeksi && hankeIndexData.liikennehaittaIndeksi.indeksi) {
cy.get('[data-testid=test-liikennehaittaIndeksi]').should('not.be.empty');
cy.get('[data-testid=test-liikennehaittaIndeksi]').contains(
hankeIndexData.liikennehaittaIndeksi.indeksi
hankeIndexData.liikennehaittaIndeksi.indeksi,
);
}
if (hankeIndexData.pyorailyIndeksi) {
cy.get('[data-testid=test-pyorailyIndeksi]').should('not.be.empty');
cy.get('[data-testid=test-pyorailyIndeksi]').contains(hankeIndexData.pyorailyIndeksi);
}
if (hankeIndexData.joukkoliikenneIndeksi) {
cy.get('[data-testid=test-joukkoliikenneIndeksi]').contains(
hankeIndexData.joukkoliikenneIndeksi
);
if (hankeIndexData.raitiovaunuIndeksi) {
cy.get('[data-testid=test-raitiovaunuIndeksi]').contains(hankeIndexData.raitiovaunuIndeksi);
}
if (hankeIndexData.linjaautoIndeksi) {
cy.get('[data-testid=test-linjaautoIndeksi]').contains(hankeIndexData.linjaautoIndeksi);
}
if (hankeIndexData.perusIndeksi) {
cy.get('[data-testid=test-ruuhkautumisIndeksi]').contains(hankeIndexData.perusIndeksi);
Expand Down
2 changes: 1 addition & 1 deletion src/domain/hanke/accessRights/AccessRightsView.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import usersData from '../../mocks/data/users-data.json';
import { SignedInUser } from '../hankeUsers/hankeUser';
import * as hankeUsersApi from '../../hanke/hankeUsers/hankeUsersApi';

jest.setTimeout(40000);
jest.setTimeout(50000);

afterEach(cleanup);

Expand Down
14 changes: 9 additions & 5 deletions src/domain/hanke/hankeIndexes/HankeIndexes.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,17 +14,21 @@ describe('HankeSidebar', () => {
expect(findByText('Pyöräilyn pääreitti')).toBeTruthy();
expect(getByTestId('test-pyorailyIndeksi')).toHaveTextContent('3');
expect(getByTestId('test-pyorailyIndeksi-content')).toHaveTextContent(
'Kiertoreittitarve: todennäköinen'
'Kiertoreittitarve: todennäköinen',
);
expect(findByText('Merkittävät joukkoliikennereitit')).toBeTruthy();
expect(getByTestId('test-joukkoliikenneIndeksi')).toHaveTextContent('1');
expect(getByTestId('test-joukkoliikenneIndeksi-content')).toHaveTextContent(
'Kiertoreittitarve: ei tarvetta'
expect(getByTestId('test-raitiovaunuIndeksi')).toHaveTextContent('1');
expect(getByTestId('test-raitiovaunuIndeksi-content')).toHaveTextContent(
'Kiertoreittitarve: ei tarvetta',
);
expect(getByTestId('test-linjaautoIndeksi')).toHaveTextContent('2');
expect(getByTestId('test-linjaautoIndeksi-content')).toHaveTextContent(
'Kiertoreittitarve: ei tarvetta',
);
expect(findByText('Ruuhkautuminen')).toBeTruthy();
expect(getByTestId('test-ruuhkautumisIndeksi')).toHaveTextContent('4');
expect(getByTestId('test-ruuhkautumisIndeksi-content')).toHaveTextContent(
'Kiertoreittitarve: merkittävä'
'Kiertoreittitarve: merkittävä',
);
});
});
27 changes: 19 additions & 8 deletions src/domain/hanke/hankeIndexes/HankeIndexes.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-unused-vars */
import React from 'react';
import { useTranslation } from 'react-i18next';
import { LoadingSpinner, Tooltip } from 'hds-react';
Expand Down Expand Up @@ -95,7 +94,8 @@ const HankeIndexes: React.FC<React.PropsWithChildren<Props>> = ({
const hankeIndexTitle = indexTitle || t('hankeIndexes:haittaindeksit');
const liikennehaittaIndeksi = hankeIndexData?.liikennehaittaIndeksi.indeksi;
const pyorailyIndeksi = hankeIndexData?.pyorailyIndeksi;
const joukkoliikenneIndeksi = hankeIndexData?.joukkoliikenneIndeksi;
const raitiovaunuIndeksi = hankeIndexData?.raitiovaunuIndeksi;
const linjaautoIndeksi = hankeIndexData?.linjaautoIndeksi;
const perusIndeksi = hankeIndexData?.perusIndeksi;

return (
Expand Down Expand Up @@ -123,7 +123,7 @@ const HankeIndexes: React.FC<React.PropsWithChildren<Props>> = ({
<IndexSection
title={t('hankeIndexes:pyorailynPaareitti')}
content={`${t('hankeIndexes:kiertoreittitarve')}: ${t(
getDetourNeedByIndex(pyorailyIndeksi)
getDetourNeedByIndex(pyorailyIndeksi),
)}`}
index={pyorailyIndeksi}
testId="test-pyorailyIndeksi"
Expand All @@ -132,20 +132,31 @@ const HankeIndexes: React.FC<React.PropsWithChildren<Props>> = ({
/>

<IndexSection
title={t('hankeIndexes:merkittavatJoukkoliikennereitit')}
title={t('hankeIndexes:joukkoliikenneRaitiovaunu')}
content={`${t('hankeIndexes:kiertoreittitarve')}: ${t(
getDetourNeedByIndex(joukkoliikenneIndeksi)
getDetourNeedByIndex(raitiovaunuIndeksi),
)}`}
index={joukkoliikenneIndeksi}
testId="test-joukkoliikenneIndeksi"
index={raitiovaunuIndeksi}
testId="test-raitiovaunuIndeksi"
loading={loading}
showIndexText={!small}
/>

<IndexSection
title={t('hankeIndexes:joukkoliikenneLinjaauto')}
content={`${t('hankeIndexes:kiertoreittitarve')}: ${t(
getDetourNeedByIndex(linjaautoIndeksi),
)}`}
index={linjaautoIndeksi}
testId="test-linjaautoIndeksi"
loading={loading}
showIndexText={!small}
/>

<IndexSection
title={t('hankeIndexes:ruuhkautuminen')}
content={`${t('hankeIndexes:kiertoreittitarve')}: ${t(
getDetourNeedByIndex(perusIndeksi)
getDetourNeedByIndex(perusIndeksi),
)}`}
index={perusIndeksi}
testId="test-ruuhkautumisIndeksi"
Expand Down
3 changes: 2 additions & 1 deletion src/domain/hanke/hankeView/HankeView.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,8 @@ test('Correct information about hanke should be displayed', async () => {
expect(screen.getAllByText('2.1.2023–24.2.2023').length).toBe(2);
expect(screen.getByTestId('test-liikennehaittaIndeksi')).toHaveTextContent('3');
expect(screen.getByTestId('test-pyorailyIndeksi')).toHaveTextContent('3.5');
expect(screen.getByTestId('test-joukkoliikenneIndeksi')).toHaveTextContent('2');
expect(screen.getByTestId('test-raitiovaunuIndeksi')).toHaveTextContent('2');
expect(screen.getByTestId('test-linjaautoIndeksi')).toHaveTextContent('1');
expect(screen.getByTestId('test-ruuhkautumisIndeksi')).toHaveTextContent('1.5');
expect(screen.queryByText('11974 m²')).toBeInTheDocument();
expect(screen.queryByText('Meluhaitta: Satunnainen haitta')).toBeInTheDocument();
Expand Down
6 changes: 4 additions & 2 deletions src/domain/mocks/data/hankkeet-data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@ const hankkeet: HankeDataDraft[] = [
tila: 'VOIMASSA',
perusIndeksi: 3.5,
pyorailyIndeksi: 3,
joukkoliikenneIndeksi: 4,
linjaautoIndeksi: 4,
raitiovaunuIndeksi: 2,
liikennehaittaIndeksi: {
indeksi: 4,
// eslint-disable-next-line @typescript-eslint/no-explicit-any
Expand Down Expand Up @@ -274,7 +275,8 @@ const hankkeet: HankeDataDraft[] = [
tila: 'VOIMASSA',
perusIndeksi: 1.5,
pyorailyIndeksi: 3.5,
joukkoliikenneIndeksi: 2,
linjaautoIndeksi: 1,
raitiovaunuIndeksi: 2,
liikennehaittaIndeksi: {
indeksi: 3,
// eslint-disable-next-line @typescript-eslint/no-explicit-any
Expand Down
3 changes: 2 additions & 1 deletion src/domain/mocks/hankeIndexData.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ const hankeIndexData: HankeIndexData = {
},
perusIndeksi: 4,
pyorailyIndeksi: 3,
joukkoliikenneIndeksi: 1,
linjaautoIndeksi: 2,
raitiovaunuIndeksi: 1,
tila: HANKE_INDEX_STATE.VOIMASSA,
};

Expand Down
3 changes: 2 additions & 1 deletion src/domain/types/hanke.ts
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,8 @@ export interface HankeIndexData {
liikennehaittaIndeksi: LiikenneHaittaIndeksi;
perusIndeksi: number;
pyorailyIndeksi: number;
joukkoliikenneIndeksi: number;
linjaautoIndeksi: number;
raitiovaunuIndeksi: number;
tila: HANKE_INDEX_STATE_KEY;
}

Expand Down
1 change: 0 additions & 1 deletion src/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -648,7 +648,6 @@
"liikennehaittaindeksi": "Traffic nuisance index",
"ruuhkautuminen": "Congestion",
"pyorailynPaareitti": "Main cycling route",
"merkittavatJoukkoliikennereitit": "Major public transport routes",
"kiertoreittitarve": "Detour need",
"KIERTOREITTITARPEET": {
"TODENNAKOINEN": "likely",
Expand Down
3 changes: 2 additions & 1 deletion src/locales/fi.json
Original file line number Diff line number Diff line change
Expand Up @@ -664,7 +664,8 @@
"liikennehaittaindeksi": "Liikennehaittaindeksi",
"ruuhkautuminen": "Ruuhkautuminen",
"pyorailynPaareitti": "Pyöräilyn pääreitti",
"merkittavatJoukkoliikennereitit": "Merkittävät joukkoliikennereitit",
"joukkoliikenneRaitiovaunu": "Joukkoliikenteen merkittävyys: Raitioliikenne",
"joukkoliikenneLinjaauto": "Joukkoliikenteen merkittävyys: Linja-autojen paikallisliikenne",
"kiertoreittitarve": "Kiertoreittitarve",
"KIERTOREITTITARPEET": {
"TODENNAKOINEN": "todennäköinen",
Expand Down
1 change: 0 additions & 1 deletion src/locales/sv.json
Original file line number Diff line number Diff line change
Expand Up @@ -648,7 +648,6 @@
"liikennehaittaindeksi": "Trafikolägenhetsindex",
"ruuhkautuminen": "Köbildning",
"pyorailynPaareitti": "Huvudled för cykeltrafik",
"merkittavatJoukkoliikennereitit": "Viktiga leder för kollektivtrafik",
"kiertoreittitarve": "Behov av omväg",
"KIERTOREITTITARPEET": {
"TODENNAKOINEN": "sannolik",
Expand Down
Loading