Skip to content

Commit

Permalink
feat: remove pages and their accessories (#1177)
Browse files Browse the repository at this point in the history
  • Loading branch information
pgurusinga authored Sep 11, 2024
1 parent 10177c2 commit a65499d
Show file tree
Hide file tree
Showing 7 changed files with 11 additions and 103 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -123,64 +123,49 @@ describe("navStates", () => {
});

describe("personDone", () => {
it("should return false if it is missing person data", () => {
it("returns false when no personal data is provided", () => {
const actual = personDone({
context: {},
});

expect(actual).toBe(false);
});

it("should return false if it is missing vorname in the person data", () => {
it("returns false when required personal data is provided and 'vorname' is missing in the personal data", () => {
const actual = personDone({
context: {
...PERSONEN_DATA,
vorname: undefined,
unter18JahreAlt: CheckboxValue.off,
isProzessbevollmaechtigte: "no",
},
});

expect(actual).toBe(false);
});

it("should return false if it has person data, but is missing vertretung data when unter18JahreAlt is on", () => {
it("returns false when required personal data is provided, the person is under 18 years, but no representation data is provided", () => {
const actual = personDone({
context: {
...PERSONEN_DATA,
unter18JahreAlt: CheckboxValue.on,
isProzessbevollmaechtigte: "no",
},
});

expect(actual).toBe(false);
});

it("should return false if it has person data, but is missing prozessbevollmaechtigte data when isProzessbevollmaechtigte is yes", () => {
it("returns true when required personal data is provided, the person is above 18 years, and no representation data is provided", () => {
const actual = personDone({
context: {
...PERSONEN_DATA,
unter18JahreAlt: CheckboxValue.off,
isProzessbevollmaechtigte: "yes",
},
});

expect(actual).toBe(false);
});

it("should return true if has person data, but off unter18JahreAlt and no isProzessbevollmaechtigte", () => {
const actual = personDone({
context: {
...PERSONEN_DATA,
unter18JahreAlt: CheckboxValue.off,
isProzessbevollmaechtigte: "no",
},
});

expect(actual).toBe(true);
});

it("should return true if has person data, on unter18JahreAlt with vertretung data and no isProzessbevollmaechtigte", () => {
it("returns true when required personal data is provided, the person is under 18 years, and valid representation data is provided", () => {
const actual = personDone({
context: {
...PERSONEN_DATA,
Expand All @@ -191,21 +176,6 @@ describe("navStates", () => {
ortVertretung: "ortVertretung",
plzVertretung: "plzVertretung",
beschreibenVertretung: "beschreibenVertretung",
isProzessbevollmaechtigte: "no",
},
});

expect(actual).toBe(true);
});

it("should return true if has person data, yes isProzessbevollmaechtigte with Prozessbevollmaechtigte data and off unter18JahreAlt", () => {
const actual = personDone({
context: {
...PERSONEN_DATA,
unter18JahreAlt: CheckboxValue.off,
vornameVollmaechtigte: "vornameVollmaechtigte",
vollmaechtigteNachname: "vollmaechtigteNachname",
isProzessbevollmaechtigte: "yes",
},
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,10 @@ const cases = [
ort: "test",
plz: "13055",
unter18JahreAlt: CheckboxValue.off,
isProzessbevollmaechtigte: "no",
isWeiterePersonen: "no",
},
[
"persoenliche-daten/person/daten",
"persoenliche-daten/person/antragsteller-angeben",
"persoenliche-daten/weitere-personen/frage",
"zusammenfassung/start",
],
Expand All @@ -44,13 +42,11 @@ const cases = [
unter18JahreAlt: CheckboxValue.on,
vornameVertretung: "test",
nachnameVertretung: "test",
isProzessbevollmaechtigte: "no",
isWeiterePersonen: "no",
},
[
"persoenliche-daten/person/daten",
"persoenliche-daten/person/vertretung-minderjaehrige",
"persoenliche-daten/person/antragsteller-angeben",
"persoenliche-daten/weitere-personen/frage",
"zusammenfassung/start",
],
Expand All @@ -67,16 +63,11 @@ const cases = [
unter18JahreAlt: CheckboxValue.on,
vornameVertretung: "test",
nachnameVertretung: "test",
isProzessbevollmaechtigte: "yes",
vornameVollmaechtigte: "test",
vollmaechtigteNachname: "test",
isWeiterePersonen: "yes",
},
[
"persoenliche-daten/person/daten",
"persoenliche-daten/person/vertretung-minderjaehrige",
"persoenliche-daten/person/antragsteller-angeben",
"persoenliche-daten/person/antragsteller-daten",
"persoenliche-daten/weitere-personen/frage",
"persoenliche-daten/weitere-personen/uebersicht",
"zusammenfassung/start",
Expand All @@ -92,15 +83,10 @@ const cases = [
ort: "test",
plz: "13055",
unter18JahreAlt: CheckboxValue.off,
isProzessbevollmaechtigte: "yes",
vornameVollmaechtigte: "test",
vollmaechtigteNachname: "test",
isWeiterePersonen: "yes",
},
[
"persoenliche-daten/person/daten",
"persoenliche-daten/person/antragsteller-angeben",
"persoenliche-daten/person/antragsteller-daten",
"persoenliche-daten/weitere-personen/frage",
"persoenliche-daten/weitere-personen/uebersicht",
"zusammenfassung/start",
Expand All @@ -116,7 +102,6 @@ const cases = [
ort: "test",
plz: "13055",
unter18JahreAlt: CheckboxValue.off,
isProzessbevollmaechtigte: "no",
isWeiterePersonen: "yes",
weiterePersonen: [
{
Expand Down
3 changes: 0 additions & 3 deletions app/flows/fluggastrechteFormular/persoenlicheDaten/context.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,6 @@ export const fluggastrechtePersoenlichDaten = {
telefonnummer: optionalOrSchema(phoneNumberSchema),
unter18JahreAlt: checkedOptional,
...fluggastrechtePersoenlichVertretungDaten,
isProzessbevollmaechtigte: YesNoAnswer,
vornameVollmaechtigte: stringRequiredSchema,
vollmaechtigteNachname: stringRequiredSchema,
isWeiterePersonen: YesNoAnswer,
weiterePersonen: z.array(
z
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,6 @@ import type { FluggastrechtePersoenlichDaten } from "./context";
export type FluggastrechtePersoenlichDatenGuard =
GenericGuard<FluggastrechtePersoenlichDaten>;

const hasPersonVollmaechtigteData: FluggastrechtePersoenlichDatenGuard = ({
context,
}) => {
const { isProzessbevollmaechtigte } = context;
if (isProzessbevollmaechtigte === "no") {
return true;
}

return objectKeysNonEmpty(context, [
"vornameVollmaechtigte",
"vollmaechtigteNachname",
]);
};

const hasPersonVertretungData: FluggastrechtePersoenlichDatenGuard = ({
context,
}) => {
Expand Down Expand Up @@ -51,9 +37,8 @@ export const personDone: FluggastrechtePersoenlichDatenGuard = ({
]);

const hasPersonVertretung = hasPersonVertretungData({ context });
const hasVollmaechtigte = hasPersonVollmaechtigteData({ context });

return hasPersonData && hasPersonVertretung && hasVollmaechtigte;
return hasPersonData && hasPersonVertretung;
};

export const weiterePersonenDone: FluggastrechtePersoenlichDatenGuard = ({
Expand Down
34 changes: 5 additions & 29 deletions app/flows/fluggastrechteFormular/persoenlicheDaten/flow.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,39 +18,15 @@
"guard": "isUnter18JahreAlt",
"target": "vertretung-minderjaehrige"
},
"antragsteller-angeben"
"#weitere-personen.frage"
],
"BACK": "#flugdaten.zusaetzliche-angaben"
}
},
"vertretung-minderjaehrige": {
"on": {
"SUBMIT": "antragsteller-angeben",
"BACK": "daten"
}
},
"antragsteller-angeben": {
"on": {
"SUBMIT": [
{
"guard": "isProzessbevollmaechtigteYes",
"target": "antragsteller-daten"
},
"#weitere-personen.frage"
],
"BACK": [
{
"guard": "isUnter18JahreAlt",
"target": "vertretung-minderjaehrige"
},
"daten"
]
}
},
"antragsteller-daten": {
"on": {
"SUBMIT": "#weitere-personen.frage",
"BACK": "antragsteller-angeben"
"BACK": "daten"
}
}
}
Expand All @@ -70,10 +46,10 @@
],
"BACK": [
{
"guard": "isProzessbevollmaechtigteYes",
"target": "#person.antragsteller-daten"
"guard": "isUnter18JahreAlt",
"target": "#person.vertretung-minderjaehrige"
},
"#person.antragsteller-angeben"
"#person.daten"
]
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,5 @@ export const persoenlichDatenGuards = {
if (arrayIndex === undefined) return false;
return weiterePersonen?.at(arrayIndex)?.unter18JahreAlt === "on";
},
...yesNoGuards("isProzessbevollmaechtigte"),
...yesNoGuards("isWeiterePersonen"),
} satisfies Guards<FluggastrechtePersoenlichDaten>;
Original file line number Diff line number Diff line change
Expand Up @@ -98,10 +98,6 @@ export async function startFluggastrechteFormular(
await formular.fillInput("telefonnummer", "015111225588");
await formular.clickNext();

// /fluggastrechte/formular/persoenliche-daten/person/antragsteller-angeben
await expectPageToBeAccessible({ page });
await formular.fillRadioPage("isProzessbevollmaechtigte", "no");

// /fluggastrechte/formular/persoenliche-daten/weitere-personen/frage
await expectPageToBeAccessible({ page });
await formular.fillRadioPage("isWeiterePersonen", "no");
Expand Down

0 comments on commit a65499d

Please sign in to comment.