['poste' => 'x', 'type' => $t, 'date_debut' => $d, 'date_fin' => $f, 'technologies' => $tech]; verifier('poste terminé : mois de fin compté', Import::moisExperience([$exp('2020-01', '2020-12')], $auj) === 12); verifier('chevauchement fusionné', Import::moisExperience([$exp('2020-01', '2020-12'), $exp('2020-07', '2021-06')], $auj) === 18); verifier('périodes disjointes additionnées', Import::moisExperience([$exp('2018-01', '2018-12'), $exp('2020-01', '2020-12')], $auj) === 24); verifier('stage exclu', Import::moisExperience([$exp('2020-01', '2020-06', 'stage')], $auj) === 0); verifier('alternance comptée', Import::moisExperience([$exp('2020-01', '2020-06', 'alternance')], $auj) === 6); verifier('poste en cours : jusqu\'au dernier mois complet', Import::moisExperience([$exp('2026-01', null)], $auj) === 9); verifier('fin dans le futur plafonnée', Import::moisExperience([$exp('2026-01', '2030-12')], $auj) === 10); verifier('année seule', Import::moisExperience([$exp('2015', '2016')], $auj) === 13); verifier('filtre par technologie, casse ignorée', Import::moisExperience([$exp('2020-01', '2020-12', 'emploi', ['Java']), $exp('2021-01', '2021-12', 'emploi', ['PHP'])], $auj, 'java') === 12); verifier('3,9 ans : junior', Import::niveau(3.9) === 'junior'); verifier('4 ans : intermédiaire', Import::niveau(4.0) === 'intermediaire'); verifier('7,9 ans : intermédiaire', Import::niveau(7.9) === 'intermediaire'); verifier('8 ans : confirmé', Import::niveau(8.0) === 'confirme'); verifier('12 ans : expert', Import::niveau(12.0) === 'expert'); echo "$ok réussis, $ko échoués\n"; exit($ko > 0 ? 1 : 0);