Skip to content

Commit 4c402e3

Browse files
committed
Merge branch 'main' of github.com:navikt/hotsak-frontend
2 parents cdcd0fa + bec6ead commit 4c402e3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+227
-260
lines changed

client/cypress/e2e/1_oppgaveliste.cy.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,6 @@ describe('Oppgaveliste', () => {
2626
cy.findAllByRole('button', { name: /Ta saken/i })
2727
.first()
2828
.click()
29-
cy.url().should('include', '/sak/1005/hjelpemidler')
29+
cy.url().should('match', /\/sak\/\d+\/hjelpemidler/)
3030
})
3131
})

client/cypress/e2e/2_saksbehandling_soknad.cy.ts

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ describe('Saksbehandling søknad', () => {
99
})
1010

1111
it('burde kunne innvilge en søknad', () => {
12-
plukkSak('1005')
12+
plukkSak('Søknad')
1313

1414
cy.findByRole('button', {
1515
name: /innvilg søknaden/i,
@@ -30,21 +30,22 @@ describe('Saksbehandling søknad', () => {
3030
cy.get('[data-cy="tag-soknad-status"]').should('have.text', 'Innvilget')
3131
})
3232

33-
it.skip('burde kunne overføre en søknad til Gosys', () => {
34-
plukkSak('1005')
33+
it('burde kunne overføre en søknad til Gosys', () => {
34+
plukkSak('Søknad')
3535

3636
cy.findByRole('button', {
3737
name: /overfør til gosys/i,
3838
}).click()
3939

4040
const overførModal = cy
4141
.findByRole('dialog', {
42-
name: /overfør til gosys/i,
42+
name: /Vil du overføre saken til Gosys/i,
4343
})
4444
.should('be.visible')
4545

4646
overførModal.within(() => {
4747
cy.findAllByRole('radio').first().click()
48+
cy.findAllByRole('checkbox').first().click()
4849
cy.findByRole('button', {
4950
name: /overfør til gosys/i,
5051
}).click()
@@ -53,16 +54,16 @@ describe('Saksbehandling søknad', () => {
5354
cy.get('[data-cy="tag-soknad-status"]').should('have.text', 'Overført til Gosys')
5455
})
5556

56-
it.skip('Ikke valgt årsak ved overføring til Gosys gir valideringsfeil', () => {
57-
plukkSak('1005')
57+
it('Ikke valgt årsak ved overføring til Gosys gir valideringsfeil', () => {
58+
plukkSak('Søknad')
5859

5960
cy.findByRole('button', {
6061
name: /overfør til gosys/i,
6162
}).click()
6263

6364
const overførModal = cy
6465
.findByRole('dialog', {
65-
name: /overfør til gosys/i,
66+
name: /Vil du overføre saken til Gosys/i,
6667
})
6768
.should('be.visible')
6869

@@ -71,24 +72,26 @@ describe('Saksbehandling søknad', () => {
7172
name: /overfør til gosys/i,
7273
}).click()
7374

74-
cy.findByText(/du må velge minst en årsak i listen over/i).should('be.visible')
75+
cy.findByText(/må fylles ut/i).should('be.visible')
7576
})
7677
})
7778

7879
it('Navigering mellom tabs i søknadsbildet', () => {
79-
plukkSak('1005')
80-
81-
const tabs = cy.findAllByRole('tablist').first()
80+
plukkSak('Søknad')
8281

83-
tabs.within(() => {
84-
cy.findByRole('tab', { name: /bruker/i }).click()
85-
})
82+
cy.findAllByRole('tablist')
83+
.first()
84+
.within(() => {
85+
cy.findByRole('tab', { name: /bruker/i }).click()
86+
})
8687

8788
cy.findByRole('heading', { level: 1, name: /hjelpemiddelbruker/i }).should('exist')
8889

89-
tabs.within(() => {
90-
cy.findByRole('tab', { name: /formidler/i }).click()
91-
})
90+
cy.findAllByRole('tablist')
91+
.first()
92+
.within(() => {
93+
cy.findByRole('tab', { name: /formidler/i }).click()
94+
})
9295

9396
cy.findByRole('heading', { level: 1, name: /formidler og opplæringsansvarlig/i }).should('exist')
9497

client/cypress/e2e/3_saksbehandling_bestilling.cy.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ describe('Saksbehandling bestilling', () => {
99
})
1010

1111
it('burde kunne godkjenne en bestilling', () => {
12-
plukkSak('1009')
12+
plukkSak('Bestilling')
1313

1414
cy.findByRole('button', {
1515
name: /godkjenn/i,
@@ -35,7 +35,7 @@ describe('Saksbehandling bestilling', () => {
3535
})
3636

3737
it('burde kunne avvise bestilling', () => {
38-
plukkSak('1009')
38+
plukkSak('Bestilling')
3939

4040
cy.findByRole('button', {
4141
name: /avvis/i,

client/cypress/e2e/4_saksbehandling_barnebriller.cy.ts

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,15 @@
11
/// <reference types="Cypress" />
22
/// <reference types="@testing-library/cypress" />
33

4-
import { clearIndexDb, fortsettSaksbehandling, taBrillesak } from './testUtils'
4+
import { clearIndexDb, fortsettSaksbehandling, plukkSak, byttSaksbehandler } from './testUtils'
55

66
describe('Saksbehandling brillesøknad', () => {
77
beforeEach(() => {
88
clearIndexDb()
99
})
1010

1111
it('burde kunne innvilge en brillesøknad', () => {
12-
const saksnummer = '1010'
13-
cy.visit(`/sak/${saksnummer}`)
14-
taBrillesak()
12+
plukkSak('Tilskudd')
1513

1614
cy.findByRole('textbox', { name: /fødselsnummer innsender/i }).type('1234')
1715
cy.findByRole('button', { name: /hent kontonummer/i }).click()
@@ -37,7 +35,7 @@ describe('Saksbehandling brillesøknad', () => {
3735
cy.findByRole('button', { name: /send til godkjenning/i }).click()
3836
cy.findByTestId('tag-sak-status').should('contain', 'Til godkjenning')
3937

40-
taBrillesak('Vurderer Vilkårsen')
38+
byttSaksbehandler('Vurderer Vilkårsen')
4139

4240
cy.findByRole('radio', { name: /godkjenn/i }).check()
4341
cy.findByRole('button', { name: /godkjenn vedtaket/i }).click()
@@ -61,10 +59,8 @@ describe('Saksbehandling brillesøknad', () => {
6159
it('Manuell overstyring av vilkår', () => {
6260
const bestillingsdatoForLangtTilbakeITid = '01.01.2023'
6361

64-
const saksnummer = '1010'
65-
cy.visit(`/sak/${saksnummer}`)
62+
plukkSak('Tilskudd')
6663
cy.wait(1000)
67-
taBrillesak()
6864

6965
cy.findByRole('textbox', { name: /fødselsnummer innsender/i }).type('1234')
7066
cy.findByRole('button', { name: /hent kontonummer/i }).click()
@@ -103,10 +99,7 @@ describe('Saksbehandling brillesøknad', () => {
10399
})
104100

105101
it('burde kunne avslå en brillesøknad', () => {
106-
const saksnummer = '1010'
107-
cy.visit(`/sak/${saksnummer}`)
108-
cy.wait(1000)
109-
taBrillesak()
102+
plukkSak('Tilskudd')
110103

111104
/* Registrer søknad */
112105
cy.findByRole('textbox', { name: /fødselsnummer innsender/i }).type('1234')
@@ -148,7 +141,7 @@ describe('Saksbehandling brillesøknad', () => {
148141

149142
/* Totrinnskontroll */
150143
cy.wait(2000)
151-
taBrillesak('Vurderer Vilkårsen')
144+
byttSaksbehandler('Vurderer Vilkårsen')
152145

153146
cy.findByRole('radio', { name: /godkjenn/i }).check()
154147
cy.findByRole('button', { name: /godkjenn vedtaket/i }).click()
@@ -170,9 +163,7 @@ describe('Saksbehandling brillesøknad', () => {
170163
})
171164

172165
it('burde kunne avslå en brillesøknad på grunn av manglende opplysninger', () => {
173-
const saksnummer = '1010'
174-
cy.visit(`/sak/${saksnummer}`)
175-
taBrillesak()
166+
plukkSak('Tilskudd')
176167

177168
/* Registrer søknad */
178169
cy.findByRole('group', { name: /inneholder bestillingen glass/i }).within(() => {

client/cypress/e2e/5_notater.cy.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/// <reference types="Cypress" />
22
/// <reference types="@testing-library/cypress" />
33

4-
import { clearIndexDb, taBrillesak } from './testUtils'
4+
import { clearIndexDb, plukkSak } from './testUtils'
55

66
describe('Håndtering av notater på brillesaker', () => {
77
beforeEach(() => {
@@ -11,10 +11,7 @@ describe('Håndtering av notater på brillesaker', () => {
1111
// TODO: Skipper denne testen fordi vi skal over til felles notatløsnning og da er ikke flyten under relevant.
1212
// Blir sannsnyligvis nye tester for felles notatløsning
1313
it.skip('Legge til notater på åpen sak', () => {
14-
const saksnummer = '1010'
15-
cy.visit(`/sak/${saksnummer}`)
16-
17-
taBrillesak()
14+
plukkSak('Søknad')
1815

1916
cy.findByRole('tab', { name: /notat/i }).click()
2017
cy.findByRole('textbox', { name: /nytt notat/i }).type('Tekst i notatet')

client/cypress/e2e/6_journalforing.cy.ts

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,16 @@
11
/// <reference types="Cypress" />
22
/// <reference types="@testing-library/cypress" />
33

4-
import { clearIndexDb } from './testUtils'
4+
import { clearIndexDb, plukkJournalføringsoppgave, plukkSak } from './testUtils'
55

66
describe('Manuell journalføring og opprettelse av sak', () => {
77
beforeEach(() => {
88
clearIndexDb()
99
})
1010

1111
it('Standard journalføring uten endringer på journalpost', () => {
12-
const journalpostid = '1004'
13-
cy.visit(`/oppgaveliste/dokumenter/${journalpostid}`)
12+
plukkJournalføringsoppgave()
1413

15-
cy.findByRole('button', { name: /start journalføring/i }).click()
1614
cy.findByRole('button', { name: /journalfør og opprett sak/i }).click()
1715
cy.wait(2000)
1816
cy.url().should('include', '/sak/')
@@ -24,10 +22,8 @@ describe('Manuell journalføring og opprettelse av sak', () => {
2422
})
2523

2624
it('Manuell journalføring med endring av bruker tittel', () => {
27-
const journalpostid = '1004'
2825
const nyDokumentTittel = 'Ny tittel på dokumentet'
29-
cy.visit(`/oppgaveliste/dokumenter/${journalpostid}`)
30-
cy.findByRole('button', { name: /start journalføring/i }).click()
26+
plukkJournalføringsoppgave()
3127
cy.findByRole('region', {
3228
name: /bruker det skal journalføres på/i,
3329
}).click()
@@ -51,11 +47,8 @@ describe('Manuell journalføring og opprettelse av sak', () => {
5147
})
5248

5349
it('Manuell journalføring med knytning til eksisterende sak', () => {
54-
const journalpostid = '1003'
55-
cy.visit(`/oppgaveliste/dokumenter/${journalpostid}`)
56-
cy.wait(1000)
57-
cy.findByRole('button', { name: /start journalføring/i }).click()
58-
50+
plukkSak('Tilskudd')
51+
plukkJournalføringsoppgave()
5952
cy.findByRole('table', { name: /åpne saker/i }).within(() => {
6053
cy.findAllByRole('radio').first().check()
6154
})

client/cypress/e2e/testUtils.ts

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,29 @@ export const clearIndexDb = () => {
77
cy.clearIndexedDb('SakStore')
88
}
99

10-
export const plukkSak = (saksnummer: string) => {
11-
cy.visit(`/sak/${saksnummer}/hjelpemidler`)
10+
export const plukkSak = (sakstype: 'Søknad' | 'Bestilling' | 'Tilskudd') => {
11+
cy.visit('/')
12+
13+
cy.findByLabelText(/Sakstype/i).select(sakstype)
14+
1215
cy.findAllByRole('button', { name: /Ta saken/i })
1316
.first()
1417
.click()
1518
}
1619

20+
export const plukkJournalføringsoppgave = () => {
21+
cy.visit('/oppgaveliste/dokumenter')
22+
cy.findAllByRole('button', { name: /start journalføring/i })
23+
.first()
24+
.click()
25+
}
26+
1727
export const fortsettSaksbehandling = () => {
1828
cy.findAllByRole('button').filter(':contains("Meny")').first().click()
1929
cy.findAllByRole('button', { name: /Fortsett behandling/i }).click()
2030
}
2131

22-
export const taBrillesak = (saksbehandler: string = 'Silje Saksbehandler') => {
32+
export const byttSaksbehandler = (saksbehandler: string = 'Silje Saksbehandler') => {
2333
cy.findByTestId('select-bytt-bruker').select(saksbehandler)
2434
cy.wait(1000)
2535
cy.findByTitle(/saksmeny/i).click()

client/src/io/http.ts

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -235,18 +235,6 @@ export const postBrevutsending = async (brevTekst: BrevTekst) => {
235235
return post(`${baseUrl}/api/sak/${brevTekst.sakId}/brevsending`, brevTekst)
236236
}
237237

238-
/**
239-
* NB! Fungerer kun for MORS pt.
240-
*
241-
* @param sakId
242-
*/
243-
export async function postHenleggelse(sakId: string) {
244-
return post(`${baseUrl}/api/sak/${sakId}/henleggelse`, {
245-
valgteÅrsaker: ['Bruker er død'],
246-
begrunnelse: undefined,
247-
})
248-
}
249-
250238
export function ifMatchVersjon(versjon?: number) {
251239
if (versjon) {
252240
return { 'If-Match': toWeakETag(versjon) }

client/src/mocks/data/NotatStore.ts

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,22 @@ export class NotatStore extends Dexie {
4848

4949
async lagreUtkast(sakId: string, utkast: NotatUtkast) {
5050
const saksbehandler = await this.saksbehandlerStore.innloggetSaksbehandler()
51-
return this.notater.add({
52-
sakId,
53-
saksbehandler,
54-
type: utkast.type,
55-
tittel: utkast.tittel || '',
56-
klassifisering: utkast.klassifisering,
57-
målform: MålformType.BOKMÅL,
58-
tekst: utkast.tekst || '',
59-
opprettet: nåIso(),
60-
oppdatert: nåIso(),
61-
})
51+
try {
52+
return await this.notater.add({
53+
sakId,
54+
saksbehandler,
55+
type: utkast.type,
56+
tittel: utkast.tittel || '',
57+
klassifisering: utkast.klassifisering,
58+
målform: MålformType.BOKMÅL,
59+
tekst: utkast.tekst || '',
60+
opprettet: nåIso(),
61+
oppdatert: nåIso(),
62+
})
63+
} catch (error) {
64+
console.error('Feil ved lagring av utkast:', error)
65+
throw error
66+
}
6267
}
6368

6469
async ferdigstillNotat(notatId: string, payload: FerdigstillNotatRequest) {

client/src/mocks/data/SaksoversiktStore.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import { OppgaveStatusType, Sakstype, Saksoversikt } from '../../types/types.internal'
22

3+
// TODO Fjerne denne storen og heller hente data fra sakStore
4+
35
const saksoversikt: Saksoversikt[] = [
46
{
57
hotsakSaker: [

client/src/mocks/handlers/oppgaver.ts

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import type { OppgaveApiResponse } from '../../types/experimentalTypes.ts'
55
import { Oppgave, OppgaveStatusType, Oppgavetype, SakerFilter } from '../../types/types.internal'
66
import type { StoreHandlersFactory } from '../data'
77
import { delay, respondNoContent } from './response.ts'
8-
import type { OppgaveId } from '../../oppgave/oppgaveId.ts'
8+
import { erSakOppgaveId, OppgaveId, oppgaveIdUtenPrefix } from '../../oppgave/oppgaveId.ts'
99
import type { Oppgavebehandlere } from '../../oppgave/useOppgavebehandlere.ts'
1010

1111
export const oppgaveHandlers: StoreHandlersFactory = ({ oppgaveStore, sakStore, saksbehandlerStore }) => [
@@ -45,9 +45,23 @@ export const oppgaveHandlers: StoreHandlersFactory = ({ oppgaveStore, sakStore,
4545
}),
4646

4747
http.post<{ oppgaveId: OppgaveId }>(`/api/oppgaver-v2/:oppgaveId/tildeling`, async ({ params }) => {
48-
await oppgaveStore.tildel(params.oppgaveId)
49-
console.log(`Tildeler oppgaveId: ${params.oppgaveId}`)
48+
const { oppgaveId } = params
49+
console.log(`Tildeler oppgaveId: ${oppgaveId}`)
50+
if (erSakOppgaveId(oppgaveId)) {
51+
await sakStore.tildel(oppgaveIdUtenPrefix(oppgaveId))
52+
} else {
53+
await oppgaveStore.tildel(oppgaveId)
54+
}
55+
await delay(200)
56+
return respondNoContent()
57+
}),
5058

59+
http.delete<{ oppgaveId: OppgaveId }>(`/api/oppgaver-v2/:oppgaveId/tildeling`, async ({ params }) => {
60+
const { oppgaveId } = params
61+
console.log(`Fjerner tildeling for oppgaveId: ${oppgaveId}`)
62+
if (erSakOppgaveId(oppgaveId)) {
63+
await sakStore.frigi(oppgaveIdUtenPrefix(oppgaveId))
64+
}
5165
await delay(200)
5266
return respondNoContent()
5367
}),

0 commit comments

Comments
 (0)