Ejemplo n.º 1
0
 def test_NAMESPACE_moduleparse_fileparse(self):
     #item 259
     import xpld
     objet_xpld = xpld.xpld()
     #item 262
     import argparse
     #item 263
     import module_parse_xpld
     #item 261
     
     
     # le fichier 
     # comme param de argparse
     parsed2 = argparse.Namespace()
     parsed2.gui = False
     parsed2.file = True
     parsed2.filer = "2016.bak"
     parsed2.filew = "2016.ras"
     #parsed2.jours = None
     #parsed2.mois = None
     #parsed2.annee = None
     #parsed2.poste = None
     parse_jours2 = parsed2
     #parse_module_jours2 = module_parse_xpld.parse(['-f',"2016.bak"])
     parse_module_jours2 = module_parse_xpld.parse(['file',"-r","2016.bak", "-w", "2016.ras"])
     self.assertEqual(parse_jours2, parse_module_jours2)
Ejemplo n.º 2
0
 def test_EXTRACT_get_poste(self):
     #item 163
     import xpld
     ligne = "1,2,3 1 2016 P1"
     poste_voulu = "P1"
     poste_obtenu = xpld.xpld().get_poste(ligne)
     self.assertEqual(poste_voulu,poste_obtenu)
Ejemplo n.º 3
0
 def test_DOMAINE_mois_valide(self):
     #item 197
     import xpld
     objet_xpld = xpld.xpld()
     #item 198
     self.assertEqual(objet_xpld.validate_month("1"),True)
     
     self.assertEqual(objet_xpld.validate_month("12"),True)
Ejemplo n.º 4
0
 def test_DOMAINE_mois_invalide_oob(self):
     #item 204
     import xpld
     objet_xpld = xpld.xpld()
     #item 205
     
     
     self.assertEqual(objet_xpld.validate_month("13"),False)
Ejemplo n.º 5
0
 def test_DOMAINE_mois_invalide_notmonth(self):
     #item 211
     import xpld
     objet_xpld = xpld.xpld()
     #item 212
     
     
     self.assertEqual(objet_xpld.validate_month("aaa"),False)
Ejemplo n.º 6
0
 def test_DOMAINE_annee_valide(self):
     #item 218
     import xpld
     objet_xpld = xpld.xpld()
     #item 219
     
     self.assertEqual(objet_xpld.validate_year("aaa"),False)
     self.assertEqual(objet_xpld.validate_year("2012"),True)
     self.assertEqual(objet_xpld.validate_year("1998"),False)
     self.assertEqual(objet_xpld.validate_year("2022"),False)
Ejemplo n.º 7
0
 def test_DOMAINE_poste_invalide_notinpostekeys(self):
     #item 172
     import xpld
     objet_xpld = xpld.xpld()
     #item 174
     ligne = "1,2,3 1 2016 P1"
     ligne_no_poste = "1,2 1 2016"
     ligne_cp = "1,2,3 1 2016 CP"
     # verif du domaine du type ligne : type jours + type mois + type annee + type poste:
     
     self.assertRaises(ValueError,objet_xpld.validate_poste,"XK")
Ejemplo n.º 8
0
 def test_DOMAINE_valider_ligne(self):
     #item 225
     import xpld
     objet_xpld = xpld.xpld()
     #item 226
     ligne = "1,2,3 1 2016 P1"
     ligne_no_poste = "1,2 1 2016"
     ligne_cp = "1,2,3 1 2016 CP"
     ligne_valide_un_seul_jour_pour_ce_poste = "1 2 2016 P1"
     # verif du domaine du type ligne : type jours + type mois + type annee + type poste:
             
     self.assertEqual(objet_xpld.valider_ligne(ligne), True)
     self.assertEqual(objet_xpld.valider_ligne(ligne_cp), True)
     self.assertEqual(objet_xpld.valider_ligne(ligne_no_poste), False)
     self.assertEqual(objet_xpld.valider_ligne(ligne_valide_un_seul_jour_pour_ce_poste), True)
Ejemplo n.º 9
0
 def test_DOMAINE_poste_valide(self):
     #item 190
     import xpld
     objet_xpld = xpld.xpld()
     #item 191
     self.assertEqual(objet_xpld.validate_poste("P1"),True)
     self.assertEqual(objet_xpld.validate_poste("P2"),True)
     self.assertEqual(objet_xpld.validate_poste("P3"),True)
     self.assertEqual(objet_xpld.validate_poste("P4"),True)
     self.assertEqual(objet_xpld.validate_poste("P5"),True)
     self.assertEqual(objet_xpld.validate_poste("P6"),True)
     self.assertEqual(objet_xpld.validate_poste("P7"),True)
     self.assertEqual(objet_xpld.validate_poste("R1"),True)
     self.assertEqual(objet_xpld.validate_poste("RCP"),True)
     self.assertEqual(objet_xpld.validate_poste("AM"),True)
