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

Brev refaktor #235

Merged
merged 7 commits into from
Mar 13, 2025
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
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
Når du har en inntekt, får du mindre penger i ungdomsytelse. Vi regner ut hva {{reduksjonssats}} prosent av inntekten din er hver måned, og så trekker vi dette beløpet fra pengene du får i ungdomsytelsen for den måneden.
</p>
<p>
Likevel får du til sammen <i>mer</i> penger når du både har en inntekt og får ungdomsytelse, enn hvis du bare hadde fått penger gjennom ungdomsytelsen.
Likevel får du til sammen mer penger når du både har en inntekt og får ungdomsytelse, enn hvis du bare hadde fått penger gjennom ungdomsytelsen.
</p>
<p>
Se <a title="utregningseksempler" href="https://nav.no/ungdomsportal/beregning">eksempel</a> på hvordan vi regner ut ungdomsytelsen basert på inntekt i Ungdomsportalen.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@

<p>For å regne hva du får utbetalt i måneden ganges dagsatsen med antall virkedager i måneden. Du kan regne ut
hva du får for en måned samt se flere eksempler på utregninger på
<a href="https://nav.no/ungdomsytelse">nav.no/ungdomsytelse</a>
<a href="https://nav.no/ungdomsytelse">nav.no/ungdomsytelse</a>.
</p>

<p>Vedtaket er gjort etter arbeidsmarkedsloven § xx og forskrift om xxx § xx.</p>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,8 @@ private BrevGenerererTjeneste lagBrevGenererTjeneste(boolean ignorePdf) {
var endringInnholdBygger = new EndringHøySatsInnholdBygger(ungdomsytelseGrunnlagRepository);

var detaljertResultatUtleder = new DetaljertResultatUtlederImpl(
new ProsessTriggerPeriodeUtleder(prosessTriggereRepository, new UngdomsytelseSøknadsperiodeTjeneste(ungdomsytelseStartdatoRepository, ungdomsprogramPeriodeTjeneste, repositoryProvider.getBehandlingRepository())),
tilkjentYtelseRepository);
new ProsessTriggerPeriodeUtleder(prosessTriggereRepository, new UngdomsytelseSøknadsperiodeTjeneste(ungdomsytelseStartdatoRepository, ungdomsprogramPeriodeTjeneste, repositoryProvider.getBehandlingRepository())),
tilkjentYtelseRepository);

Instance<VedtaksbrevInnholdBygger> innholdByggere = new UnitTestLookupInstanceImpl<>(endringInnholdBygger);

Expand All @@ -100,21 +100,21 @@ private BrevGenerererTjeneste lagBrevGenererTjeneste(boolean ignorePdf) {
new AktørTjeneste(pdlKlient),
new PdfGenKlient(ignorePdf),
personopplysningRepository,
new VedtaksbrevRegler(
repositoryProvider.getBehandlingRepository(), innholdByggere, detaljertResultatUtleder));
new VedtaksbrevRegler(
repositoryProvider.getBehandlingRepository(), innholdByggere, detaljertResultatUtleder));
}

