From af121895c8f22749558c1d10f0721da4288c16c9 Mon Sep 17 00:00:00 2001 From: Johan Girod Date: Tue, 29 Nov 2022 17:41:36 +0100 Subject: [PATCH] Ajoute des tests de non regression pour les questions des simulateurs indep, PL et artiste auteur --- .../simulations-artiste-auteur.test.ts | 19 ++++++++- .../simulations-indépendant.test.ts | 35 ++++++++++++++++- .../simulations-professions-libérales.test.ts | 39 ++++++++++++++++++- 3 files changed, 87 insertions(+), 6 deletions(-) diff --git a/site/test/regressions/simulations-artiste-auteur.test.ts b/site/test/regressions/simulations-artiste-auteur.test.ts index 562eab185..2c9607c24 100644 --- a/site/test/regressions/simulations-artiste-auteur.test.ts +++ b/site/test/regressions/simulations-artiste-auteur.test.ts @@ -1,9 +1,9 @@ -import { it } from 'vitest' +import { expect, it } from 'vitest' import { configArtisteAuteur } from '@/pages/Simulateurs/configs/artisteAuteur' import artisteAuteurSituations from './simulations-artiste-auteur.yaml' -import { runSimulations } from './utils' +import { engine, getMissingVariables, runSimulations } from './utils' it('calculate simulations-artiste-auteur', () => { runSimulations( @@ -14,4 +14,19 @@ it('calculate simulations-artiste-auteur', () => { ], configArtisteAuteur.situation ) + + expect( + getMissingVariables( + engine + .setSituation(configArtisteAuteur.situation) + .evaluate('artiste-auteur . cotisations') + ) + ).toMatchInlineSnapshot(` + [ + "artiste-auteur . revenus . BNC . recettes", + "artiste-auteur . revenus . traitements et salaires", + "salarié . contrat", + "salarié . régimes spécifiques . DFS", + ] + `) }) diff --git a/site/test/regressions/simulations-indépendant.test.ts b/site/test/regressions/simulations-indépendant.test.ts index 2e25261a3..6b2ceca3e 100644 --- a/site/test/regressions/simulations-indépendant.test.ts +++ b/site/test/regressions/simulations-indépendant.test.ts @@ -1,10 +1,10 @@ import { DottedName } from 'modele-social' -import { it } from 'vitest' +import { expect, it } from 'vitest' import { configIndépendant } from '@/pages/Simulateurs/configs/indépendant' import independentSituations from './simulations-indépendant.yaml' -import { runSimulations } from './utils' +import { engine, getMissingVariables, runSimulations } from './utils' it('calculate simulations-indépendant', () => { const objectifs = [ @@ -19,4 +19,35 @@ it('calculate simulations-indépendant', () => { 'dirigeant . indépendant . cotisations et contributions . début activité', ] as DottedName[] runSimulations(independentSituations, objectifs, configIndépendant.situation) + + expect( + getMissingVariables( + engine + .setSituation(configIndépendant.situation) + .evaluate('dirigeant . rémunération . net') + ) + ).toMatchInlineSnapshot(` + [ + "dirigeant . indépendant . IJSS", + "dirigeant . indépendant . conjoint collaborateur", + "dirigeant . indépendant . cotisations et contributions . exonérations . pension invalidité", + "dirigeant . indépendant . cotisations facultatives", + "dirigeant . indépendant . revenus étrangers", + "dirigeant . rémunération . net", + "entreprise . activité . débit de tabac", + "entreprise . activité . nature", + "entreprise . catégorie juridique", + "entreprise . charges", + "entreprise . chiffre d'affaires", + "entreprise . date de création", + "entreprise . imposition . régime", + "entreprise . imposition . régime . micro-entreprise", + "impôt . foyer fiscal . enfants à charge", + "impôt . foyer fiscal . revenu imposable . autres revenus imposables", + "impôt . foyer fiscal . situation de famille", + "impôt . méthode de calcul", + "situation personnelle . RSA", + "situation personnelle . domiciliation fiscale à l'étranger", + ] + `) }) diff --git a/site/test/regressions/simulations-professions-libérales.test.ts b/site/test/regressions/simulations-professions-libérales.test.ts index da3113fed..6ce765968 100644 --- a/site/test/regressions/simulations-professions-libérales.test.ts +++ b/site/test/regressions/simulations-professions-libérales.test.ts @@ -1,9 +1,9 @@ -import { it } from 'vitest' +import { expect, it } from 'vitest' import { configProfessionLibérale } from '@/pages/Simulateurs/configs/professionLibérale' import professionsLibéralesSituations from './simulations-professions-libérales.yaml' -import { runSimulations } from './utils' +import { engine, getMissingVariables, runSimulations } from './utils' it('calculate simulations-professions-libérales', () => { runSimulations( @@ -17,4 +17,39 @@ it('calculate simulations-professions-libérales', () => { 'entreprise . activité . nature . libérale . réglementée': 'oui', } ) + + expect( + getMissingVariables( + engine + .setSituation({ + ...configProfessionLibérale.situation, + 'entreprise . activité . nature . libérale . réglementée': 'oui', + }) + .evaluate('dirigeant . rémunération . net') + ) + ).toMatchInlineSnapshot(` + [ + "dirigeant . indépendant . IJSS", + "dirigeant . indépendant . PL . CIPAV . invalidité et décès . classe de cotisation", + "dirigeant . indépendant . PL . CIPAV . retraite complémentaire . option surcotisation", + "dirigeant . indépendant . PL . CNAVPL . exonération incapacité", + "dirigeant . indépendant . PL . métier", + "dirigeant . indépendant . conjoint collaborateur", + "dirigeant . indépendant . cotisations et contributions . exonérations . pension invalidité", + "dirigeant . indépendant . cotisations facultatives", + "dirigeant . indépendant . revenus étrangers", + "dirigeant . rémunération . net", + "entreprise . charges", + "entreprise . chiffre d'affaires", + "entreprise . date de création", + "entreprise . imposition . régime", + "entreprise . imposition . régime . micro-entreprise", + "impôt . foyer fiscal . enfants à charge", + "impôt . foyer fiscal . revenu imposable . autres revenus imposables", + "impôt . foyer fiscal . situation de famille", + "impôt . méthode de calcul", + "situation personnelle . RSA", + "situation personnelle . domiciliation fiscale à l'étranger", + ] + `) })