diff --git a/modele-social/règles/impôt.yaml b/modele-social/règles/impôt.yaml index b5eb55141..27156a540 100644 --- a/modele-social/règles/impôt.yaml +++ b/modele-social/règles/impôt.yaml @@ -337,7 +337,10 @@ impôt . foyer fiscal . nombre de parts . majoration personne veuve avec enfant: impôt . foyer fiscal . taux effectif: unité: '%' - formule: impôt à payer / revenu imposable + variations: + - si: impôt à payer = 0 + alors: 0% + - sinon: impôt à payer / revenu imposable impôt . foyer fiscal . revenu imposable: diff --git a/mon-entreprise/source/components/CurrencyInput/CurrencyInput.tsx b/mon-entreprise/source/components/CurrencyInput/CurrencyInput.tsx index 082ceab20..96c02b853 100644 --- a/mon-entreprise/source/components/CurrencyInput/CurrencyInput.tsx +++ b/mon-entreprise/source/components/CurrencyInput/CurrencyInput.tsx @@ -24,7 +24,9 @@ export default function CurrencyInput({ dottedName, ...forwardedProps }: CurrencyInputProps) { - const valueProp = value ?? '' + const valueProp = + typeof value === 'number' && Number.isNaN(value) ? '' : value ?? '' + const [initialValue, setInitialValue] = useState(valueProp) const [currentValue, setCurrentValue] = useState(valueProp) diff --git a/mon-entreprise/test/regressions/__snapshots__/simulations.jest.js.snap b/mon-entreprise/test/regressions/__snapshots__/simulations.jest.js.snap index 8d220e426..59658ed08 100644 --- a/mon-entreprise/test/regressions/__snapshots__/simulations.jest.js.snap +++ b/mon-entreprise/test/regressions/__snapshots__/simulations.jest.js.snap @@ -228,6 +228,16 @@ exports[`calculate simulations-indépendant: cotisations minimales 1`] = `"[1372 exports[`calculate simulations-indépendant: cotisations minimales 2`] = `"[246,146,100,104,0,100,0,246]"`; +exports[`calculate simulations-indépendant: imposition à l'IS 1`] = ` +"[100000,30104,69896,72608,12997,56899,0,100000] +Notifications affichées : entreprise . chiffre d'affaires . franchise de TVA dépassée . notification" +`; + +exports[`calculate simulations-indépendant: imposition à l'IS 2`] = ` +"[100000,30104,69896,72608,15122,54774,0,100000] +Notifications affichées : entreprise . chiffre d'affaires . franchise de TVA dépassée . notification, entreprise . imposition . IS . information sur le report de déficit" +`; + exports[`calculate simulations-indépendant: impôt sur le revenu 1`] = `"[29084,9084,20000,20787,603,19397,0,29084]"`; exports[`calculate simulations-indépendant: impôt sur le revenu 2`] = `"[73023,23023,50000,51980,8213,41787,0,73023]"`; diff --git a/mon-entreprise/test/regressions/simulations-indépendant.yaml b/mon-entreprise/test/regressions/simulations-indépendant.yaml index a91152e1f..ec1e495c5 100644 --- a/mon-entreprise/test/regressions/simulations-indépendant.yaml +++ b/mon-entreprise/test/regressions/simulations-indépendant.yaml @@ -70,3 +70,12 @@ Contrats Madelin: dirigeant . indépendant . contrats madelin: oui dirigeant . indépendant . contrats madelin . mutuelle: 1500 €/an dirigeant . indépendant . contrats madelin . retraite: 5000 €/an + + +imposition à l'IS : + - entreprise . chiffre d'affaires: 100000 €/an + entreprise . imposition: "'IS'" + - entreprise . chiffre d'affaires: 100000 €/an + entreprise . imposition: "'IS'" + impôt . méthode de calcul: "'barème standard'" + \ No newline at end of file