Ejemplo n.º 10
0
 def test_EXTRACT_get_divers(self):
     #item 232
     
     ligne = "1,2,3 1 2016 P1"
     #item 234
     import xpld
     objet_xpld = xpld.xpld()
     #item 233
     
     # verif des differentes extractions jours, mois, annee, poste
     self.assertEqual(objet_xpld.split_virg("1,2,3"),[1,2,3])
     self.assertEqual(objet_xpld.get_days(ligne),"1,2,3")
     self.assertEqual(objet_xpld._get_split_or_die(ligne,'jours'),"1,2,3")
     self.assertEqual(objet_xpld.get_month(ligne),1)
     self.assertEqual(objet_xpld.get_year(ligne),2016)
     self.assertEqual(objet_xpld.get_poste(ligne),"P1")
Ejemplo n.º 11
0
 def test_EXTRACT_xplode(self):
     #item 242
     import xpld
     objet_xpld = xpld.xpld()
     #item 240
     
     ligne = "1,2,3 1 2016 P1"
     #item 241
     
     
     
     # verif utilitaire reel version en une fois
     self.assertEqual(objet_xpld.xplode(ligne),[{'day': 1, 'month':1, 'year':2016, 'poste' : 'P1'},
     {'day': 2, 'month':1, 'year':2016, 'poste': 'P1'},{'day': 3, 'month':1, 'year':2016, 'poste' : 'P1'}])
     # verif utilitaire reel version iterateur
     ite = objet_xpld.xplode_ite(ligne)
     for i in [1,2,3]:
         self.assertEqual(next(ite), {'day':i, 'month' : 1, 'year': 2016, 'poste': 'P1'})
Ejemplo n.º 12
0
 def test_NAMESPACE_moduleparse_subligne(self):
     #item 180
     import xpld
     objet_xpld = xpld.xpld()
     #item 184
     
     
     
     import argparse
     parsed = argparse.Namespace()
     
     
     parsed.file = False
     parsed.jours = "1,2,3"
     parsed.mois = "1"
     parsed.annee = "2016"
     parsed.poste = "P1"
     parsed.gui   = False
     
     #test de module_parse_xpld
     import module_parse_xpld
     parse_jours = parsed
     parse_module_jours = module_parse_xpld.parse(['ligne','1,2,3','1','2016','P1'])
     self.assertEqual(parse_jours, parse_module_jours)
Ejemplo n.º 13
0
 def gen_tuple_entree_ite(self):
     import xpld
     for ligne_fichier in self.getBdd().iterLignesFichiersPostes():
         for ligne_poste in xpld.xpld().xplode_ite(ligne_fichier):
             yield Entree(ligne_poste).to_tuple()
Ejemplo n.º 14
0
import constantes
from db import bdd
from itertools import islice
""" je veux une fonction pour mon larbin
- ouvrant un fichier texte,
- explosant chaque ligne,
- transformant chaque ligne explosee en un poste via:
   * la creation d un horodatage de début
      i. par la combinaison d une date et d une heure:
         - la date etant annee mois et jour de début de poste
         - le début de poste dépendant du type de poste:
             * le type de poste est lu dans le fichier texte à destination du larbin
             * la correspondance entre type de poste et heure de début
                se fait à partir de la lecture de constantes.py
    * la creation d un horodatage de fin
      i . par l ajout à l horodatage de début de poste d une duree
        - la duree dépend du type de poste:
          * le type de poste est lu dans le fichier texte à destination du larbin
          * la correspondance entre type de poste et duree se lit dans constantes.py
    * la creation d un type d entree dans le planning lu dans constantes.py
    * la création d une categorie d entree lu dans constantes.py: travail ou absence"""

with open(next(bdd().iterFichiersPostes())) as f:
    for ligne in f:
        for ligne_poste in xpld.xpld().xplode_ite(ligne):
            print(ligne_poste)
##			datetime_debutposte = datetime.datetime.combine(
##				datetime.date(ligne_poste['year'], ligne_poste['month'], ligne_poste['day']),
##				datetime.time(ligne_poste)
##