Skip to content

Commit

Permalink
HAI-1879 Show separate bus and tram indexes (#384)
Browse files Browse the repository at this point in the history
Instead of just one joukkoliikenneindeksi show separate indexes
for bus and tram.
  • Loading branch information
markohaarni authored Oct 12, 2023
1 parent 0e70262 commit dcfcf00
Show file tree
Hide file tree
Showing 12 changed files with 49 additions and 28 deletions.
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 @@ -83,7 +83,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

0 comments on commit dcfcf00

Please sign in to comment.