17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

416<br />

Techniques avancées<br />

QUATRIÈME PARTIE<br />

NORMALIZE_WHITESPACE : normalise les espaces dans la comparaison du résultat.<br />

Ce drapeau est relativement utile lorsque l’on souhaite tester un retour de fonction<br />

composé de beaucoup d’espaces, comme les séquences HTML. doctest<br />

compare ' '.join(attendu.split()) et ' '.join(obtenu.split()) en lieu et<br />

place de attendu et obtenu.<br />

Normalisation des espaces<br />

def html_bloc():<br />

r"""<br />

>>> html_bloc() #doctest: +NORMALIZE_WHITESPACE<br />

'\n \n test\n \n '<br />

"""<br />

html = """<br />

<br />

test<br />

<br />

"""<br />

return html<br />

ELLIPSIS<br />

Vu dans la section précédente pour les adresses mémoire, ce marqueur permet de<br />

remplacer une séquence de caractères, et correspond à une chaîne indéfinie de caractères.<br />

Ellipsis<br />

def ellipsis():<br />

"""<br />

>>> ellipsis() #doctest: +ELLIPSIS<br />

'a...j'<br />

>>> ellipsis() #doctest: +ELLIPSIS<br />

'abc...'<br />

>>> ellipsis() #doctest: +ELLIPSIS<br />

'...ij'<br />

"""<br />

return 'abcdefghij'<br />

IGNORE_EXCEPTION_DETAIL<br />

Permet d’ignorer le texte complet renvoyé par une exception et de se contenter de<br />

comparer uniquement le type d’erreur. Ce marqueur est conseillé pour ne pas<br />

dépendre de la pile d’appel ou du texte de l’erreur, susceptible de changer.<br />

doctest extrait le message d’erreur minimal, à savoir :<br />

la première ligne : Traceback (most recent call last):

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!