|
| 1 | +package no.nav.familie.ef.iverksett.økonomi.grensesnitt |
| 2 | + |
| 3 | +import no.nav.familie.ef.iverksett.ServerTest |
| 4 | +import no.nav.familie.kontrakter.felles.Ressurs |
| 5 | +import no.nav.familie.kontrakter.felles.ef.StønadType |
| 6 | +import no.nav.familie.prosessering.domene.Status |
| 7 | +import no.nav.familie.prosessering.internal.TaskService |
| 8 | +import org.assertj.core.api.Assertions.assertThat |
| 9 | +import org.junit.jupiter.api.BeforeEach |
| 10 | +import org.junit.jupiter.api.Test |
| 11 | +import org.springframework.beans.factory.annotation.Autowired |
| 12 | +import org.springframework.boot.test.web.client.exchange |
| 13 | +import org.springframework.http.HttpEntity |
| 14 | +import org.springframework.http.HttpHeaders |
| 15 | +import org.springframework.http.HttpMethod |
| 16 | +import org.springframework.http.HttpStatus |
| 17 | +import org.springframework.http.MediaType |
| 18 | +import org.springframework.http.ResponseEntity |
| 19 | + |
| 20 | +class GrensesnittavstemmingControllerTest : ServerTest() { |
| 21 | + |
| 22 | + @Autowired |
| 23 | + private lateinit var taskService: TaskService |
| 24 | + |
| 25 | + @BeforeEach |
| 26 | + fun setUp() { |
| 27 | + headers.setBearerAuth(søkerBearerToken()) |
| 28 | + headers.set(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE) |
| 29 | + } |
| 30 | + |
| 31 | + @Test |
| 32 | + fun `skal opprette grensesnittavstemming for overgangsstønad, barnetilsyn og skolepenger`() { |
| 33 | + StønadType.values().forEachIndexed { index, stønadType -> |
| 34 | + val antall = index + 1 |
| 35 | + val grensesnittAvstemmingRequest = GrensesnittavstemmingRequestDto(stønadType = stønadType) |
| 36 | + |
| 37 | + val responsOk: ResponseEntity<Ressurs<Unit>> = startGrensesnittavstemming(grensesnittAvstemmingRequest) |
| 38 | + val responsDuplikat: ResponseEntity<Ressurs<Unit>> = startGrensesnittavstemming(grensesnittAvstemmingRequest) |
| 39 | + |
| 40 | + assertThat(responsOk.statusCode.value()).isEqualTo(HttpStatus.OK.value()) |
| 41 | + assertThat(responsDuplikat.statusCode.value()).isEqualTo(HttpStatus.BAD_REQUEST.value()) |
| 42 | + assertThat(taskService.finnTasksMedStatus(listOf(Status.UBEHANDLET, Status.KLAR_TIL_PLUKK), GrensesnittavstemmingTask.TYPE)).hasSize(antall) |
| 43 | + } |
| 44 | + } |
| 45 | + |
| 46 | + private fun startGrensesnittavstemming(grensesnittAvstemmingRequest: GrensesnittavstemmingRequestDto): ResponseEntity<Ressurs<Unit>> = restTemplate.exchange( |
| 47 | + localhostUrl("/api/grensesnittavstemming"), |
| 48 | + HttpMethod.POST, |
| 49 | + HttpEntity(grensesnittAvstemmingRequest, headers), |
| 50 | + ) |
| 51 | +} |
0 commit comments