Listing du fichier chainesTest.php
00001<?php
00002 error_reporting(E_ALL | E_NOTICE ) ;
00003 require 'tripn-chaines.php';
00004
00005 use PHPUnit\Framework\TestCase;
00006
00007 class ChainesTest extends TestCase {
00008
00009 private $chaine1, $chaine2, $chaine3 ;
00010
00011 ## ------------------------------------------------------------------------------
00012
00013 # 1. l'initialisation/instanciation doit produire une chaine vide
00014
00015 public function test_GetChaine() {
00016 $chaine1 = new Chaine() ;
00017 $result = $chaine1->getChaine() ;
00018 $this->assertEquals("", $result) ;
00019 } # fin de fonction test_GetChaine
00020
00021 ## ------------------------------------------------------------------------------
00022
00023 # 2.1 le nombre de mots fonctionne avec des espaces
00024
00025 public function test_NbMots_1() {
00026 $chaine2 = new Chaine("un test simple") ;
00027 $result = $chaine2->nbmots() ;
00028 $this->assertEquals(3, $result) ;
00029 } # fin de fonction test_NbMots_1
00030
00031 # 2.2 le nombre de mots ne tient pas compte des espaces de début ou de fin
00032
00033 public function test_NbMots_2() {
00034
00035 $chaine1 = new Chaine(" un test simple") ;
00036 $result = $chaine1->nbmots() ;
00037 $this->assertEquals(3, $result) ;
00038
00039
00040 $chaine2 = new Chaine("un test simple ") ;
00041 $result = $chaine2->nbmots() ;
00042 $this->assertEquals(3, $result) ;
00043
00044 $chaine3 = new Chaine(" un test simple ") ;
00045 $result = $chaine2->nbmots() ;
00046 $this->assertEquals(3, $result) ;
00047
00048 } # fin de fonction test_NbMots_2
00049
00050 # 2.3 le nombre de mots ne supprime pas la ponctuation
00051
00052 public function test_NbMots_3() {
00053
00054 $chaine1 = new Chaine("php test.php --x=2 un test simple") ;
00055 $result = $chaine1->nbmots() ;
00056 $this->assertEquals(6, $result) ;
00057
00058 $chaine2 = new Chaine("un. test; simple. Dommage !") ;
00059 $result = $chaine2->nbmots() ;
00060 $this->assertEquals(5, $result) ;
00061
00062 } # fin de fonction test_NbMots_3
00063
00064 # 2.4 il y a zéro mots dans la chaine vide
00065
00066 public function test_NbMots_4() {
00067
00068 $chaine1 = new Chaine("") ;
00069 $result = $chaine1->nbmots() ;
00070 $this->assertEquals(0, $result) ;
00071
00072 } # fin de fonction test_NbMots_4
00073
00074 ## ------------------------------------------------------------------------------
00075
00076 # 3.1 la fonction mot commence à compter à l'indice 1
00077
00078 public function test_Mot_1() {
00079
00080 $chaine1 = new Chaine("le chat mange la souris") ;
00081 $result = $chaine1->mot(1) ;
00082 $this->assertEquals("le", $result) ;
00083
00084 } # fin de fonction test_Mot_1
00085
00086 # 3.2 le mot numéro 0 (ou un nombre négatif) est la chaine vide
00087
00088 public function test_Mot_2() {
00089
00090 $chaine1 = new Chaine("le chat mange la souris") ;
00091 $result = $chaine1->mot(0) ;
00092 $this->assertEquals("", $result) ;
00093
00094 $chaine2 = new Chaine("le chat mange la souris") ;
00095 $result = $chaine2->mot(-4) ;
00096 $this->assertEquals("", $result) ;
00097
00098 } # fin de fonction test_Mot_2
00099
00100 # 3.3 le mot numéro x dans p où x est supérieur au nombre de mots de p est la chaine vide
00101
00102 public function test_Mot_3() {
00103
00104 $chaine1 = new Chaine("le chat mange la souris") ;
00105 $result = $chaine1->mot(5) ;
00106 $this->assertEquals("souris", $result) ;
00107
00108 $chaine2 = new Chaine("le chat mange la souris") ;
00109 $result = $chaine2->mot(10) ;
00110 $this->assertEquals("", $result) ;
00111
00112 } # fin de fonction test_Mot_3
00113
00114 ## ------------------------------------------------------------------------------
00115
00116 # 4.1 la fonction initialeMajuscule renvoie vide pour une chaine vide
00117
00118 public function test_initialeMajuscule_1() {
00119
00120 $chaine1 = new Chaine("") ;
00121 $result = $chaine1->initialeMajuscule() ;
00122 $this->assertEquals("", $result) ;
00123
00124 } # fin de fonction test_initialeMajuscule_1
00125
00126 # 4.2 la fonction initialeMajuscule retire les espaces de tete et de fin
00127
00128 public function test_initialeMajuscule_2() {
00129
00130 $chaine1 = new Chaine(" voilà") ;
00131 $result = $chaine1->initialeMajuscule() ;
00132 $this->assertEquals("Voilà", $result) ;
00133
00134 } # fin de fonction test_initialeMajuscule_2
00135
00136 # 4.3 avec la fonction initialeMajuscule seule l'initiale est en majuscules
00137
00138 public function test_initialeMajuscule_3() {
00139
00140 $chaine1 = new Chaine("essai") ;
00141 $result = $chaine1->initialeMajuscule() ;
00142 $this->assertEquals("Essai", $result) ;
00143
00144 $chaine2 = new Chaine("un essai") ;
00145 $result = $chaine2->initialeMajuscule() ;
00146 $this->assertEquals("Un essai", $result) ;
00147
00148 $chaine3 = new Chaine(" un essai") ;
00149 $result = $chaine3->initialeMajuscule() ;
00150 $this->assertEquals("Un essai", $result) ;
00151
00152 } # fin de fonction test_initialeMajuscule_3
00153
00154 ## ------------------------------------------------------------------------------
00155
00156 # 5.1 la fonction initialeMajusculePrenom renvoie vide pour une chaine vide
00157
00158 public function test_initialeMajusculePrenom_1() {
00159
00160 $chaine1 = new Chaine("") ;
00161 $result = $chaine1->initialeMajusculePrenom() ;
00162 $this->assertEquals("", $result) ;
00163
00164 } # fin de fonction test_initialeMajuscule_1
00165
00166 # 5.2 la fonction initialeMajusculePrenom retire les espaces de tete et de fin
00167
00168 public function test_initialeMajusculePrenom_2() {
00169
00170 $chaine1 = new Chaine(" voilà") ;
00171 $result = $chaine1->initialeMajusculePrenom() ;
00172 $this->assertEquals("Voilà", $result) ;
00173
00174 } # fin de fonction test_initialeMajusculePrenom_2
00175
00176 # 5.3 avec la fonction initialeMajusculePrenom seule l'initiale est en majuscules
00177
00178 public function test_initialeMajusculePrenom_3() {
00179
00180 $chaine1 = new Chaine("essai") ;
00181 $result = $chaine1->initialeMajusculePrenom() ;
00182 $this->assertEquals("Essai", $result) ;
00183
00184 $chaine2 = new Chaine("Jean pierre") ;
00185 $result = $chaine2->initialeMajusculePrenom() ;
00186 $this->assertEquals("Jean Pierre", $result) ;
00187
00188 $chaine3 = new Chaine("anne-marie") ;
00189 $result = $chaine3->initialeMajusculePrenom() ;
00190 $this->assertEquals("Anne-Marie", $result) ;
00191
00192 } # fin de fonction test_initialeMajusculePrenom_3
00193
00194 } # fin de classe ChainesTest
00195
00196 ?>
Pour ne pas voir les numéros de ligne, ajoutez &nl=non à la suite du nom du fichier.
Retour à la page principale de (gH)