@Test()
@DisplayName("Verifiserer faste tekster og mottaker")
void skalHaAlleStandardtekster() {
@DisplayName("Verifiserer formatering på overskrifter")
void verifiserOverskrifter() {
UngTestScenario ungTestscenario = BrevScenarioer.endring25År(LocalDate.of(1999, 3, 25));
var behandling = lagScenario(ungTestscenario);

GenerertBrev generertBrev = genererVedtaksbrevBrev(behandling.getId());

var brevtekst = generertBrev.dokument().html();

VedtaksbrevStandardTekstVerifiserer.verifiserStandardVedtaksbrevTekster(brevtekst, fnr, ungTestscenario);
VedtaksbrevVerifikasjon.verifiserStandardOverskrifter(brevtekst);

}

Expand All @@ -123,6 +123,12 @@ void skalHaAlleStandardtekster() {
void standardEndringHøySats() {
LocalDate fødselsdato = LocalDate.of(1999, 3, 25);
var ungTestGrunnlag = BrevScenarioer.endring25År(fødselsdato);
var forventet = VedtaksbrevVerifikasjon.medHeaderOgFooter(fnr,
"Vi har endret ungdomsytelsen din " +
"Fra 25. mars 2024 får du ny dagsats på 954 kroner fordi du fyller 25 år. " +
"Nav utbetaler 2 ganger grunnbeløp fra deltager er 25 år. " +
"Vedtaket er gjort etter arbeidsmarkedsloven § xx og forskrift om xxx § xx. ");


var behandling = lagScenario(ungTestGrunnlag);

Expand All @@ -131,19 +137,12 @@ void skalHaAlleStandardtekster() {

var brevtekst = generertBrev.dokument().html();

assertThatHtml(brevtekst).containsHtmlSubSequenceOnce(
"<h1>Vi har endret ungdomsytelsen din</h1>"
).containsSentenceSubSequenceOnce(
"Fra 25. mars 2024 får du ny dagsats på 954 kroner fordi du fyller 25 år.",
"Nav utbetaler 2 ganger grunnbeløp fra deltager er 25 år.",
"Vedtaket er gjort etter arbeidsmarkedsloven § xx og forskrift om xxx § xx."
);

}
assertThatHtml(brevtekst)
.asPlainTextIsEqualTo(forventet)
.containsHtmlSubSequenceOnce(
"<h1>Vi har endret ungdomsytelsen din</h1>"
);

@NotNull
private UngTestRepositories lagUngTestRepositories() {
return new UngTestRepositories(repositoryProvider, ungdomsytelseGrunnlagRepository, ungdomsprogramPeriodeRepository, ungdomsytelseStartdatoRepository, tilkjentYtelseRepository, prosessTriggereRepository);
}

@Test
Expand All @@ -169,6 +168,11 @@ void pdfStrukturTest() throws IOException {

}

@NotNull
private UngTestRepositories lagUngTestRepositories() {
return new UngTestRepositories(repositoryProvider, ungdomsytelseGrunnlagRepository, ungdomsprogramPeriodeRepository, ungdomsytelseStartdatoRepository, tilkjentYtelseRepository, prosessTriggereRepository);
}


private Behandling lagScenario(UngTestScenario ungTestscenario) {
TestScenarioBuilder scenarioBuilder = TestScenarioBuilder.builderMedSøknad()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -112,16 +112,16 @@ private BrevGenerererTjeneste lagBrevGenererTjeneste(boolean ignorePdf) {
}

@Test()
@DisplayName("Verifiserer faste tekster og mottaker")
void skalHaAlleStandardtekster() {
@DisplayName("Verifiserer formatering på overskrifter")
void verifiserOverskrifter() {
UngTestScenario ungTestscenario = BrevScenarioer.endringMedInntektPå10k_19år(LocalDate.of(2024, 12, 1));
var behandling = lagScenario(ungTestscenario);

GenerertBrev generertBrev = genererVedtaksbrevBrev(behandling.getId());

var brevtekst = generertBrev.dokument().html();

VedtaksbrevStandardTekstVerifiserer.verifiserStandardVedtaksbrevTekster(brevtekst, fnr, ungTestscenario);
VedtaksbrevVerifikasjon.verifiserStandardOverskrifter(brevtekst);

}

Expand All @@ -136,6 +136,16 @@ private UngTestRepositories lagUngTestRepositories() {
void standardEndringRapportertInntekt() {
LocalDate fom = LocalDate.of(2024, 12, 1);
var ungTestGrunnlag = BrevScenarioer.endringMedInntektPå10k_19år(fom);
var forventet = VedtaksbrevVerifikasjon.medHeaderOgFooter(fnr,
"Vi har endret ungdomsytelsen din " +
"Du får 7 393 kroner i ungdomsytelse for perioden fra 1. desember 2024 til 31. desember 2024. " +
"Det er fordi du har hatt en inntekt på 10 000 kroner i denne perioden. " +
"Pengene får du ubetalt før den 10. denne måneden. " +
"Når du har en inntekt, får du mindre penger i ungdomsytelse. " +
"Vi regner ut hva 66 prosent av inntekten din er hver måned, og så trekker vi dette beløpet fra pengene du får i ungdomsytelsen for den måneden. " +
"Likevel får du til sammen mer penger når du både har en inntekt og får ungdomsytelse, enn hvis du bare hadde fått penger gjennom ungdomsytelsen. " +
"Se eksempel på hvordan vi regner ut ungdomsytelsen basert på inntekt i Ungdomsportalen. " +
"Vedtaket er gjort etter arbeidsmarkedsloven § xx og forskrift om xxx § xx. ");

var behandling = lagScenario(ungTestGrunnlag);

Expand All @@ -144,22 +154,12 @@ void standardEndringRapportertInntekt() {

var brevtekst = generertBrev.dokument().html();

assertThatHtml(brevtekst).containsHtmlSubSequenceOnce(
"<h1>Vi har endret ungdomsytelsen din</h1>"
).containsTextAndSentenceSequenceOnce(
"Vi har endret ungdomsytelsen din ",
"Du får 7 393 kroner i ungdomsytelse for perioden fra 1. desember 2024 til 31. desember 2024.",
"Det er fordi du har hatt en inntekt på 10 000 kroner i denne perioden.",
"Pengene får du ubetalt før den 10. denne måneden.",
"Når du har en inntekt, får du mindre penger i ungdomsytelse.",
"Vi regner ut hva 66 prosent av inntekten din er hver måned, og så trekker vi dette beløpet fra pengene du får i ungdomsytelsen for den måneden.",
"Likevel får du til sammen mer penger når du både har en inntekt og får ungdomsytelse, enn hvis du bare hadde fått penger gjennom ungdomsytelsen.",
"Se eksempel på hvordan vi regner ut ungdomsytelsen basert på inntekt i Ungdomsportalen.",
"Vedtaket er gjort etter arbeidsmarkedsloven § xx og forskrift om xxx § xx.",
"Du har rett til å klage "
).containsHtmlSubSequenceOnce(
"Se <a title=\"utregningseksempler\" href=\"https://nav.no/ungdomsportal/beregning\">eksempel</a> på hvordan vi regner ut ungdomsytelsen basert på inntekt i Ungdomsportalen."
);
assertThatHtml(brevtekst)
.asPlainTextIsEqualTo(forventet)
.containsHtmlSubSequenceOnce(
"<h1>Vi har endret ungdomsytelsen din</h1>",
"Se <a title=\"utregningseksempler\" href=\"https://nav.no/ungdomsportal/beregning\">eksempel</a> på hvordan vi regner ut ungdomsytelsen basert på inntekt i Ungdomsportalen."
);
}

@Test
Expand Down
Loading
Loading