🔨 ajoute la défiscalisation des heures supplémentaires

pull/629/head
Johan Girod 2019-08-27 16:16:51 +02:00
parent 321ef03083
commit d6b1f2808a
No known key found for this signature in database
GPG Key ID: 9E27B57DA2E8AE12
15 changed files with 179 additions and 124 deletions

View File

@ -10,7 +10,7 @@ export let SalaireBrutSection = ({ getRule }) => {
heuresSupplémentaires = getRule(
'contrat salarié . rémunération . heures supplémentaires'
),
salaireDeBase = getRule('contrat salarié . salaire . brut de base'),
salaireDeBase = getRule('contrat salarié . rémunération . brut de base'),
rémunérationBrute = getRule('contrat salarié . rémunération . brut')
return (
@ -48,19 +48,24 @@ export let SalaireNetSection = ({ getRule }) => {
<T>Salaire net</T>
</h4>
<Line rule={getRule('contrat salarié . rémunération . net imposable')} />
<Line
rule={getRule('contrat salarié . rémunération . net de cotisations')}
/>
<Line rule={getRule('contrat salarié . rémunération . net')} />
{avantagesEnNature.nodeValue !== 0 ? (
<>
{/* Avantages en nature */}
<Line negative rule={avantagesEnNature} />
{/* Salaire net */}
<Line rule={getRule('contrat salarié . salaire . net')} />
<Line rule={getRule('contrat salarié . rémunération . net')} />
</>
) : null}
<<<<<<< HEAD
<Line negative rule={getRule('impôt')} />
<Line rule={getRule('contrat salarié . salaire . net après impôt')} />
=======
<Line negative rule={getRule('impôt . neutre')} />
<Line
rule={getRule('contrat salarié . rémunération . net après impôt')}
/>
>>>>>>> :hammer: ajoute la défiscalisation des heures supplémentaires
</div>
)
}

View File

@ -13,6 +13,8 @@ import PeriodSwitch from 'Components/PeriodSwitch'
import ComparaisonConfig from 'Components/simulationConfigs/rémunération-dirigeant.yaml'
import withSimulationConfig from 'Components/simulationConfigs/withSimulationConfig'
import withSitePaths from 'Components/utils/withSitePaths'
import Value from 'Components/Value'
import { encodeRuleName, getRuleFromAnalysis } from 'Engine/rules.js'
import revenusSVG from 'Images/revenus.svg'
import { compose } from 'ramda'
import React, { useCallback, useState } from 'react'
@ -20,14 +22,12 @@ import emoji from 'react-easy-emoji'
import { connect } from 'react-redux'
import { Link } from 'react-router-dom'
import {
branchAnalyseSelector,
analysisWithDefaultsSelector
analysisWithDefaultsSelector,
branchAnalyseSelector
} from 'Selectors/analyseSelectors'
import Animate from 'Ui/animate'
import InfoBulle from 'Ui/InfoBulle'
import Value from 'Components/Value'
import './SchemeComparaison.css'
import { encodeRuleName, getRuleFromAnalysis } from 'Engine/rules.js'
type OwnProps = {
hideAutoEntrepreneur?: boolean,
@ -374,7 +374,7 @@ const SchemeComparaison = ({
<div className="AS">
<RuleValueLink
branch="assimilé"
rule="contrat salarié . salaire . net"
rule="contrat salarié . rémunération . net"
/>
</div>
<div className="indep">

View File

@ -4,9 +4,9 @@ objectifs:
objectifs:
- contrat salarié . rémunération . total
- contrat salarié . cotisations
- contrat salarié . salaire . net
- contrat salarié . rémunération . net
- impôt
- contrat salarié . salaire . net après impôt
- contrat salarié . rémunération . net après impôt
- icône: 🏢
nom: Mon entreprise
objectifs:

View File

@ -1,9 +1,9 @@
objectifs:
- contrat salarié . rémunération . total
- contrat salarié . salaire . brut de base . équivalent temps plein
- contrat salarié . salaire . brut de base
- contrat salarié . salaire . net
- contrat salarié . salaire . net après impôt
- contrat salarié . rémunération . brut de base . équivalent temps plein
- contrat salarié . rémunération . brut de base
- contrat salarié . rémunération . net
- contrat salarié . rémunération . net après impôt
objectifs secondaires:
- contrat salarié . temps de travail

View File

@ -179,7 +179,7 @@
exemples:
- nom: pas de congés non pris
situation:
salaire . brut de base: 2300
rémunération . brut de base: 2300
prime de fin de contrat: 0
congés non pris: 0
durée contrat: 12
@ -187,7 +187,7 @@
- nom: 10 jours non pris
situation:
CDD: oui
salaire . brut de base: 2300
rémunération . brut de base: 2300
prime de fin de contrat: 0
congés non pris: 10
durée contrat: 12
@ -195,7 +195,7 @@
- nom: 3 jours non pris
situation:
CDD: oui
salaire . brut de base: 2300
rémunération . brut de base: 2300
prime de fin de contrat: 0
congés non pris: 3
durée contrat: 6
@ -235,7 +235,7 @@
- espace: contrat salarié . CDD . compensation pour congés non pris
période: mois
nom: assiette mensuelle
formule: salaire . brut de base + prime de fin de contrat
formule: rémunération . brut de base + prime de fin de contrat
- espace: contrat salarié . CDD . compensation pour congés non pris
nom: salaire journalier
@ -279,21 +279,21 @@
# Ici elle est étalée sur un mois moyen
formule:
multiplication:
assiette: salaire . brut de base
assiette: rémunération . brut de base
taux: 10%
exemples:
- nom: salaire médian
situation:
CDD: oui
salaire . brut de base: 2300
rémunération . brut de base: 2300
motif: classique . accroissement activité
valeur attendue: 230
- nom: CDD d'usage -> non applicable
situation:
motif: classique . usage
salaire . brut de base: 2300
rémunération . brut de base: 2300
valeur attendue: null
références:
@ -730,10 +730,7 @@
période: flexible
formule: rémunération . brut - indemnité kilométrique vélo
- espace: contrat salarié
nom: salaire
- espace: contrat salarié . salaire
- espace: contrat salarié . rémunération
nom: brut de base
titre: Salaire brut
résumé: Brut de base inscrit dans le contrat de travail
@ -751,7 +748,7 @@
contrôles:
- si:
toutes ces conditions:
- assiette de vérification du SMIC [mensuel] < SMIC [mensuel]
- rémunération . assiette de vérification du SMIC [mensuel] < SMIC [mensuel]
- assimilé salarié != oui
niveau: avertissement
message: |
@ -770,8 +767,8 @@
titre: salaire
avec:
- rémunération . total
- salaire . net
- salaire . net après impôt
- rémunération . net
- rémunération . net après impôt
- équivalent temps plein
- entreprise . chiffre d'affaires
- entreprise . chiffre d'affaires minimum
@ -780,7 +777,7 @@
références:
Le salaire. Fixation et paiement: http://travail-emploi.gouv.fr/droit-du-travail/remuneration-et-participation-financiere/remuneration/article/le-salaire-fixation-et-paiement
- espace: contrat salarié . salaire . brut de base
- espace: contrat salarié . rémunération . brut de base
nom: équivalent temps plein
applicable si: temps de travail . temps partiel
titre: Salaire brut équivalent temps plein
@ -793,14 +790,14 @@
salaire médian: 2300
SMIC: 1522
- espace: contrat salarié . salaire . brut de base
- espace: contrat salarié . rémunération . brut de base
titre: brut horaire
nom: horaire
période: aucune
unité: € / heures
formule: brut de base / temps de travail
formule: rémunération . assiette de vérification du SMIC / temps de travail
- espace: contrat salarié . salaire
- espace: contrat salarié . rémunération
nom: assiette de vérification du SMIC
description: >
C'est le salaire pris en compte pour vérifier que le SMIC est atteint.
@ -808,7 +805,7 @@
période: flexible
formule:
somme:
- brut de base
- rémunération . brut de base
- avantages en nature . montant
- espace: contrat salarié . rémunération
@ -819,20 +816,21 @@
période: flexible
formule:
somme:
- salaire . brut de base
- rémunération . brut de base
- avantages en nature . montant
- indemnités salarié
- heures supplémentaires
- espace: contrat salarié . rémunération
nom: heures supplémentaires
titre: rémunération heures supplémentaires
description: La rémunération relative aux heures supplémentaires
unité:
période: flexible
formule:
multiplication:
assiette: temps de travail . heures supplémentaires
facteur: salaire . brut de base . horaire
facteur: rémunération . brut de base . horaire
taux: temps de travail . heures supplémentaires . taux majoré
- espace: contrat salarié
@ -1079,38 +1077,6 @@
- complémentaire santé [salarié]
- réduction heures supplémentaires
- espace: contrat salarié . cotisations . salariales
nom: réduction heures supplémentaires
cotisation:
branche: retraite
aide:
type: réduction de cotisations
unité:
période: flexible
formule:
0 - rémunération . heures supplémentaires * taux des cotisations réduites
# multiplication:
# assiette: rémunération . heures supplémentaires
# taux: taux des cotisations réduites
références:
Code de la sécurité sociale - Article D241-21: https://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000038056813&cidTexte=LEGITEXT000006073189
urssaf: https://www.urssaf.fr/portail/home/employeur/beneficier-dune-exoneration/exonerations-generales/la-reduction-de-cotisations-sala/modalites-de-calcul-et-de-declar.html
- espace: contrat salarié . cotisations . salariales . réduction heures supplémentaires
nom: taux des cotisations réduites
période: aucune
unité: '%'
description: le taux effectif des cotisations d'assurance vieillesse à la charge du salarié
formule:
le minimum de:
- 11.31%
- multiplication:
assiette:
somme:
- vieillesse [salarié]
- retraite complémentaire [salarié]
- contribution d'équilibre général [salarié]
facteur: 1 / assiette
- espace: contrat salarié . cotisations
nom: patronales
@ -1149,7 +1115,7 @@
- espace: contrat salarié . rémunération
nom: net de cotisations
titre: Rémunération nette de cotisations
titre: Salaire net de cotisations
type: rémunération
unité:
période: flexible
@ -1170,6 +1136,29 @@
somme:
- indemnité kilométrique vélo
- prime d'impatriation
- heures supplémentaires défiscalisées
- cotisations . salariales . réduction heures supplémentaires
références:
DSN: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
- espace: contrat salarié . rémunération . net imposable
nom: heures supplémentaires défiscalisées
période: flexible
unité:
formule:
le minimum de:
- plafond brut
- heures supplémentaires
références:
DSN: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
- espace: contrat salarié . rémunération . net imposable . heures supplémentaires défiscalisées
nom: plafond brut
unité:
période: année
formule: 5358
références:
DSN: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
- espace: contrat salarié . rémunération . net imposable
nom: base
@ -1194,7 +1183,7 @@
références:
Article 155B du Code général des impôts: https://www.legifrance.gouv.fr/affichCodeArticle.do?cidTexte=LEGITEXT000006069577&idArticle=LEGIARTI000006307476&dateTexte=&categorieLien=cid
- espace: contrat salarié . salaire
- espace: contrat salarié . rémunération
nom: net
titre: Salaire net
type: salaire
@ -1210,7 +1199,7 @@
période: flexible
formule: rémunération . net de cotisations - avantages en nature . montant
- espace: contrat salarié . salaire
- espace: contrat salarié . rémunération
nom: net après impôt
titre: Salaire net après impôt
résumé: Versé sur le compte bancaire
@ -1614,6 +1603,40 @@
1: 0%
retourne seulement le taux: oui
- espace: contrat salarié . cotisations . salariales
nom: réduction heures supplémentaires
cotisation:
branche: retraite
aide:
type: réduction de cotisations
unité:
période: flexible
formule:
0 - rémunération . heures supplémentaires * taux des cotisations réduites
# multiplication:
# assiette: rémunération . heures supplémentaires
# taux: taux des cotisations réduites
références:
Code de la sécurité sociale - Article D241-21: https://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000038056813&cidTexte=LEGITEXT000006073189
urssaf: https://www.urssaf.fr/portail/home/employeur/beneficier-dune-exoneration/exonerations-generales/la-reduction-de-cotisations-sala/modalites-de-calcul-et-de-declar.html
Circulaire DSS/5B/2019/71: http://circulaire.legifrance.gouv.fr/pdf/2019/04/cir_44492.pdf
- espace: contrat salarié . cotisations . salariales . réduction heures supplémentaires
nom: taux des cotisations réduites
période: aucune
unité: '%'
description: le taux effectif des cotisations d'assurance vieillesse à la charge du salarié
formule:
le minimum de:
- 11.31%
- multiplication:
assiette:
somme:
- vieillesse [salarié]
- retraite complémentaire [salarié]
- contribution d'équilibre général [salarié]
facteur: 1 / assiette
- espace: contrat salarié . rémunération
nom: total sans réduction
période: flexible
@ -1846,7 +1869,6 @@
- 100%
unité: '%'
- espace: contrat salarié . temps de travail
description: Toute heure de travail accomplie, à la demande de l'employeur, au-delà de la durée légale de 35 heures (ou de la durée équivalente) est une heure supplémentaire. Les heures supplémentaires ouvrent droit à une rémunération plus favorable (taux horaire majoré) au salarié.
nom: heures supplémentaires
@ -1859,6 +1881,11 @@
aucune: 0
39h / semaine: 17.33
42h / semaine: 30.33
contrôles:
- si: heures supplémentaires > 190.66
niveau: avertissement
message: La durée hebdomadaire moyenne de travail en France ne peut pas dépasser 44h / semaine
références:
service-public.fr: https://www.service-public.fr/particuliers/vosdroits/F2391
@ -2353,19 +2380,20 @@
- espace: contrat salarié
note: Cette assiette est complexe, cette version n'est qu'une simplification.
nom: assiette CSG
nom: assiette CSG et CRDS
période: flexible
références:
calcul: https://www.urssaf.fr/portail/home/employeur/calculer-les-cotisations/les-taux-de-cotisations/la-csg-crds/les-revenus-salariaux-soumis-a-l.html
abattement: https://www.urssaf.fr/portail/home/employeur/calculer-les-cotisations/les-taux-de-cotisations/la-csg-crds/abattement-et-deductions/les-revenus-exclus-de-labattemen.html
heures supplémentaires: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
formule:
somme:
- assiette CSG abattue
- assiette abattue
- prévoyance obligatoire cadre
- complémentaire santé [employeur]
- espace: contrat salarié
nom: assiette CSG abattue
- espace: contrat salarié . assiette CSG et CRDS
nom: assiette abattue
période: flexible
formule:
barème:
@ -2378,6 +2406,22 @@
- au-dessus de: 4
taux: 100%
- espace: contrat salarié . CSG
nom: assiette heures supplémentaires défiscalisées
période: flexible
formule:
multiplication:
assiette: rémunération . net imposable . heures supplémentaires défiscalisées
taux: 98.25%
références:
DSN: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
- espace: contrat salarié . CSG
nom: assiette CSG déductible
période: flexible
unité:
formule: assiette CSG et CRDS - assiette heures supplémentaires défiscalisées
- espace: contrat salarié
nom: CSG
cotisation:
@ -2389,15 +2433,21 @@
période: flexible
formule:
multiplication:
assiette: assiette CSG
composantes:
- attributs:
impôt sur le revenu: non déductible
assiette: assiette CSG et CRDS
taux: 2.4%
- attributs:
impôt sur le revenu: déductible
assiette: assiette CSG déductible
taux: 6.8%
- attributs:
nom: heures supplémentaires défiscalisées
impôt sur le revenu: non déductible
assiette: assiette heures supplémentaires défiscalisées
taux: 6.8%
exemples:
- nom: 'CSG cadre'
situation:
@ -2410,6 +2460,8 @@
cotisations . assiette: 1500
complémentaire santé . forfait: 40
valeur attendue: 137.425
références:
heures supplémentaires: https://dsn-info.custhelp.com/app/answers/detail/a_id/2110
- espace: contrat salarié
nom: CRDS
@ -2420,8 +2472,9 @@
période: flexible
formule:
multiplication:
assiette: assiette CSG
assiette: assiette CSG et CRDS
taux: 0.5%
- espace: contrat salarié
nom: FNAL
titre: Contribution au Fonds National dAide au Logement
@ -2787,18 +2840,18 @@
exemples:
- nom: non applicable par défaut
situation:
salaire . brut de base: 2300
rémunération . brut de base: 2300
valeur attendue: 0
- nom: association non lucrative unipersonnelle
situation:
entreprise . association non lucrative: oui
salaire . brut de base: 2300
rémunération . brut de base: 2300
entreprise . effectif: 1
valeur attendue: 0
- nom: association non lucrative
situation:
entreprise . association non lucrative: oui
salaire . brut de base: 2300
rémunération . brut de base: 2300
entreprise . effectif: 10
complémentaire santé . forfait: 0
valeur attendue: 48.1
@ -3084,7 +3137,7 @@
Il s'agit du revenu net de cotisations et de charges, avant le paiement de l'impôt sur le revenu.
formule:
somme:
- contrat salarié . salaire . net
- contrat salarié . rémunération . net
- indépendant . revenu net de cotisations
- auto entrepreneur . revenu net de cotisations

View File

@ -1,33 +1,33 @@
- nom: CDI au salaire médian
situation:
contrat salarié . salaire . brut de base: 2300
situation:
contrat salarié . rémunération . brut de base: 2300
- nom: CDI au SMIC
situation:
contrat salarié . salaire . brut de base: 1500
situation:
contrat salarié . rémunération . brut de base: 1500
- nom: CDI au SMIC temps partiel 24h / semaine
situation:
contrat salarié . salaire . brut de base: 1030
situation:
contrat salarié . rémunération . brut de base: 1030
contrat salarié . temps partiel: oui
contrat salarié . temps partiel . heures par semaine: 24
- nom: CDI cadre salaire cadre médian
situation:
contrat salarié . salaire . brut de base: 3600
situation:
contrat salarié . rémunération . brut de base: 3600
contrat salarié . statut cadre: oui
- nom: CDD usage de 2 mois
situation:
contrat salarié . salaire . brut de base: 2300
situation:
contrat salarié . rémunération . brut de base: 2300
contrat salarié . type de contrat: CDD
contrat salarié . CDD . motif: 'classique . usage'
contrat salarié . CDD . durée: 2
- nom: CDD accroissement d'activité de 1 an
situation:
contrat salarié . salaire . brut de base: 2300
situation:
contrat salarié . rémunération . brut de base: 2300
contrat salarié . type de contrat: CDD
contrat salarié . CDD . motif: 'classique . accroissement activité'
contrat salarié . CDD . durée: 12

View File

@ -547,7 +547,7 @@ contrat salarié . cotisations . assiette:
contrat salarié . salaire:
titre.en: salary
titre.fr: salaire
contrat salarié . salaire . brut de base:
contrat salarié . rémunération . brut de base:
titre.en: Gross salary
titre.fr: Salaire brut de base
résumé.en: Written in the employment contract
@ -611,7 +611,7 @@ contrat salarié . salaire . brut de base:
message: >
Le salaire mensuel saisi est élevé. Ne vous êtes-vous pas trompé de
période de calcul ?
contrat salarié . salaire . brut de base . équivalent temps plein:
contrat salarié . rémunération . brut de base . équivalent temps plein:
titre.en: Full-time equivalent gross salary
titre.fr: Salaire brut équivalent temps plein
résumé.en: Salary if hired on a full-time basis
@ -624,7 +624,7 @@ contrat salarié . salaire . brut de base . équivalent temps plein:
suggestions.fr:
salaire médian: 2300
SMIC: 1522
contrat salarié . salaire . brut:
contrat salarié . rémunération . brut:
titre.en: gross salary with benefits
titre.fr: Salaire brut
description.en: >
@ -633,9 +633,6 @@ contrat salarié . salaire . brut:
description.fr: >
Toutes les sommes versées au salarié sous forme monétaire en échange de son
travail.
contrat salarié . rémunération . brut:
titre.en: Gross remuneration
titre.fr: Rémunération brute
contrat salarié . avantages sociaux:
description.en: >-
These are the benefits paid by the employer. They are specific to the
@ -902,7 +899,7 @@ contrat salarié . prime d'impatriation:
sur le revenu.
titre.en: impatriation bonus
titre.fr: prime d'impatriation
contrat salarié . salaire . net:
contrat salarié . rémunération . net:
titre.en: Net salary
titre.fr: Salaire net
question.en: What is the net salary?
@ -927,7 +924,7 @@ contrat salarié . salaire . net:
Cette somme peut varier en fonction de décisions politiques (augmentation ou
diminution des cotisations) alors que le salaire brut est contractuel (pour
le changer, il faut signer un avenant au contrat).
contrat salarié . salaire . net après impôt:
contrat salarié . rémunération . net après impôt:
titre.en: Net salary after income tax
titre.fr: Salaire net après impôt
résumé.en: Transfered on the bank account

View File

@ -60,4 +60,4 @@
- nom: revenu net après impôt
période: flexible
formule: contrat salarié . salaire . net après impôt + dividendes . net
formule: contrat salarié . rémunération . net après impôt + dividendes . net

View File

@ -110,7 +110,7 @@ const répartition = (analysis): ?Répartition => {
)
const getRule = getRuleFromAnalysis(analysis),
salaireNet = getRule('contrat salarié . salaire . net'),
salaireNet = getRule('contrat salarié . rémunération . net'),
salaireChargé = getRule('contrat salarié . rémunération . total'),
réductionsDeCotisations = getRule(
'contrat salarié . cotisations . patronales . réductions de cotisations'

View File

@ -1,8 +1,8 @@
// Page listing the engine's currently implemented mecanisms and their tests
import { React, T } from 'Components'
import withColours from 'Components/utils/withColours'
import { analyseMany } from 'Engine/traverse'
import { compose } from 'ramda'
import { React, T } from 'Components'
import emoji from 'react-easy-emoji'
import { connect } from 'react-redux'
import examples from 'Règles/cas-types.yaml'
@ -53,7 +53,7 @@ const Example = compose(
figures = [
total,
do {
let dottedName = 'contrat salarié . salaire . brut de base'
let dottedName = 'contrat salarié . rémunération . brut de base'
;({
dottedName,
nodeValue: situation[dottedName],

View File

@ -1,9 +1,9 @@
import { expect } from 'chai'
import dedent from 'dedent-js'
import { enrichRule } from 'Engine/rules'
import { safeLoad } from 'js-yaml'
import { rules as realRules } from '../source/engine/rules'
import { analyse, analyseMany, parseAll } from '../source/engine/traverse'
import dedent from 'dedent-js'
import { safeLoad } from 'js-yaml'
describe('bug-analyse-many', function() {
it('complex inversion with composantes', () => {
@ -11,8 +11,8 @@ describe('bug-analyse-many', function() {
- nom: net
formule: brut - cotisations
- nom: cotisations
formule:
somme:
formule:
somme:
- cotisation a [salarié]
- cotisation b
@ -27,7 +27,7 @@ describe('bug-analyse-many', function() {
- attributs:
par: salarié
taux: 10%
- nom: cotisation b
formule:
multiplication:
@ -79,7 +79,7 @@ describe('bug-analyse-many', function() {
}[dottedName])
const rules = parseAll(realRules.map(enrichRule))
const targets = [
'contrat salarié . salaire . brut de base',
'contrat salarié . rémunération . brut de base',
'contrat salarié . cotisations . salariales'
]
const analyseManyValue = analyseMany(rules, targets)(situationSelector)

View File

@ -384,11 +384,11 @@ describe('nextSteps', function() {
({
'contrat salarié': 'oui',
'contrat salarié . CDD': 'oui',
'contrat salarié . salaire . brut de base': '2300'
'contrat salarié . rémunération . brut de base': '2300'
}[name])
let rules = parseAll(realRules.map(enrichRule)),
analysis = analyse(rules, 'contrat salarié . salaire . net')(
analysis = analyse(rules, 'contrat salarié . rémunération . net')(
stateSelector
),
result = collectMissingVariables(analysis.targets)

View File

@ -218,11 +218,11 @@ describe('inversions', () => {
})
it('should collect missing variables not too slowly', function() {
let stateSelector = name =>
({ 'contrat salarié . salaire . net': '2300' }[name])
({ 'contrat salarié . rémunération . net': '2300' }[name])
let rules = parseAll(realRules.map(enrichRule)),
analysis = analyseMany(rules, [
'contrat salarié . salaire . brut',
'contrat salarié . rémunération . brut',
'contrat salarié . rémunération . total'
])(stateSelector)

View File

@ -5,7 +5,7 @@ import sasuRules from '../source/règles/sasu.yaml'
describe('library', function() {
it('should evaluate one target with no input data', function() {
let target = 'contrat salarié . salaire . net'
let target = 'contrat salarié . rémunération . net'
let value = Syso.evaluate(target, {
'contrat salarié': { salaire: { 'brut de base': 2300 } }
})
@ -33,13 +33,13 @@ describe('library', function() {
formule: 1
- nom: ya
période: flexible
formule: contrat salarié . salaire . net + yo
formule: contrat salarié . rémunération . net + yo
`
let value = Syso.evaluate(
'ya',
{
'contrat salarié . salaire . brut de base': 2300
'contrat salarié . rémunération . brut de base': 2300
},
{ extra: rules }
)
@ -57,7 +57,7 @@ describe('library', function() {
)
let salaireNetAprèsImpôt = Syso.evaluate(
'contrat salarié . salaire . net après impôt',
'contrat salarié . rémunération . net après impôt',
{
'contrat salarié': { rémunération: { total: salaireTotal } }
}
@ -66,7 +66,7 @@ describe('library', function() {
let [revenuDisponible, dividendes] = Syso.evaluate(
['revenu net après impôt', 'dividendes . net'],
{
'contrat salarié . salaire . net après impôt': salaireNetAprèsImpôt,
'contrat salarié . rémunération . net après impôt': salaireNetAprèsImpôt,
'chiffre affaires': CA
},
{ extra: sasuRules }

View File

@ -107,7 +107,7 @@ describe('misc', function() {
let pathMap = nestedSituationToPathMap(values)
expect(pathMap).to.have.property(
'contrat salarié . salaire . brut de base',
'contrat salarié . rémunération . brut de base',
'2300'
)
})