From b63460f9ea9c1742e64a6bb36a2231608abe86cc Mon Sep 17 00:00:00 2001
From: Lionel <lionel@lumographe.fr>
Date: Tue, 29 Oct 2019 10:50:31 +0100
Subject: [PATCH] fix(precarite): fix cdd for unhandeld ccn (#1587)

---
 .../steps/InfosGenerales.js                   |   5 +-
 .../steps/__tests__/InfosGenerales.test.js    |   8 +
 .../__snapshots__/InfosGenerales.test.js.snap | 155 ++++++++++++++++++
 3 files changed, 167 insertions(+), 1 deletion(-)

diff --git a/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/InfosGenerales.js b/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/InfosGenerales.js
index 30f0010dd1..66ee53d126 100644
--- a/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/InfosGenerales.js
+++ b/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/InfosGenerales.js
@@ -66,7 +66,10 @@ function StepInfosGenerales({ form }) {
         {({ input }) => {
           switch (input.value) {
             case CONTRACT_TYPE.CDD:
-              if (values.ccn && hasConventionalProvision(values.ccn.num)) {
+              if (
+                values.ccn &&
+                hasConventionalProvision(data, values.ccn.num)
+              ) {
                 return (
                   <>
                     {pastQuestions.map(([key, answers]) => (
diff --git a/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/InfosGenerales.test.js b/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/InfosGenerales.test.js
index 374b0ec6b8..6b3886b263 100644
--- a/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/InfosGenerales.test.js
+++ b/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/InfosGenerales.test.js
@@ -29,6 +29,14 @@ describe("<StepInfosGenerales />", () => {
     expect(container).toMatchSnapshot();
   });
 
+  it("should render with CDD and not handled ccn", () => {
+    const { container } = renderForm({
+      ccn: { num: "0016" },
+      contractType: CONTRACT_TYPE.CDD
+    });
+    expect(container).toMatchSnapshot();
+  });
+
   it("should render with CTT", () => {
     const { container } = renderForm({ contractType: CONTRACT_TYPE.CTT });
     expect(container).toMatchSnapshot();
diff --git a/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/__snapshots__/InfosGenerales.test.js.snap b/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/__snapshots__/InfosGenerales.test.js.snap
index 4d5237a989..04253c9987 100644
--- a/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/__snapshots__/InfosGenerales.test.js.snap
+++ b/packages/code-du-travail-frontend/src/outils/IndemnitePrecarite/steps/__tests__/__snapshots__/InfosGenerales.test.js.snap
@@ -233,6 +233,161 @@ exports[`<StepInfosGenerales /> should render with CDD 1`] = `
 </div>
 `;
 
+exports[`<StepInfosGenerales /> should render with CDD and not handled ccn 1`] = `
+.c2 {
+  display: -webkit-box;
+  display: -webkit-flex;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-align-items: center;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  margin-right: 2em;
+  padding: 0;
+  font-size: 1.15rem;
+}
+
+.c1 {
+  display: -webkit-box;
+  display: -webkit-flex;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-flex-direction: column;
+  -ms-flex-direction: column;
+  flex-direction: column;
+  -webkit-align-items: flex-start;
+  -webkit-box-align: flex-start;
+  -ms-flex-align: flex-start;
+  align-items: flex-start;
+  -webkit-box-pack: start;
+  -webkit-justify-content: flex-start;
+  -ms-flex-pack: start;
+  justify-content: flex-start;
+  margin-bottom: 1.25rem;
+}
+
+.c0 {
+  display: block;
+  margin-top: 1.25rem;
+  margin-bottom: 0.625rem;
+  font-size: 1.25rem;
+}
+
+.c4 {
+  -webkit-flex: 1 1 70%;
+  -ms-flex: 1 1 70%;
+  flex: 1 1 70%;
+  min-width: 400px;
+  max-width: 100%;
+  margin-top: 0.625rem;
+  margin-right: 1.25rem;
+}
+
+.c3 {
+  margin: 1.25rem 0;
+}
+
+<div>
+  <p
+    class="c0"
+  >
+    Quel est votre type de contrat ?
+  </p>
+  <div
+    class="c1"
+  >
+    <label
+      class="c2"
+    >
+      <input
+        checked=""
+        name="contractType"
+        type="radio"
+        value="CDD"
+      />
+      <span>
+        Contrat à durée déterminée (CDD)
+      </span>
+    </label>
+    <label
+      class="c2"
+    >
+      <input
+        name="contractType"
+        type="radio"
+        value="CTT"
+      />
+      <span>
+        Contrat de travail temporaire (Contrat d’intérim)
+      </span>
+    </label>
+  </div>
+  <div
+    class="c3"
+  >
+    <label
+      class="c2"
+      for="input-criteria.cddType"
+    >
+      Quelle est le type de votre cdd ?
+    </label>
+    <select
+      class="c4"
+      id="input-criteria.cddType"
+      name="criteria.cddType"
+    >
+      <option
+        disabled=""
+        value=""
+      >
+        ...
+      </option>
+      <option
+        value="CDD saisonnier"
+      >
+        CDD saisonnier
+      </option>
+      <option
+        value="CDD d'usage"
+      >
+        CDD d'usage
+      </option>
+      <option
+        value="CDD conclu avec un jeune (mineur ou majeur) pendant ses vacances scolaires ou universitaires"
+      >
+        CDD conclu avec un jeune (mineur ou majeur) pendant ses vacances scolaires ou universitaires
+      </option>
+      <option
+        value="CCD dans le cadre d’un congé de mobilité"
+      >
+        CCD dans le cadre d’un congé de mobilité
+      </option>
+      <option
+        value="Contrat unique d’insertion (CUI) ou Parcours emploi compétences (PEC)"
+      >
+        Contrat unique d’insertion (CUI) ou Parcours emploi compétences (PEC)
+      </option>
+      <option
+        value="Contrat de professionnalisation ou Contrat d’apprentissage"
+      >
+        Contrat de professionnalisation ou Contrat d’apprentissage
+      </option>
+      <option
+        value="Contrat pour lequel l’employeur s’est engagé à assurer un complément de formation professionnelle au salarié"
+      >
+        Contrat pour lequel l’employeur s’est engagé à assurer un complément de formation professionnelle au salarié
+      </option>
+      <option
+        value="Autres"
+      >
+        Autres
+      </option>
+    </select>
+  </div>
+</div>
+`;
+
 exports[`<StepInfosGenerales /> should render with CTT 1`] = `
 .c2 {
   display: -webkit-box;