diff --git a/api/source/test-e2e/index.test.ts b/api/source/test-e2e/index.test.ts index 3d12bd3c1..7e6f5f330 100644 --- a/api/source/test-e2e/index.test.ts +++ b/api/source/test-e2e/index.test.ts @@ -96,11 +96,18 @@ describe('e2e test mon-entreprise api', () => { 'dirigeant . indépendant . PL . métier': "'avocat'", 'entreprise . activité . nature': "'libérale'", 'entreprise . date de création': '01/01/2013', - "entreprise . chiffre d'affaires": 6264, + "entreprise . chiffre d'affaires": '6264 €/an', 'entreprise . catégorie juridique': "'EI'", 'entreprise . catégorie juridique . EI . auto-entrepreneur': 'non', }, - expressions: ['dirigeant . rémunération . net . après impôt'], + expressions: [ + // 'dirigeant . régime social', + // 'dirigeant . indépendant', + // 'dirigeant . rémunération . totale', + // 'dirigeant . rémunération . cotisations', + // 'dirigeant . rémunération . net', + 'dirigeant . rémunération . net . après impôt', + ], }) .then((res) => { expect(res.status).toMatchInlineSnapshot('200') diff --git a/modele-social/règles/dirigeant/dirigeant.publicodes b/modele-social/règles/dirigeant/dirigeant.publicodes index a20c444d8..2befa05a9 100644 --- a/modele-social/règles/dirigeant/dirigeant.publicodes +++ b/modele-social/règles/dirigeant/dirigeant.publicodes @@ -10,7 +10,10 @@ dirigeant . gérant minoritaire: dirigeant . régime social: experimental: oui variations: - - si: entreprise . catégorie juridique . EI . auto-entrepreneur + - si: + toutes ces conditions: + - est applicable: entreprise . catégorie juridique . EI . auto-entrepreneur + - entreprise . catégorie juridique . EI . auto-entrepreneur alors: "'auto-entrepreneur'" - si: une de ces conditions: diff --git a/modele-social/règles/dirigeant/professions-libérales/CNBF.publicodes b/modele-social/règles/dirigeant/professions-libérales/CNBF.publicodes index 30b618c2e..3c64c60ce 100644 --- a/modele-social/règles/dirigeant/professions-libérales/CNBF.publicodes +++ b/modele-social/règles/dirigeant/professions-libérales/CNBF.publicodes @@ -49,7 +49,7 @@ dirigeant . indépendant . PL . CNBF . retraite de base: alors: 608 €/an - si: date >= 01/2021 alors: 581 €/an - plafond: 2 ans + plafond: 2 an - montant: variations: - si: date >= 01/2024 @@ -60,7 +60,7 @@ dirigeant . indépendant . PL . CNBF . retraite de base: alors: 954 €/an - si: date >= 01/2021 alors: 912 €/an - plafond: 3 ans + plafond: 3 an - montant: variations: - si: date >= 01/2024 @@ -71,7 +71,7 @@ dirigeant . indépendant . PL . CNBF . retraite de base: alors: 1299 €/an - si: date >= 01/2021 alors: 1242 €/an - plafond: 5 ans + plafond: 5 an - montant: variations: - si: date >= 01/2024 diff --git a/modele-social/règles/dirigeant/professions-libérales/profession-libérale.publicodes b/modele-social/règles/dirigeant/professions-libérales/profession-libérale.publicodes index 6d7d17ab2..809df858a 100644 --- a/modele-social/règles/dirigeant/professions-libérales/profession-libérale.publicodes +++ b/modele-social/règles/dirigeant/professions-libérales/profession-libérale.publicodes @@ -18,6 +18,7 @@ dirigeant . indépendant . PL . métier: dirigeant . indépendant . PL . métier . rattaché CIPAV: titre: Autre métier rattaché à la CIPAV + par défaut: non description: | Vous exercez un métier réglementé rattaché à la CIPAV. La liste de ces métiers est : @@ -125,7 +126,7 @@ dirigeant . indépendant . PL . métier . juridique: description: | Les officiers ministériels, les officiers publics et les compagnies judiciaires sont affiliées à la Cavom pour leur retraite et de prévoyance. - Liste des métiers concernés : + Liste des métiers concernés : - Huissiers de justice ; - Commissaires-priseurs (judiciaires et/ou de ventes volontaires) ; diff --git a/modele-social/règles/entreprise/catégorie-juridique.publicodes b/modele-social/règles/entreprise/catégorie-juridique.publicodes index ab3f24dfd..3375a623a 100644 --- a/modele-social/règles/entreprise/catégorie-juridique.publicodes +++ b/modele-social/règles/entreprise/catégorie-juridique.publicodes @@ -52,10 +52,15 @@ entreprise . catégorie juridique . EI: avec: auto-entrepreneur: - question: Êtes-vous auto-entrepreneur ? - acronyme: AE - par défaut: par défaut - non applicable si: salarié + par défaut: non + non applicable si: + par défaut: non + une de ces conditions: + - salarié = oui + - entreprise . imposition . IR . type de bénéfices = 'BA' + - toutes ces conditions: + - activité . nature . libérale . réglementée + - dirigeant . indépendant . PL . métier . rattaché CIPAV = non références: S'informer sur le statut: https://www.autoentrepreneur.urssaf.fr/portail/accueil/sinformer-sur-le-statut/lessentiel-du-statut.html Les étapes de la création d'une auto-entreprise: https://www.autoentrepreneur.urssaf.fr/portail/accueil/creer-mon-auto-entreprise.html @@ -66,15 +71,6 @@ entreprise . catégorie juridique . EI: Où et comment s'inscrire pour devenir micro-entrepreneur (ex auto-entrepreneur)?: https://bpifrance-creation.fr/encyclopedie/micro-entreprise-regime-auto-entrepreneur/lessentiel-ce-regime/ou-comment-sinscrire La comptabilité du micro-entrepreneur (auto-entrepreneur): https://bpifrance-creation.fr/encyclopedie/micro-entreprise-regime-auto-entrepreneur/fiscal-social-comptable/comptabilite-du - auto-entrepreneur . par défaut: - non applicable si: - une de ces conditions: - - entreprise . imposition . IR . type de bénéfices = 'BA' - - toutes ces conditions: - - activité . nature . libérale . réglementée - - dirigeant . indépendant . PL . métier . rattaché CIPAV = non - experimental: oui - EI: titre: entreprise individuelle acronyme: EI diff --git a/modele-social/règles/salarié/salarié.publicodes b/modele-social/règles/salarié/salarié.publicodes index 3508651b1..a04549392 100644 --- a/modele-social/règles/salarié/salarié.publicodes +++ b/modele-social/règles/salarié/salarié.publicodes @@ -1,6 +1,6 @@ salarié: + par défaut: non icônes: 🤝 - valeur: oui salarié . ancienneté: durée: @@ -41,9 +41,9 @@ salarié . convention collective: valeur: convention collective = 'autre' description: >- - Attention : votre convention collective n'est pas prise en charge, + Attention : votre convention collective n'est pas prise en charge, la simulation se basera sur le droit commun. - + salarié . régimes spécifiques: salarié . régimes spécifiques . alsace moselle: titre: Régime Alsace-Moselle diff --git a/package.json b/package.json index 36d0d114f..269e59444 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-vitest": "^0.3.22", "prettier": "^3.0.3", - "publicodes": "^1.5.1", + "publicodes": "^1.5.4", "rimraf": "^5.0.1" }, "resolutions": { diff --git a/site/package.json b/site/package.json index e7c8a0e38..58feca334 100644 --- a/site/package.json +++ b/site/package.json @@ -56,7 +56,7 @@ "@internationalized/number": "^3.2.1", "@juggle/resize-observer": "^3.4.0", "@leeoniya/ufuzzy": "^1.0.10", - "@publicodes/react-ui": "^1.5.2", + "@publicodes/react-ui": "^1.5.4", "@react-aria/accordion": "^3.0.0-alpha.17", "@react-pdf/renderer": "^3.1.12", "@sentry/integrations": "^7.70.0", diff --git a/site/source/pages/assistants/declaration-charges-sociales-independant/index.tsx b/site/source/pages/assistants/declaration-charges-sociales-independant/index.tsx index e2a01ae3a..84a2f0b36 100644 --- a/site/source/pages/assistants/declaration-charges-sociales-independant/index.tsx +++ b/site/source/pages/assistants/declaration-charges-sociales-independant/index.tsx @@ -40,7 +40,6 @@ const config: SimulationConfig = { 'dirigeant . régime social': "'indépendant'", date: '01/01/2023', 'dirigeant . indépendant . PL . CIPAV': 'non', - 'entreprise . catégorie juridique': "''", impôt: 'non', }, 'unité par défaut': '€', diff --git a/site/source/pages/simulateurs/artiste-auteur/simulationConfig.ts b/site/source/pages/simulateurs/artiste-auteur/simulationConfig.ts index b5918f86c..0812cb377 100644 --- a/site/source/pages/simulateurs/artiste-auteur/simulationConfig.ts +++ b/site/source/pages/simulateurs/artiste-auteur/simulationConfig.ts @@ -7,6 +7,7 @@ export const configArtisteAuteur: SimulationConfig = { ], situation: { 'artiste-auteur': 'oui', + salarié: 'oui', dirigeant: { 'applicable si': 'non', }, diff --git a/site/source/pages/simulateurs/comparaison-statuts/simulationConfig.ts b/site/source/pages/simulateurs/comparaison-statuts/simulationConfig.ts index 7908f1e19..546a494cb 100644 --- a/site/source/pages/simulateurs/comparaison-statuts/simulationConfig.ts +++ b/site/source/pages/simulateurs/comparaison-statuts/simulationConfig.ts @@ -56,7 +56,6 @@ export const configComparateurStatuts: ComparateurConfig = { 'unité par défaut': '€/mois', situation: { 'entreprise . activités . revenus mixtes': 'non', - 'entreprise . catégorie juridique': "''", salarié: 'non', 'salarié . cotisations . ATMP . taux fonctions support': 'oui', "entreprise . chiffre d'affaires": '4000 €/mois', diff --git a/site/source/pages/simulateurs/reduction-generale/simulationConfig.ts b/site/source/pages/simulateurs/reduction-generale/simulationConfig.ts index 7e59379a2..ff5284f1d 100644 --- a/site/source/pages/simulateurs/reduction-generale/simulationConfig.ts +++ b/site/source/pages/simulateurs/reduction-generale/simulationConfig.ts @@ -40,7 +40,6 @@ export const configRéductionGénérale: SimulationConfig = { 'unité par défaut': '€/an', situation: { dirigeant: 'non', - 'entreprise . catégorie juridique': "''", 'entreprise . imposition': 'non', }, } diff --git a/site/test/modele-social/artiste-auteur.test.ts b/site/test/modele-social/artiste-auteur.test.ts new file mode 100644 index 000000000..10e4798a4 --- /dev/null +++ b/site/test/modele-social/artiste-auteur.test.ts @@ -0,0 +1,50 @@ +import rules, { DottedName } from 'modele-social' +import Engine from 'publicodes' +import { beforeEach, describe, expect, it } from 'vitest' + +import { Situation } from '@/domaine/Situation' + +describe('Un artiste-auteur', () => { + let engine: Engine + beforeEach(() => { + engine = new Engine(rules) + }) + + const situation: Situation = { + 'artiste-auteur': 'oui', + salarié: 'oui', + } + + describe('salarié à 1000 €/an', () => { + const situationSalarié = { + ...situation, + salarié: 'oui', + 'artiste-auteur . revenus . traitements et salaires': '1000 €/an', + } + + it('paie des cotisations', () => { + const e = engine.setSituation(situationSalarié) + + expect(e).toEvaluate('artiste-auteur . cotisations', 160) + }) + + it('ne paie pas d’IRCEC', () => { + const e = engine.setSituation(situationSalarié) + + expect(e).toEvaluate('artiste-auteur . cotisations . IRCEC', 0) + }) + }) + + describe('avec un revenu BNC de 10 000 €/an', () => { + const situationBNC = { + ...situation, + 'artiste-auteur . revenus . BNC . recettes': '10000 €/an', + } + + it('paie des cotisations', () => { + const e = engine.setSituation(situationBNC) + + expect(e).toEvaluate('artiste-auteur . cotisations', 1230) + }) + }) +}) diff --git a/site/test/modele-social/auto-entrepreneur.test.ts b/site/test/modele-social/auto-entrepreneur.test.ts new file mode 100644 index 000000000..ab16c63c0 --- /dev/null +++ b/site/test/modele-social/auto-entrepreneur.test.ts @@ -0,0 +1,42 @@ +import rules, { DottedName } from 'modele-social' +import Engine from 'publicodes' +import { beforeEach, describe, expect, it } from 'vitest' + +describe('Auto-entrepreneur', function () { + let engine: Engine + beforeEach(() => { + engine = new Engine(rules) + }) + + const situation = { + 'entreprise . catégorie juridique': "'EI'", + 'entreprise . catégorie juridique . EI . auto-entrepreneur': 'oui', + } + + it('a le régime social auto-entrepreneur', function () { + engine.setSituation(situation) + + expect(engine).toEvaluate('dirigeant . régime social', 'auto-entrepreneur') + }) + describe('dans un DROM', () => { + const situationDrom = { + ...situation, + 'établissement . commune . département . outre-mer': 'oui', + "dirigeant . auto-entrepreneur . chiffre d'affaires": '20000 €/an', + 'entreprise . activités . revenus mixtes': 'oui', + "entreprise . chiffre d'affaires . service BIC": '12000 €/an', + "entreprise . chiffre d'affaires . service BNC": '3000 €/an', + "entreprise . chiffre d'affaires . vente restauration hébergement": + '5000 €/an', + } + + it('a un revenu net de', () => { + engine.setSituation(situationDrom) + + expect(engine).toEvaluate( + 'dirigeant . auto-entrepreneur . revenu net', + 16125 + ) + }) + }) +}) diff --git a/site/test/modele-social/avocat.test.ts b/site/test/modele-social/avocat.test.ts new file mode 100644 index 000000000..641cd5e1c --- /dev/null +++ b/site/test/modele-social/avocat.test.ts @@ -0,0 +1,39 @@ +import rules, { DottedName } from 'modele-social' +import Engine from 'publicodes' +import { beforeEach, describe, expect, it } from 'vitest' + +describe('Un avocat', () => { + let engine: Engine + beforeEach(() => { + engine = new Engine(rules) + }) + + const chiffreDAffaires = 6264 + + const situation = { + 'dirigeant . indépendant . cotisations facultatives': 'oui', + 'entreprise . activité . nature . libérale . réglementée': 'oui', + 'dirigeant . indépendant . PL . métier': "'avocat'", + 'entreprise . activité . nature': "'libérale'", + 'entreprise . date de création': '01/01/2021', + "entreprise . chiffre d'affaires": `${chiffreDAffaires} €/an`, + 'entreprise . catégorie juridique': "'EI'", + 'entreprise . catégorie juridique . EI . auto-entrepreneur': 'non', + } + + it('est un indépendant', () => { + const e = engine.setSituation(situation) + expect(e).toEvaluate('entreprise . catégorie juridique', 'EI') + expect(e).toEvaluate('dirigeant . régime social', 'indépendant') + }) + + it('paie des cotisations inférieures à son chiffre d’affaires', () => { + const e = engine.setSituation(situation) + + const cotisations = e.evaluate( + 'dirigeant . rémunération . cotisations' + ).nodeValue + + expect(cotisations).toSatisfy((c: number) => c > 0 && c < chiffreDAffaires) + }) +}) diff --git a/site/test/modele-social/helpers/PublicodesTypes.ts b/site/test/modele-social/helpers/PublicodesTypes.ts new file mode 100644 index 000000000..2b2d89f57 --- /dev/null +++ b/site/test/modele-social/helpers/PublicodesTypes.ts @@ -0,0 +1,5 @@ +export type PublicodesTypes = + | number + | boolean + | string + | Record diff --git a/site/test/modele-social/helpers/logValue.ts b/site/test/modele-social/helpers/logValue.ts new file mode 100644 index 000000000..0104655e3 --- /dev/null +++ b/site/test/modele-social/helpers/logValue.ts @@ -0,0 +1,10 @@ +import { DottedName } from 'modele-social' +import Engine from 'publicodes' + +export const logValue = (e: Engine, rule: DottedName) => { + const result = e.evaluate(rule) + // eslint-disable-next-line @typescript-eslint/restrict-template-expressions + const unit = `${result.unit?.numerators}/${result.unit?.denominators}` + // eslint-disable-next-line no-console,@typescript-eslint/restrict-template-expressions + console.log(`${rule} = ${result.nodeValue} ${unit}`) +} diff --git a/site/test/modele-social/matchers/toEvaluate.ts b/site/test/modele-social/matchers/toEvaluate.ts new file mode 100644 index 000000000..05d38ed52 --- /dev/null +++ b/site/test/modele-social/matchers/toEvaluate.ts @@ -0,0 +1,47 @@ +/* eslint-disable @typescript-eslint/no-unsafe-call */ +/* eslint-disable @typescript-eslint/no-unsafe-member-access */ +import { DottedName } from 'modele-social' +import Engine, { Evaluation } from 'publicodes' +import { expect } from 'vitest' + +import { PublicodesTypes } from '../helpers/PublicodesTypes' + +const toEvaluate = function ( + engine: Engine, + rule: DottedName, + value: Evaluation +) { + const evaluated = engine.evaluate(rule).nodeValue + const pass = evaluated === value + + if (pass) { + return { + message: () => + // `this` context will have correct typings + // @ts-ignore + `expected ${this.utils.printReceived( + evaluated + // @ts-ignore + )} not to equal ${this.utils.printExpected( + // eslint-disable-next-line @typescript-eslint/restrict-template-expressions + `${value}` + )} for rule ${rule}`, + pass: true, + } + } else { + return { + message: () => + // @ts-ignore + `expected ${this.utils.printReceived( + evaluated + // @ts-ignore + // eslint-disable-next-line @typescript-eslint/restrict-template-expressions + )} to equal ${this.utils.printExpected(`${value}`)} for rule ${rule}`, + pass: false, + } + } +} + +expect.extend({ + toEvaluate, +}) diff --git a/site/test/regressions/__snapshots__/auto-entrepreneur.test.ts.snap b/site/test/regressions/__snapshots__/auto-entrepreneur.test.ts.snap index 215f22bc1..70bec8a1f 100644 --- a/site/test/regressions/__snapshots__/auto-entrepreneur.test.ts.snap +++ b/site/test/regressions/__snapshots__/auto-entrepreneur.test.ts.snap @@ -170,8 +170,10 @@ dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . ser dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . vente restauration hébergement: 34 dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . vente restauration hébergement . taux: 8 dirigeant . auto-entrepreneur . revenu net: 17440 -dirigeant . auto-entrepreneur . revenu net . après impôt: 17440 -dirigeant . rémunération . impôt: 0" +dirigeant . auto-entrepreneur . revenu net . après impôt: undefined +dirigeant . rémunération . impôt: undefined + +Notifications affichées : dirigeant . indépendant . cotisations et contributions . exonérations . DROM" `; exports[`calculate simulations-auto-entrepreneur > DROM 2`] = ` @@ -210,8 +212,10 @@ dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . ser dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . vente restauration hébergement: 9 dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . vente restauration hébergement . taux: 2 dirigeant . auto-entrepreneur . revenu net: 19332 -dirigeant . auto-entrepreneur . revenu net . après impôt: 19332 -dirigeant . rémunération . impôt: 0" +dirigeant . auto-entrepreneur . revenu net . après impôt: undefined +dirigeant . rémunération . impôt: undefined + +Notifications affichées : dirigeant . indépendant . cotisations et contributions . exonérations . DROM" `; exports[`calculate simulations-auto-entrepreneur > DROM 4`] = ` @@ -230,8 +234,10 @@ dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . ser dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . vente restauration hébergement: 26 dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . vente restauration hébergement . taux: 6 dirigeant . auto-entrepreneur . revenu net: 18077 -dirigeant . auto-entrepreneur . revenu net . après impôt: 18077 -dirigeant . rémunération . impôt: 0" +dirigeant . auto-entrepreneur . revenu net . après impôt: undefined +dirigeant . rémunération . impôt: undefined + +Notifications affichées : dirigeant . indépendant . cotisations et contributions . exonérations . DROM" `; exports[`calculate simulations-auto-entrepreneur > activité mixte 1`] = ` @@ -317,7 +323,7 @@ dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . ven dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . vente restauration hébergement . taux: 12 dirigeant . auto-entrepreneur . revenu net: undefined dirigeant . auto-entrepreneur . revenu net . après impôt: undefined -dirigeant . rémunération . impôt: 670" +dirigeant . rémunération . impôt: undefined" `; exports[`calculate simulations-auto-entrepreneur > activités 1`] = ` diff --git a/site/test/regressions/__snapshots__/comparateur-statuts.test.ts.snap b/site/test/regressions/__snapshots__/comparateur-statuts.test.ts.snap index cbd104250..e4caa90e6 100644 --- a/site/test/regressions/__snapshots__/comparateur-statuts.test.ts.snap +++ b/site/test/regressions/__snapshots__/comparateur-statuts.test.ts.snap @@ -1,29 +1,29 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html exports[`calculate comparateur-statuts > ACRE 1`] = ` -"dirigeant . rémunération . net: 44208 -dirigeant . rémunération . net . après impôt: 44105 +"dirigeant . rémunération . net: 37487 +dirigeant . rémunération . net . après impôt: 32565 entreprise . activité . nature . libérale . réglementée: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente décès: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null protection sociale . invalidité et décès . capital décès: 9274 protection sociale . invalidité et décès . capital décès . orphelin: 193 -protection sociale . invalidité et décès . pension de reversion: 392 -protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 487 -protection sociale . invalidité et décès . pension invalidité . invalidité totale: 725 +protection sociale . invalidité et décès . pension de reversion: 873 +protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 970 +protection sociale . invalidité et décès . pension invalidité . invalidité totale: 1616 protection sociale . maladie . accidents du travail et maladies professionnelles . indemmnités: null -protection sociale . maladie . arrêt maladie: 24 +protection sociale . maladie . arrêt maladie: 53 protection sociale . maladie . arrêt maladie . délai d'attente: 12 protection sociale . maladie . arrêt maladie . délai de carence: 3 protection sociale . maladie . maternité paternité adoption: 64 protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos adoption: 1932 protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos maternel: 3864 -protection sociale . retraite . base: 725 -protection sociale . retraite . complémentaire: 33 +protection sociale . retraite . base: 1616 +protection sociale . retraite . complémentaire: 145 protection sociale . retraite . trimestres: 4 -Notifications affichées : dirigeant . auto-entrepreneur . cotisations et contributions . cotisations . taux ACRE . notification calcul ACRE annuel, entreprise . TVA . franchise de TVA . notification" +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate comparateur-statuts > ACRE 2`] = ` @@ -105,27 +105,27 @@ Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate comparateur-statuts > bas revenus 1`] = ` -"dirigeant . rémunération . net: 1752 -dirigeant . rémunération . net . après impôt: 1752 +"dirigeant . rémunération . net: 577 +dirigeant . rémunération . net . après impôt: 577 entreprise . activité . nature . libérale . réglementée: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente décès: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null -protection sociale . invalidité et décès . capital décès: null -protection sociale . invalidité et décès . capital décès . orphelin: null +protection sociale . invalidité et décès . capital décès: 9274 +protection sociale . invalidité et décès . capital décès . orphelin: 193 protection sociale . invalidité et décès . pension de reversion: 306 -protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 0 -protection sociale . invalidité et décès . pension invalidité . invalidité totale: 0 +protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 487 +protection sociale . invalidité et décès . pension invalidité . invalidité totale: 686 protection sociale . maladie . accidents du travail et maladies professionnelles . indemmnités: null -protection sociale . maladie . arrêt maladie: 0 +protection sociale . maladie . arrêt maladie: 25 protection sociale . maladie . arrêt maladie . délai d'attente: 12 -protection sociale . maladie . arrêt maladie . délai de carence: null -protection sociale . maladie . maternité paternité adoption: 6 -protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos adoption: 193 -protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos maternel: 386 -protection sociale . retraite . base: 24 +protection sociale . maladie . arrêt maladie . délai de carence: 3 +protection sociale . maladie . maternité paternité adoption: 64 +protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos adoption: 1932 +protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos maternel: 3864 +protection sociale . retraite . base: 219 protection sociale . retraite . complémentaire: 2 -protection sociale . retraite . trimestres: 0 +protection sociale . retraite . trimestres: 3 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; @@ -183,26 +183,26 @@ Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate comparateur-statuts > base 1`] = ` -"dirigeant . rémunération . net: 40548 -dirigeant . rémunération . net . après impôt: 40445 +"dirigeant . rémunération . net: 32850 +dirigeant . rémunération . net . après impôt: 29319 entreprise . activité . nature . libérale . réglementée: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente décès: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null protection sociale . invalidité et décès . capital décès: 9274 protection sociale . invalidité et décès . capital décès . orphelin: 193 -protection sociale . invalidité et décès . pension de reversion: 392 -protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 487 -protection sociale . invalidité et décès . pension invalidité . invalidité totale: 725 +protection sociale . invalidité et décès . pension de reversion: 768 +protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 854 +protection sociale . invalidité et décès . pension invalidité . invalidité totale: 1423 protection sociale . maladie . accidents du travail et maladies professionnelles . indemmnités: null -protection sociale . maladie . arrêt maladie: 24 +protection sociale . maladie . arrêt maladie: 47 protection sociale . maladie . arrêt maladie . délai d'attente: 12 protection sociale . maladie . arrêt maladie . délai de carence: 3 protection sociale . maladie . maternité paternité adoption: 64 protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos adoption: 1932 protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos maternel: 3864 -protection sociale . retraite . base: 725 -protection sociale . retraite . complémentaire: 65 +protection sociale . retraite . base: 1423 +protection sociale . retraite . complémentaire: 127 protection sociale . retraite . trimestres: 4 Notifications affichées : entreprise . TVA . franchise de TVA . notification" @@ -261,26 +261,26 @@ Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate comparateur-statuts > profession libérale non reglementée 1`] = ` -"dirigeant . rémunération . net: 31020 -dirigeant . rémunération . net . après impôt: 25854 +"dirigeant . rémunération . net: 32846 +dirigeant . rémunération . net . après impôt: 29341 entreprise . activité . nature . libérale . réglementée: false protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente décès: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null protection sociale . invalidité et décès . accidents du travail et maladies professionnelles . rente incapacité: null protection sociale . invalidité et décès . capital décès: 9274 protection sociale . invalidité et décès . capital décès . orphelin: 193 -protection sociale . invalidité et décès . pension de reversion: 891 -protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 990 -protection sociale . invalidité et décès . pension invalidité . invalidité totale: 1650 +protection sociale . invalidité et décès . pension de reversion: 306 +protection sociale . invalidité et décès . pension invalidité . invalidité partielle: 852 +protection sociale . invalidité et décès . pension invalidité . invalidité totale: 1419 protection sociale . maladie . accidents du travail et maladies professionnelles . indemmnités: null -protection sociale . maladie . arrêt maladie: 54 +protection sociale . maladie . arrêt maladie: 47 protection sociale . maladie . arrêt maladie . délai d'attente: 12 protection sociale . maladie . arrêt maladie . délai de carence: 3 protection sociale . maladie . maternité paternité adoption: 64 protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos adoption: 1932 protection sociale . maladie . maternité paternité adoption . allocation forfaitaire de repos maternel: 3864 -protection sociale . retraite . base: 1650 -protection sociale . retraite . complémentaire: 58 +protection sociale . retraite . base: 0 +protection sociale . retraite . complémentaire: 0 protection sociale . retraite . trimestres: 4" `; diff --git a/site/test/regressions/__snapshots__/convention-collective.test.ts.snap b/site/test/regressions/__snapshots__/convention-collective.test.ts.snap index 2853d69e8..48020b5d6 100644 --- a/site/test/regressions/__snapshots__/convention-collective.test.ts.snap +++ b/site/test/regressions/__snapshots__/convention-collective.test.ts.snap @@ -87,5 +87,5 @@ salarié . coût total employeur: 1801 salarié . rémunération . net . payé après impôt: 1400 salarié . rémunération . net . à payer avant impôt: 1400 -Notifications affichées : salarié . rémunération . assiette de vérification du SMIC . contrôle, salarié . convention collective . avertissement convention collective" +Notifications affichées : salarié . convention collective . avertissement convention collective, salarié . rémunération . assiette de vérification du SMIC . contrôle" `; diff --git a/site/test/regressions/__snapshots__/professions-libérales.test.ts.snap b/site/test/regressions/__snapshots__/professions-libérales.test.ts.snap index 65c71d62f..61c088dff 100644 --- a/site/test/regressions/__snapshots__/professions-libérales.test.ts.snap +++ b/site/test/regressions/__snapshots__/professions-libérales.test.ts.snap @@ -1,207 +1,207 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html exports[`calculate simulations-professions-libérales > CIPAV ACRE 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 1230 +"dirigeant . indépendant . cotisations et contributions: 1182 dirigeant . rémunération . net: 5000 dirigeant . rémunération . net . après impôt: 5000 -entreprise . chiffre d'affaires: 6230 +entreprise . chiffre d'affaires: 6182 impôt . montant: 0 -protection sociale . retraite . base: 38 -protection sociale . retraite . complémentaire: 24 +protection sociale . retraite . base: 219 +protection sociale . retraite . complémentaire: 19 protection sociale . retraite . trimestres: 3 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV ACRE 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 4535 +"dirigeant . indépendant . cotisations et contributions: 4356 dirigeant . rémunération . net: 20000 dirigeant . rémunération . net . après impôt: 19376 -entreprise . chiffre d'affaires: 24535 +entreprise . chiffre d'affaires: 24356 impôt . montant: 624 -protection sociale . retraite . base: 151 -protection sociale . retraite . complémentaire: 95 +protection sociale . retraite . base: 861 +protection sociale . retraite . complémentaire: 77 protection sociale . retraite . trimestres: 4 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV ACRE 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 20592 +"dirigeant . indépendant . cotisations et contributions: 23180 dirigeant . rémunération . net: 50000 dirigeant . rémunération . net . après impôt: 41140 -entreprise . chiffre d'affaires: 70592 +entreprise . chiffre d'affaires: 73180 impôt . montant: 8860 -protection sociale . retraite . base: 340 -protection sociale . retraite . complémentaire: 274 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 199 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV années précédentes 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 21074 +"dirigeant . indépendant . cotisations et contributions: 23076 dirigeant . rémunération . net: 50000 dirigeant . rémunération . net . après impôt: 40828 -entreprise . chiffre d'affaires: 71074 +entreprise . chiffre d'affaires: 73076 impôt . montant: 9172 -protection sociale . retraite . base: 323 -protection sociale . retraite . complémentaire: 291 +protection sociale . retraite . base: 1833 +protection sociale . retraite . complémentaire: 206 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV années précédentes 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 15033 +"dirigeant . indépendant . cotisations et contributions: 18995 dirigeant . rémunération . net: 40000 dirigeant . rémunération . net . après impôt: 33630 -entreprise . chiffre d'affaires: 55033 +entreprise . chiffre d'affaires: 58995 impôt . montant: 6370 -protection sociale . retraite . base: 307 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1714 +protection sociale . retraite . complémentaire: 166 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV années précédentes 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 11587 +"dirigeant . indépendant . cotisations et contributions: 13944 dirigeant . rémunération . net: 30000 dirigeant . rémunération . net . après impôt: 26656 -entreprise . chiffre d'affaires: 41587 +entreprise . chiffre d'affaires: 43944 impôt . montant: 3344 -protection sociale . retraite . base: null -protection sociale . retraite . complémentaire: 0 -protection sociale . retraite . trimestres: 0" +protection sociale . retraite . base: 1297 +protection sociale . retraite . complémentaire: 124 +protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV conjoint collaborateur 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 31746 +"dirigeant . indépendant . cotisations et contributions: 32575 dirigeant . rémunération . net: 60000 dirigeant . rémunération . net . après impôt: 47968 -entreprise . chiffre d'affaires: 91746 +entreprise . chiffre d'affaires: 92575 impôt . montant: 12032 -protection sociale . retraite . base: 340 -protection sociale . retraite . complémentaire: 392 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 243 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV conjoint collaborateur 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 30869 +"dirigeant . indépendant . cotisations et contributions: 34199 dirigeant . rémunération . net: 60000 dirigeant . rémunération . net . après impôt: 47984 -entreprise . chiffre d'affaires: 90869 +entreprise . chiffre d'affaires: 94199 impôt . montant: 12016 -protection sociale . retraite . base: 340 -protection sociale . retraite . complémentaire: 392 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 243 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV conjoint collaborateur 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 30540 +"dirigeant . indépendant . cotisations et contributions: 31282 dirigeant . rémunération . net: 60000 dirigeant . rémunération . net . après impôt: 47987 -entreprise . chiffre d'affaires: 90540 +entreprise . chiffre d'affaires: 91282 impôt . montant: 12013 -protection sociale . retraite . base: 452 -protection sociale . retraite . complémentaire: 391 +protection sociale . retraite . base: 1734 +protection sociale . retraite . complémentaire: 155 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV conjoint collaborateur 4`] = ` -"dirigeant . indépendant . cotisations et contributions: 34847 +"dirigeant . indépendant . cotisations et contributions: 34232 dirigeant . rémunération . net: 60000 dirigeant . rémunération . net . après impôt: 47966 -entreprise . chiffre d'affaires: 94847 +entreprise . chiffre d'affaires: 94232 impôt . montant: 12034 -protection sociale . retraite . base: 340 -protection sociale . retraite . complémentaire: 392 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 243 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV conjoint collaborateur 5`] = ` -"dirigeant . indépendant . cotisations et contributions: 32792 +"dirigeant . indépendant . cotisations et contributions: 31292 dirigeant . rémunération . net: 60000 dirigeant . rémunération . net . après impôt: 47983 -entreprise . chiffre d'affaires: 92792 +entreprise . chiffre d'affaires: 91292 impôt . montant: 12017 -protection sociale . retraite . base: 457 -protection sociale . retraite . complémentaire: 392 +protection sociale . retraite . base: 1734 +protection sociale . retraite . complémentaire: 156 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV conjoint collaborateur 6`] = ` -"dirigeant . indépendant . cotisations et contributions: 1847 +"dirigeant . indépendant . cotisations et contributions: 2748 dirigeant . rémunération . net: 1000 dirigeant . rémunération . net . après impôt: 1000 -entreprise . chiffre d'affaires: 2847 +entreprise . chiffre d'affaires: 3748 impôt . montant: 0 -protection sociale . retraite . base: 77 -protection sociale . retraite . complémentaire: 5 +protection sociale . retraite . base: 219 +protection sociale . retraite . complémentaire: 2 protection sociale . retraite . trimestres: 3 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV conjoint collaborateur 7`] = ` -"dirigeant . indépendant . cotisations et contributions: 31746 +"dirigeant . indépendant . cotisations et contributions: 32575 dirigeant . rémunération . net: 60000 dirigeant . rémunération . net . après impôt: 47968 -entreprise . chiffre d'affaires: 91746 +entreprise . chiffre d'affaires: 92575 impôt . montant: 12032 -protection sociale . retraite . base: 340 -protection sociale . retraite . complémentaire: 392 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 243 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV exonération incapacité 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 6949 +"dirigeant . indépendant . cotisations et contributions: 18662 dirigeant . rémunération . net: 40000 dirigeant . rémunération . net . après impôt: 34332 -entreprise . chiffre d'affaires: 46949 +entreprise . chiffre d'affaires: 58662 impôt . montant: 5668 -protection sociale . retraite . base: 558 -protection sociale . retraite . complémentaire: 0 -protection sociale . retraite . trimestres: 0" +protection sociale . retraite . base: 1720 +protection sociale . retraite . complémentaire: 154 +protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV réduction et surcotisation 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 3449 +"dirigeant . indépendant . cotisations et contributions: 4183 dirigeant . rémunération . net: 10000 dirigeant . rémunération . net . après impôt: 10000 -entreprise . chiffre d'affaires: 13449 +entreprise . chiffre d'affaires: 14183 impôt . montant: 0 -protection sociale . retraite . base: 76 -protection sociale . retraite . complémentaire: 47 +protection sociale . retraite . base: 432 +protection sociale . retraite . complémentaire: 39 protection sociale . retraite . trimestres: 4 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV réduction et surcotisation 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 20592 +"dirigeant . indépendant . cotisations et contributions: 23180 dirigeant . rémunération . net: 50000 dirigeant . rémunération . net . après impôt: 41140 -entreprise . chiffre d'affaires: 70592 +entreprise . chiffre d'affaires: 73180 impôt . montant: 8860 -protection sociale . retraite . base: 340 -protection sociale . retraite . complémentaire: 274 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 199 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV réduction et surcotisation 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 46766 +"dirigeant . indépendant . cotisations et contributions: 40675 dirigeant . rémunération . net: 100000 dirigeant . rémunération . net . après impôt: 73139 -entreprise . chiffre d'affaires: 146766 +entreprise . chiffre d'affaires: 140675 impôt . montant: 26861 -protection sociale . retraite . base: 343 -protection sociale . retraite . complémentaire: 856 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 420 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 956 +"dirigeant . indépendant . cotisations et contributions: 1407 dirigeant . rémunération . net: 500 dirigeant . rémunération . net . après impôt: 500 -entreprise . chiffre d'affaires: 1456 +entreprise . chiffre d'affaires: 1907 impôt . montant: 0 -protection sociale . retraite . base: 38 +protection sociale . retraite . base: 219 protection sociale . retraite . complémentaire: 2 protection sociale . retraite . trimestres: 3 @@ -209,315 +209,313 @@ Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 1059 +"dirigeant . indépendant . cotisations et contributions: 1497 dirigeant . rémunération . net: 1000 dirigeant . rémunération . net . après impôt: 1000 -entreprise . chiffre d'affaires: 2059 +entreprise . chiffre d'affaires: 2497 impôt . montant: 0 -protection sociale . retraite . base: 38 -protection sociale . retraite . complémentaire: 5 +protection sociale . retraite . base: 219 +protection sociale . retraite . complémentaire: 4 protection sociale . retraite . trimestres: 3 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 1159 +"dirigeant . indépendant . cotisations et contributions: 1586 dirigeant . rémunération . net: 1500 dirigeant . rémunération . net . après impôt: 1500 -entreprise . chiffre d'affaires: 2659 +entreprise . chiffre d'affaires: 3086 impôt . montant: 0 -protection sociale . retraite . base: 38 -protection sociale . retraite . complémentaire: 7 +protection sociale . retraite . base: 219 +protection sociale . retraite . complémentaire: 6 protection sociale . retraite . trimestres: 3 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 4`] = ` -"dirigeant . indépendant . cotisations et contributions: 1260 +"dirigeant . indépendant . cotisations et contributions: 1676 dirigeant . rémunération . net: 2000 dirigeant . rémunération . net . après impôt: 2000 -entreprise . chiffre d'affaires: 3260 +entreprise . chiffre d'affaires: 3676 impôt . montant: 0 -protection sociale . retraite . base: 38 -protection sociale . retraite . complémentaire: 10 +protection sociale . retraite . base: 219 +protection sociale . retraite . complémentaire: 8 protection sociale . retraite . trimestres: 3 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 5`] = ` -"dirigeant . indépendant . cotisations et contributions: 1866 +"dirigeant . indépendant . cotisations et contributions: 2214 dirigeant . rémunération . net: 5000 dirigeant . rémunération . net . après impôt: 5000 -entreprise . chiffre d'affaires: 6866 +entreprise . chiffre d'affaires: 7214 impôt . montant: 0 -protection sociale . retraite . base: 38 -protection sociale . retraite . complémentaire: 24 +protection sociale . retraite . base: 219 +protection sociale . retraite . complémentaire: 20 protection sociale . retraite . trimestres: 3 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 6`] = ` -"dirigeant . indépendant . cotisations et contributions: 3449 +"dirigeant . indépendant . cotisations et contributions: 4183 dirigeant . rémunération . net: 10000 dirigeant . rémunération . net . après impôt: 10000 -entreprise . chiffre d'affaires: 13449 +entreprise . chiffre d'affaires: 14183 impôt . montant: 0 -protection sociale . retraite . base: 76 -protection sociale . retraite . complémentaire: 47 +protection sociale . retraite . base: 432 +protection sociale . retraite . complémentaire: 39 protection sociale . retraite . trimestres: 4 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 7`] = ` -"dirigeant . indépendant . cotisations et contributions: 46766 +"dirigeant . indépendant . cotisations et contributions: 40675 dirigeant . rémunération . net: 100000 dirigeant . rémunération . net . après impôt: 73139 -entreprise . chiffre d'affaires: 146766 +entreprise . chiffre d'affaires: 140675 impôt . montant: 26861 -protection sociale . retraite . base: 343 -protection sociale . retraite . complémentaire: 856 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 420 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > CIPAV échelle de revenu 8`] = ` -"dirigeant . indépendant . cotisations et contributions: 251729 +"dirigeant . indépendant . cotisations et contributions: 243081 dirigeant . rémunération . net: 1000000 dirigeant . rémunération . net . après impôt: 528702 -entreprise . chiffre d'affaires: 1251729 +entreprise . chiffre d'affaires: 1243081 impôt . montant: 471298 -protection sociale . retraite . base: 352 -protection sociale . retraite . complémentaire: 1508 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 769 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > auxiliaire médical 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 8631 -dirigeant . rémunération . net: 21369 -dirigeant . rémunération . net . après impôt: 20503 +"dirigeant . indépendant . cotisations et contributions: 9109 +dirigeant . rémunération . net: 20891 +dirigeant . rémunération . net . après impôt: 20025 entreprise . chiffre d'affaires: 30000 impôt . montant: 866 -protection sociale . retraite . base: 162 -protection sociale . retraite . complémentaire: 0 -protection sociale . retraite . trimestres: 4" +protection sociale . retraite . base: 924 +protection sociale . retraite . complémentaire: 83 +protection sociale . retraite . trimestres: 4 + +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > auxiliaire médical 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 8803 -dirigeant . rémunération . net: 21197 -dirigeant . rémunération . net . après impôt: 20358 +"dirigeant . indépendant . cotisations et contributions: 9020 +dirigeant . rémunération . net: 20980 +dirigeant . rémunération . net . après impôt: 20141 entreprise . chiffre d'affaires: 30000 impôt . montant: 839 -protection sociale . retraite . base: 161 -protection sociale . retraite . complémentaire: 0 -protection sociale . retraite . trimestres: 4" +protection sociale . retraite . base: 917 +protection sociale . retraite . complémentaire: 82 +protection sociale . retraite . trimestres: 4 + +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > auxiliaire médical 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 72312 -dirigeant . rémunération . net: 227688 -dirigeant . rémunération . net . après impôt: 144422 +"dirigeant . indépendant . cotisations et contributions: 76351 +dirigeant . rémunération . net: 223649 +dirigeant . rémunération . net . après impôt: 140383 entreprise . chiffre d'affaires: 300000 impôt . montant: 83266 -protection sociale . retraite . base: 352 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 769 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > avocat 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 11499 -dirigeant . rémunération . net: 38501 -dirigeant . rémunération . net . après impôt: 33258 +"dirigeant . indépendant . cotisations et contributions: 17952 +dirigeant . rémunération . net: 32048 +dirigeant . rémunération . net . après impôt: 26805 entreprise . chiffre d'affaires: 50000 impôt . montant: 5243 -protection sociale . retraite . base: 292 -protection sociale . retraite . complémentaire: 0 -protection sociale . retraite . trimestres: 4 - -Notifications affichées : entreprise . TVA . franchise de TVA . notification" +protection sociale . retraite . base: 1661 +protection sociale . retraite . complémentaire: 149 +protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > avocat 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 11920 -dirigeant . rémunération . net: 38080 -dirigeant . rémunération . net . après impôt: 32963 +"dirigeant . indépendant . cotisations et contributions: 17742 +dirigeant . rémunération . net: 32258 +dirigeant . rémunération . net . après impôt: 27141 entreprise . chiffre d'affaires: 50000 impôt . montant: 5117 -protection sociale . retraite . base: 289 -protection sociale . retraite . complémentaire: 0 -protection sociale . retraite . trimestres: 4 - -Notifications affichées : entreprise . TVA . franchise de TVA . notification" +protection sociale . retraite . base: 1643 +protection sociale . retraite . complémentaire: 147 +protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > expert-comptable 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 4632 -dirigeant . rémunération . net: 15368 -dirigeant . rémunération . net . après impôt: 15368 +"dirigeant . indépendant . cotisations et contributions: 6308 +dirigeant . rémunération . net: 13692 +dirigeant . rémunération . net . après impôt: 13692 entreprise . chiffre d'affaires: 20000 impôt . montant: 0 -protection sociale . retraite . base: 116 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 663 +protection sociale . retraite . complémentaire: 60 protection sociale . retraite . trimestres: 4 Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > expert-comptable 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 15093 -dirigeant . rémunération . net: 34907 -dirigeant . rémunération . net . après impôt: 30742 +"dirigeant . indépendant . cotisations et contributions: 16174 +dirigeant . rémunération . net: 33826 +dirigeant . rémunération . net . après impôt: 29661 entreprise . chiffre d'affaires: 50000 impôt . montant: 4165 -protection sociale . retraite . base: 265 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1511 +protection sociale . retraite . complémentaire: 135 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > médecin 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 14545 -dirigeant . rémunération . net: 35455 -dirigeant . rémunération . net . après impôt: 31127 +"dirigeant . indépendant . cotisations et contributions: 16445 +dirigeant . rémunération . net: 33555 +dirigeant . rémunération . net . après impôt: 29227 entreprise . chiffre d'affaires: 50000 impôt . montant: 4328 -protection sociale . retraite . base: 269 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1534 +protection sociale . retraite . complémentaire: 137 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > médecin 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 20125 -dirigeant . rémunération . net: 29875 -dirigeant . rémunération . net . après impôt: 27221 +"dirigeant . indépendant . cotisations et contributions: 13748 +dirigeant . rémunération . net: 36252 +dirigeant . rémunération . net . après impôt: 33598 entreprise . chiffre d'affaires: 50000 impôt . montant: 2654 -protection sociale . retraite . base: 228 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1301 +protection sociale . retraite . complémentaire: 116 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > médecin 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 94217 -dirigeant . rémunération . net: 205783 -dirigeant . rémunération . net . après impôt: 132374 +"dirigeant . indépendant . cotisations et contributions: 71637 +dirigeant . rémunération . net: 228363 +dirigeant . rémunération . net . après impôt: 154954 entreprise . chiffre d'affaires: 300000 impôt . montant: 73409 -protection sociale . retraite . base: 351 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 769 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > médecin 4`] = ` -"dirigeant . indépendant . cotisations et contributions: 119646 -dirigeant . rémunération . net: 280354 -dirigeant . rémunération . net . après impôt: 170931 +"dirigeant . indépendant . cotisations et contributions: 87917 +dirigeant . rémunération . net: 312083 +dirigeant . rémunération . net . après impôt: 202660 entreprise . chiffre d'affaires: 400000 impôt . montant: 109423 -protection sociale . retraite . base: 352 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 769 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > médecin 5`] = ` -"dirigeant . indépendant . cotisations et contributions: 34936 -dirigeant . rémunération . net: 85064 -dirigeant . rémunération . net . après impôt: 64625 +"dirigeant . indépendant . cotisations et contributions: 35908 +dirigeant . rémunération . net: 84092 +dirigeant . rémunération . net . après impôt: 63653 entreprise . chiffre d'affaires: 120000 impôt . montant: 20439 -protection sociale . retraite . base: 342 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1932 +protection sociale . retraite . complémentaire: 354 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > médecin 6`] = ` -"dirigeant . indépendant . cotisations et contributions: 14545 -dirigeant . rémunération . net: 35455 -dirigeant . rémunération . net . après impôt: 31127 +"dirigeant . indépendant . cotisations et contributions: 16445 +dirigeant . rémunération . net: 33555 +dirigeant . rémunération . net . après impôt: 29227 entreprise . chiffre d'affaires: 50000 impôt . montant: 4328 -protection sociale . retraite . base: 269 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 1534 +protection sociale . retraite . complémentaire: 137 protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > sage-femme 1`] = ` -"dirigeant . indépendant . cotisations et contributions: 12447 -dirigeant . rémunération . net: 37553 -dirigeant . rémunération . net . après impôt: 32595 +"dirigeant . indépendant . cotisations et contributions: 17480 +dirigeant . rémunération . net: 32520 +dirigeant . rémunération . net . après impôt: 27562 entreprise . chiffre d'affaires: 50000 impôt . montant: 4958 -protection sociale . retraite . base: 285 -protection sociale . retraite . complémentaire: 0 -protection sociale . retraite . trimestres: 4 - -Notifications affichées : dirigeant . indépendant . PL . CARCDSF . retraite complémentaire . cotisation forfaitaire . réduction applicable" +protection sociale . retraite . base: 1621 +protection sociale . retraite . complémentaire: 145 +protection sociale . retraite . trimestres: 4" `; exports[`calculate simulations-professions-libérales > sage-femme 2`] = ` -"dirigeant . indépendant . cotisations et contributions: 5350 -dirigeant . rémunération . net: 14650 -dirigeant . rémunération . net . après impôt: 14650 +"dirigeant . indépendant . cotisations et contributions: 6031 +dirigeant . rémunération . net: 13969 +dirigeant . rémunération . net . après impôt: 13969 entreprise . chiffre d'affaires: 20000 impôt . montant: 0 -protection sociale . retraite . base: 111 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 633 +protection sociale . retraite . complémentaire: 56 protection sociale . retraite . trimestres: 4 -Notifications affichées : dirigeant . indépendant . PL . CARCDSF . retraite complémentaire . cotisation forfaitaire . réduction applicable" +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > sage-femme 3`] = ` -"dirigeant . indépendant . cotisations et contributions: 1605 -dirigeant . rémunération . net: 2395 -dirigeant . rémunération . net . après impôt: 2395 +"dirigeant . indépendant . cotisations et contributions: 1748 +dirigeant . rémunération . net: 2252 +dirigeant . rémunération . net . après impôt: 2252 entreprise . chiffre d'affaires: 4000 impôt . montant: 0 -protection sociale . retraite . base: 38 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 219 +protection sociale . retraite . complémentaire: 9 protection sociale . retraite . trimestres: 3 -Notifications affichées : dirigeant . indépendant . PL . CARCDSF . retraite complémentaire . cotisation forfaitaire . réduction applicable, dirigeant . indépendant . PL . CARCDSF . sage-femme . exonération PCV" +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > sage-femme 4`] = ` -"dirigeant . indépendant . cotisations et contributions: 5350 -dirigeant . rémunération . net: 14650 -dirigeant . rémunération . net . après impôt: 14650 +"dirigeant . indépendant . cotisations et contributions: 6031 +dirigeant . rémunération . net: 13969 +dirigeant . rémunération . net . après impôt: 13969 entreprise . chiffre d'affaires: 20000 impôt . montant: 0 -protection sociale . retraite . base: 111 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 633 +protection sociale . retraite . complémentaire: 56 protection sociale . retraite . trimestres: 4 -Notifications affichées : dirigeant . indépendant . PL . CARCDSF . retraite complémentaire . cotisation forfaitaire . réduction applicable" +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > sage-femme 5`] = ` -"dirigeant . indépendant . cotisations et contributions: 5350 -dirigeant . rémunération . net: 14650 -dirigeant . rémunération . net . après impôt: 14650 +"dirigeant . indépendant . cotisations et contributions: 6031 +dirigeant . rémunération . net: 13969 +dirigeant . rémunération . net . après impôt: 13969 entreprise . chiffre d'affaires: 20000 impôt . montant: 0 -protection sociale . retraite . base: 111 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 633 +protection sociale . retraite . complémentaire: 56 protection sociale . retraite . trimestres: 4 -Notifications affichées : dirigeant . indépendant . PL . CARCDSF . retraite complémentaire . cotisation forfaitaire . réduction applicable" +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; exports[`calculate simulations-professions-libérales > sage-femme 6`] = ` -"dirigeant . indépendant . cotisations et contributions: 5350 -dirigeant . rémunération . net: 14650 -dirigeant . rémunération . net . après impôt: 14650 +"dirigeant . indépendant . cotisations et contributions: 6031 +dirigeant . rémunération . net: 13969 +dirigeant . rémunération . net . après impôt: 13969 entreprise . chiffre d'affaires: 20000 impôt . montant: 0 -protection sociale . retraite . base: 111 -protection sociale . retraite . complémentaire: 0 +protection sociale . retraite . base: 633 +protection sociale . retraite . complémentaire: 56 protection sociale . retraite . trimestres: 4 -Notifications affichées : dirigeant . indépendant . PL . CARCDSF . retraite complémentaire . cotisation forfaitaire . réduction applicable" +Notifications affichées : entreprise . TVA . franchise de TVA . notification" `; diff --git a/site/test/regressions/__snapshots__/réduction-générale.test.ts.snap b/site/test/regressions/__snapshots__/réduction-générale.test.ts.snap index a0da6bfd3..764f5db73 100644 --- a/site/test/regressions/__snapshots__/réduction-générale.test.ts.snap +++ b/site/test/regressions/__snapshots__/réduction-générale.test.ts.snap @@ -1,47 +1,47 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html exports[`calculate simulations-dividendes > DFS 1`] = ` -"salarié . cotisations . assiette: 1802 -salarié . cotisations . exonérations . réduction générale: 523 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 73 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 108 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 415" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > DFS 2`] = ` -"salarié . cotisations . assiette: 1802 -salarié . cotisations . exonérations . réduction générale: 523 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 73 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 108 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 415" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > DFS 3`] = ` -"salarié . cotisations . assiette: 1802 -salarié . cotisations . exonérations . réduction générale: 575 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 73 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 108 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 467" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > DFS 4`] = ` -"salarié . cotisations . assiette: 1802 -salarié . cotisations . exonérations . réduction générale: 575 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 73 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 108 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 467" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > DFS 5`] = ` -"salarié . cotisations . assiette: 1802 -salarié . cotisations . exonérations . réduction générale: 575 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 73 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 108 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 467" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > JEI 1`] = ` -"salarié . cotisations . assiette: 1900 +"salarié . cotisations . assiette: null salarié . cotisations . exonérations . réduction générale: null salarié . cotisations . exonérations . réduction générale . imputation chômage: null salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null @@ -49,129 +49,129 @@ salarié . cotisations . exonérations . réduction générale . imputation séc `; exports[`calculate simulations-dividendes > effectif 1`] = ` -"salarié . cotisations . assiette: 1900 -salarié . cotisations . exonérations . réduction générale: 523 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 66 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 98 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 425" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > effectif 2`] = ` -"salarié . cotisations . assiette: 1900 -salarié . cotisations . exonérations . réduction générale: 530 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 66 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 98 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 431" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > heures complémentaires 1`] = ` -"salarié . cotisations . assiette: 1900 -salarié . cotisations . exonérations . réduction générale: 483 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 61 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 91 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 392" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > heures supplémentaires 1`] = ` -"salarié . cotisations . assiette: 1900 -salarié . cotisations . exonérations . réduction générale: 607 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 77 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 114 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 493" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 1`] = ` -"salarié . cotisations . assiette: 100 -salarié . cotisations . exonérations . réduction générale: 32 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 4 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 6 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 26" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 2`] = ` -"salarié . cotisations . assiette: 250 -salarié . cotisations . exonérations . réduction générale: 80 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 10 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 15 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 65" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 3`] = ` -"salarié . cotisations . assiette: 500 -salarié . cotisations . exonérations . réduction générale: 160 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 20 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 30 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 130" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 4`] = ` -"salarié . cotisations . assiette: 750 -salarié . cotisations . exonérations . réduction générale: 240 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 30 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 45 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 194" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 5`] = ` -"salarié . cotisations . assiette: 1000 -salarié . cotisations . exonérations . réduction générale: 319 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 40 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 60 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 259" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 6`] = ` -"salarié . cotisations . assiette: 1250 -salarié . cotisations . exonérations . réduction générale: 399 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 51 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 75 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 324" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 7`] = ` -"salarié . cotisations . assiette: 1500 -salarié . cotisations . exonérations . réduction générale: 479 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 61 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 90 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 389" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 8`] = ` -"salarié . cotisations . assiette: 2000 -salarié . cotisations . exonérations . réduction générale: 470 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 60 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 88 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 382" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 9`] = ` -"salarié . cotisations . assiette: 2500 -salarié . cotisations . exonérations . réduction générale: 204 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 26 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 38 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 165" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > salaire 10`] = ` -"salarié . cotisations . assiette: 3000 -salarié . cotisations . exonérations . réduction générale: 0 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 0 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 0 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 0" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > stage 1`] = ` -"salarié . cotisations . assiette: 1900 -salarié . cotisations . exonérations . réduction générale: 523 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 66 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 98 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 425" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; exports[`calculate simulations-dividendes > temps partiel 1`] = ` -"salarié . cotisations . assiette: 1900 -salarié . cotisations . exonérations . réduction générale: 392 -salarié . cotisations . exonérations . réduction générale . imputation chômage: 50 -salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: 74 -salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: 318" +"salarié . cotisations . assiette: null +salarié . cotisations . exonérations . réduction générale: null +salarié . cotisations . exonérations . réduction générale . imputation chômage: null +salarié . cotisations . exonérations . réduction générale . imputation retraite complémentaire: null +salarié . cotisations . exonérations . réduction générale . imputation sécurité sociale: null" `; diff --git a/site/test/regressions/artiste-auteur.test.ts b/site/test/regressions/artiste-auteur.test.ts index dd0411d94..f9dc05936 100644 --- a/site/test/regressions/artiste-auteur.test.ts +++ b/site/test/regressions/artiste-auteur.test.ts @@ -1,9 +1,9 @@ -import { expect, it } from 'vitest' +import { it } from 'vitest' import { configArtisteAuteur } from '@/pages/simulateurs/artiste-auteur/simulationConfig' import artisteAuteurSituations from './artiste-auteur.yaml' -import { engine, getMissingVariables, runSimulations } from './utils' +import { runSimulations } from './utils' it('calculate simulations-artiste-auteur', () => { runSimulations( @@ -14,22 +14,4 @@ it('calculate simulations-artiste-auteur', () => { ], configArtisteAuteur.situation ) - - expect( - getMissingVariables( - engine - .setSituation(configArtisteAuteur.situation) - .evaluate('artiste-auteur . cotisations') - ) - ).toMatchInlineSnapshot(` - [ - "artiste-auteur . cotisations . option surcotisation", - "artiste-auteur . revenus . BNC . recettes", - "artiste-auteur . revenus . traitements et salaires", - "salarié . contrat", - "salarié . régimes spécifiques . DFS", - "établissement . commune . département", - "établissement . commune . département . outre-mer", - ] - `) }) diff --git a/site/test/regressions/auto-entrepreneur.test.ts b/site/test/regressions/auto-entrepreneur.test.ts index 2d3d898b3..56853bf9d 100644 --- a/site/test/regressions/auto-entrepreneur.test.ts +++ b/site/test/regressions/auto-entrepreneur.test.ts @@ -38,11 +38,15 @@ it('calculate simulations-auto-entrepreneur', () => { ) ).toMatchInlineSnapshot(` [ + "dirigeant . assimilé salarié", "dirigeant . auto-entrepreneur . impôt . versement libératoire", + "dirigeant . régime social", "entreprise . activité . nature", "entreprise . activités . revenus mixtes", "entreprise . activités . service ou vente", + "entreprise . catégorie juridique . EI . auto-entrepreneur", "entreprise . date de création", + "entreprise . imposition . IR . type de bénéfices", "impôt . foyer fiscal . enfants à charge", "impôt . foyer fiscal . revenu imposable . autres revenus imposables", "impôt . foyer fiscal . situation de famille", diff --git a/site/test/regressions/professions-libérales.test.ts b/site/test/regressions/professions-libérales.test.ts index 4a03fcfae..dbcb0af1d 100644 --- a/site/test/regressions/professions-libérales.test.ts +++ b/site/test/regressions/professions-libérales.test.ts @@ -29,9 +29,11 @@ it('calculate simulations-professions-libérales', () => { ) ).toMatchInlineSnapshot(` [ + "dirigeant . assimilé salarié", "dirigeant . indépendant . IJSS", "dirigeant . indépendant . PL . CNAVPL . exonération incapacité", "dirigeant . indépendant . PL . métier", + "dirigeant . indépendant . PL . métier . rattaché CIPAV", "dirigeant . indépendant . conjoint collaborateur", "dirigeant . indépendant . cotisations et contributions . exonérations . pension invalidité", "dirigeant . indépendant . cotisations et contributions . exonérations . âge", diff --git a/site/test/regressions/salarié.test.ts b/site/test/regressions/salarié.test.ts index 278cbc128..fb2b199a4 100644 --- a/site/test/regressions/salarié.test.ts +++ b/site/test/regressions/salarié.test.ts @@ -29,7 +29,6 @@ it('calculate simulations-salarié', () => { "entreprise . associés . unique", "entreprise . catégorie juridique", "entreprise . catégorie juridique . EI", - "entreprise . catégorie juridique . EI . auto-entrepreneur", "entreprise . catégorie juridique . SAS", "entreprise . catégorie juridique . SELARL", "entreprise . catégorie juridique . SELAS", diff --git a/site/test/vitest.d.ts b/site/test/vitest.d.ts new file mode 100644 index 000000000..58da381e3 --- /dev/null +++ b/site/test/vitest.d.ts @@ -0,0 +1,19 @@ +import 'vitest' + +import { DottedName } from 'modele-social' +import { Evaluation } from 'publicodes' + +import { PublicodesTypes } from './modele-social/helpers/PublicodesTypes' + +interface CustomMatchers { + toEvaluate: ( + rule: DottedName, + value: Evaluation + ) => R +} + +declare module 'vitest' { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + interface Assertion extends CustomMatchers {} + interface AsymmetricMatchersContaining extends CustomMatchers {} +} diff --git a/site/vitest-setup.ts b/site/vitest-setup.ts index a9d0dd31a..a383b4d70 100644 --- a/site/vitest-setup.ts +++ b/site/vitest-setup.ts @@ -1 +1,2 @@ import '@testing-library/jest-dom/vitest' +import './test/modele-social/matchers/toEvaluate' diff --git a/yarn.lock b/yarn.lock index da006c541..192b262bc 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7587,17 +7587,17 @@ __metadata: languageName: node linkType: hard -"@publicodes/react-ui@npm:^1.5.2": - version: 1.5.2 - resolution: "@publicodes/react-ui@npm:1.5.2" +"@publicodes/react-ui@npm:^1.5.4": + version: 1.5.4 + resolution: "@publicodes/react-ui@npm:1.5.4" dependencies: fuse.js: ^7.0.0 styled-components: ^6.1.1 peerDependencies: - publicodes: ^1.5.1 + publicodes: ^1.5.3 react: ^18 react-dom: ^18 - checksum: c1395c5c30fdc5d5e82134ed3f8ea75cc5682329dc714441921d2f7d4d29920fc1a1cfbeee2e645f845030c8f587e5b109c7cf60e4d3f930f2ed3ae69ff012fa + checksum: b10c32c3fa3537c0a9d9b9e0a8f1f09e347bd3804faaf687542208f41fd1b4405a18f2130028d0cfdc750d4ca4a2f115cb8972554def884fbe7be809761e6150 languageName: node linkType: hard @@ -27010,6 +27010,15 @@ __metadata: languageName: node linkType: hard +"publicodes@npm:^1.5.4": + version: 1.5.4 + resolution: "publicodes@npm:1.5.4" + peerDependencies: + "@types/mocha": ^9.0.0 + checksum: bdb4f6df3f88713a7ac42ff27a48d1b5bb68ee2ca7e09f41d33f89eac888d137b49cc1826f10e6ee8826e26b0fa90ecdec988d1099e28a2770749b7f0a0591a0 + languageName: node + linkType: hard + "pump@npm:3.0.0, pump@npm:^3.0.0": version: 3.0.0 resolution: "pump@npm:3.0.0" @@ -28717,7 +28726,7 @@ __metadata: eslint-plugin-vitest: ^0.3.22 optics-ts: ^2.4.1 prettier: ^3.0.3 - publicodes: ^1.5.1 + publicodes: ^1.5.4 rimraf: ^5.0.1 languageName: unknown linkType: soft @@ -29293,7 +29302,7 @@ __metadata: "@internationalized/number": ^3.2.1 "@juggle/resize-observer": ^3.4.0 "@leeoniya/ufuzzy": ^1.0.10 - "@publicodes/react-ui": ^1.5.2 + "@publicodes/react-ui": ^1.5.4 "@react-aria/accordion": ^3.0.0-alpha.17 "@react-pdf/renderer": ^3.1.12 "@react-types/accordion": ^3.0.0-alpha.16