Example #1
0
    public function testSave()
    {
        $florence_eleve = EleveQuery::create()->findOneByLogin('Florence Michu');
        $lebesgue_prof = UtilisateurProfessionnelQuery::create()->findOneByLogin('Lebesgue');
        $saisie = new AbsenceEleveSaisie();
        $saisie->setEleve($florence_eleve);
        $saisie->setUtilisateurProfessionnel($lebesgue_prof);
        $saisie->setDebutAbs(SAMEDI_5a_s39j6.' 08:00:00');
        try {
            $saisie->save();
            $this->fail('Une exception doit être soulevée lors de cette sauvegarde');
        } catch (Exception $e) {
            $this->assertTrue(true);
        }

        AbsenceEleveSaisiePeer::disableAgregation();
        $florence_eleve = EleveQuery::create()->findOneByLogin('Florence Michu');
        $lebesgue_prof = UtilisateurProfessionnelQuery::create()->findOneByLogin('Lebesgue');
        $saisie = new AbsenceEleveSaisie();
        $saisie->setEleve($florence_eleve);
        $saisie->setUtilisateurProfessionnel($lebesgue_prof);
        $saisie->setDebutAbs(MARDI_s38j2.' 08:00:00');
        $saisie->setFinAbs(MARDI_s38j2.' 09:00:00');
        $saisie->save();
        $decompte = AbsenceAgregationDecompteQuery::create()->filterByEleve($florence_eleve)->filterByDateDemiJounee(MARDI_s38j2.'')->findOne();
        $this->assertTrue($decompte == null || $decompte->getManquementObligationPresence() == false);
         
        AbsenceEleveSaisiePeer::enableAgregation();
        $florence_eleve = EleveQuery::create()->findOneByLogin('Florence Michu');
        $lebesgue_prof = UtilisateurProfessionnelQuery::create()->findOneByLogin('Lebesgue');
        $saisie = new AbsenceEleveSaisie();
        $saisie->setEleve($florence_eleve);
        $saisie->setUtilisateurProfessionnel($lebesgue_prof);
        $saisie->setDebutAbs(MERCREDI_s38j3.' 08:00:00');
        $saisie->setFinAbs(MERCREDI_s38j3.' 09:00:00');
        $saisie->save();
        $decompte = AbsenceAgregationDecompteQuery::create()->filterByEleve($florence_eleve)->filterByDateDemiJounee(MERCREDI_s38j3.'')->findOne();
        $this->assertTrue($decompte->getManquementObligationPresence());
        $saisie->setFinAbs(MERCREDI_s38j3.' 08:10:00');
        $saisie->save();
        $decompte = AbsenceAgregationDecompteQuery::create()->filterByEleve($florence_eleve)->filterByDateDemiJounee(MERCREDI_s38j3.'')->findOne();
        $this->assertFalse($decompte->getManquementObligationPresence());
        AbsenceEleveSaisiePeer::disableAgregation();
    }
Example #2
0
 /**
  * This is run before each unit test; it empties the database.
  */
 protected function setUp()
 {
     GepiDataPopulator::depopulate($this->con);
     mysqli_query($GLOBALS["mysqli"], 'delete from setting');
     mysqli_query($GLOBALS["mysqli"], 'delete from droits');
     mysqli_query($GLOBALS["mysqli"], 'delete from droits_aid');
     mysqli_query($GLOBALS["mysqli"], 'delete from aid_productions');
     mysqli_query($GLOBALS["mysqli"], 'delete from edt_setting');
     mysqli_query($GLOBALS["mysqli"], 'delete from lettres_tcs');
     mysqli_query($GLOBALS["mysqli"], 'delete from etiquettes_formats');
     mysqli_query($GLOBALS["mysqli"], 'delete from lettres_types');
     mysqli_query($GLOBALS["mysqli"], 'delete from lettres_cadres');
     mysqli_query($GLOBALS["mysqli"], 'delete from ct_types_documents');
     mysqli_query($GLOBALS["mysqli"], 'delete from absences_motifs');
     mysqli_query($GLOBALS["mysqli"], 'delete from model_bulletin');
     mysqli_query($GLOBALS["mysqli"], 'delete from absences_actions');
     $fd = fopen(dirname(__FILE__) ."/../../../../sql/data_gepi.sql", "r");
     if (!$fd) {
         echo "Erreur : fichier sql/data_gepi.sql non trouve\n";
         die;
     }
     while (!feof($fd)) {
         $query = fgets($fd, 5000);
         $query = trim($query);
         if((substr($query,-1)==";")&&(substr($query,0,3)!="-- ")) {
             $reg = mysqli_query($GLOBALS["mysqli"], $query);
             if (!$reg) {
                 echo "ERROR : '$query' \n";
                 echo "Erreur retournée : ".mysqli_error($GLOBALS["mysqli"])."\n";
                 $result_ok = 'no';
             }
         }
     }
     fclose($fd);
      
     loadSettings();
     
     AbsenceEleveSaisiePeer::disableAgregation();
     AbsenceEleveTraitementPeer::disableAgregation();
     
     parent::setUp();
 }
Example #3
0
 public function testDelete()
 {
     $florence_eleve = EleveQuery::create()->findOneByLogin('Florence Michu');
     $florence_eleve->updateAbsenceAgregationTable();
     AbsenceEleveSaisiePeer::enableAgregation();
     AbsenceEleveTraitementPeer::enableAgregation();
     $traitement = new AbsenceEleveTraitement();
     $traitement->setAbsenceEleveType(AbsenceEleveTypeQuery::create()->filterByNom('Infirmerie')->findOne());
     $traitement->save();
     $traitement->addAbsenceEleveSaisie($florence_eleve->getAbsenceEleveSaisiesDuJour(VENDREDI_s40j5)->getFirst());
     $traitement->save();
     $decompte = AbsenceAgregationDecompteQuery::create()->filterByEleve($florence_eleve)->filterByDateDemiJounee(VENDREDI_s40j5)->findOne();
     $this->assertFalse($decompte->getManquementObligationPresence());
     $j_traitement_saisie = $traitement->getJTraitementSaisieEleves()->getFirst();
     $j_traitement_saisie->delete();
     $decompte->reload();
     $this->assertTrue($decompte->getManquementObligationPresence());
     
             
     AbsenceEleveTraitementPeer::disableAgregation();
     AbsenceEleveSaisiePeer::disableAgregation();
 }