- [x] [phpunit/tests/Database_delNumeric] Tests unitaire de delNumeric()

- [x] [Database] Mise a jour des methodes de Database
		- [x] [Database::check] Suite de l'implementation (couverture des types de la BDD actuelle: 100%)
		- [x] [Database::delNumeric] Prevention si oubli @oneDimension + ne supprime plus les indices numeriques associees a aucun indice textuel
- [x] [phpunit/tests/Database_check] Tests unitaire du checker
This commit is contained in:
xdrm-brackets 2016-02-12 20:49:03 +01:00
parent 2ced90d3bd
commit 8265406caf
10 changed files with 387 additions and 200 deletions

View File

@ -280,7 +280,6 @@
return true;
}testDatabaseChecker();
}//testDatabaseChecker();
?>

View File

@ -73,10 +73,11 @@
*
*/
public static function delNumeric($fetchData, $oneDimension=false){
$nextEquivalent = false; // Vaut VRAI si le prochain est peut-etre un equivalent numerique
/* [1] 2 dimensions
===============================================*/
if( !$oneDimension ){
if( !$oneDimension && is_array($fetchData[0]) ){
// on supprime les doublons des entrées (indice numérique)
for( $i = 0 ; $i < count($fetchData) ; $i++ ) // pour tout les utilisateurs
@ -85,8 +86,15 @@
if( !mb_detect_encoding($val, 'UTF-8') )
$fetchData[$i][$col] = utf8_encode($val);
if( is_int($col) ) // si l'indice est un entier
unset( $fetchData[$i][$col] ); // on le supprime
if( is_int($col) ){ // Si indice numerique
if( $nextEquivalent ) // Si suit un indice textuel
unset( $fetchData[$i][$col] ); // on supprime l'indice
$nextEquivalent = false; // Dans tous les cas, on dit que le prochain ne pourra pas etre supprime si numerique
}else // Si l'indice n'est pas un entier
$nextEquivalent = true; // On signale qu'il y aura peut etre un indice numerique suivant
}
/* [2] 1 dimensions
@ -99,8 +107,15 @@
if( !mb_detect_encoding($val, 'UTF-8') )
$fetchData[$i] = utf8_encode($val);
if( is_int($i) ) // si l'indice est un entier
unset( $fetchData[$i] ); // on le supprime
if( is_int($i) ){ // Si indice numerique
if( $nextEquivalent ) // Si suit un indice textuel
unset( $fetchData[$i] ); // on supprime l'indice
$nextEquivalent = false; // Dans tous les cas, on dit que le prochain ne pourra pas etre supprime si numerique
}else // Si l'indice n'est pas un entier
$nextEquivalent = true; // On signale qu'il y aura peut etre un indice numerique suivant
}
}
@ -139,33 +154,29 @@
/* (2) Utilisateur */
case 'user.code':
case 'machine.code':
return $checker && is_string($value) && preg_match('/^[\dA-F]{2}(\-[\dA-F]{2}){3,5}$/i', $value);
break;
case 'user.username': case 'user.lastname':
return $checker && is_string($value) && preg_match('/^[\w-]{3,30}$/i', $value);
case 'user.username':
case 'machine.name':
case 'group.name':
return $checker && is_string($value) && preg_match('/^[\w-]{1,30}$/i', $value);
break;
case 'user.firstname': case 'user.lastname':
case 'user.firstname':
case 'user.lastname':
return $checker && is_string($value) && preg_match('/^[a-z -]{3,30}$/i', $value);
break;
case 'user.mail':
return $checker && is_string($value) && strlen($value) <= 50 && preg_match('/^[\w\.-]+@[\w\.-]+\.[a-z]{2,4}$/i', $value);
break;
case 'user.password':
return $checker && is_numeric($value) && preg_match('/^[\da-f]{40}$/i', $value);
return $checker && is_string($value) && preg_match('/^[\da-f]{40}$/i', $value);
break;
/* (3) Machine */
case 'groupe.nom':
return $checker && is_string($value) && preg_match('/^[a-z0-9 -]{1,10}$/i', $value);
break;
/* (4) Groupe */
case 'formation.code':
return $checker && is_string($value) && preg_match('/[\w]{0,10}/i', $value);
break;
case 'formation.nom':
return $checker && is_string($value) && preg_match('/[\w ]{0,100}/i', $value);
break;
}
return $checker;

View File

@ -49,18 +49,18 @@
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;1</div></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
<div class="bar" style="width: 20.00%;"></div>
</div>
</td>
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;5</div></td>
<td class="danger small"><div align="right">20.00%</div></td>
<td class="danger small"><div align="right">1&nbsp;/&nbsp;5</div></td>
<td class="danger small"><abbr title="Change Risk Anti-Patterns (CRAP) Index">CRAP</abbr></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 21.57%;"></div>
<td class="success big"> <div class="progress progress-success" style="width: 100px;">
<div class="bar" style="width: 71.43%;"></div>
</div>
</td>
<td class="danger small"><div align="right">21.57%</div></td>
<td class="danger small"><div align="right">11&nbsp;/&nbsp;51</div></td>
<td class="success small"><div align="right">71.43%</div></td>
<td class="success small"><div align="right">40&nbsp;/&nbsp;56</div></td>
</tr>
<tr>
@ -72,18 +72,18 @@
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;1</div></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
<div class="bar" style="width: 20.00%;"></div>
</div>
</td>
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;5</div></td>
<td class="danger small">1066.90</td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 21.57%;"></div>
<td class="danger small"><div align="right">20.00%</div></td>
<td class="danger small"><div align="right">1&nbsp;/&nbsp;5</div></td>
<td class="danger small">83.14</td>
<td class="success big"> <div class="progress progress-success" style="width: 100px;">
<div class="bar" style="width: 71.43%;"></div>
</div>
</td>
<td class="danger small"><div align="right">21.57%</div></td>
<td class="danger small"><div align="right">11&nbsp;/&nbsp;51</div></td>
<td class="success small"><div align="right">71.43%</div></td>
<td class="success small"><div align="right">40&nbsp;/&nbsp;56</div></td>
</tr>
<tr>
@ -138,37 +138,37 @@
</tr>
<tr>
<td class="danger" colspan="4">&nbsp;<a href="#75">delNumeric($fetchData, $oneDimension=false)</a></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
<td class="success" colspan="4">&nbsp;<a href="#75">delNumeric($fetchData, $oneDimension=false)</a></td>
<td class="success big"> <div class="progress progress-success" style="width: 100px;">
<div class="bar" style="width: 100.00%;"></div>
</div>
</td>
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;1</div></td>
<td class="danger small">90</td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
<td class="success small"><div align="right">100.00%</div></td>
<td class="success small"><div align="right">1&nbsp;/&nbsp;1</div></td>
<td class="success small">12</td>
<td class="success big"> <div class="progress progress-success" style="width: 100px;">
<div class="bar" style="width: 100.00%;"></div>
</div>
</td>
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;16</div></td>
<td class="success small"><div align="right">100.00%</div></td>
<td class="success small"><div align="right">23&nbsp;/&nbsp;23</div></td>
</tr>
<tr>
<td class="danger" colspan="4">&nbsp;<a href="#131">check($type, $value)</a></td>
<td class="danger" colspan="4">&nbsp;<a href="#146">check($type, $value)</a></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
</div>
</td>
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;1</div></td>
<td class="danger small">125.31</td>
<td class="warning big"> <div class="progress progress-warning" style="width: 100px;">
<div class="bar" style="width: 55.00%;"></div>
<td class="danger small">25.11</td>
<td class="success big"> <div class="progress progress-success" style="width: 100px;">
<div class="bar" style="width: 94.44%;"></div>
</div>
</td>
<td class="warning small"><div align="right">55.00%</div></td>
<td class="warning small"><div align="right">11&nbsp;/&nbsp;20</div></td>
<td class="success small"><div align="right">94.44%</div></td>
<td class="success small"><div align="right">17&nbsp;/&nbsp;18</div></td>
</tr>
@ -251,108 +251,119 @@
<tr><td><div align="right"><a name="73"></a><a href="#73">73</a></div></td><td class="codeLine"> *</td></tr>
<tr><td><div align="right"><a name="74"></a><a href="#74">74</a></div></td><td class="codeLine"> */</td></tr>
<tr><td><div align="right"><a name="75"></a><a href="#75">75</a></div></td><td class="codeLine"> public static function delNumeric($fetchData, $oneDimension=false){</td></tr>
<tr><td><div align="right"><a name="76"></a><a href="#76">76</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="77"></a><a href="#77">77</a></div></td><td class="codeLine"> /* [1] 2 dimensions</td></tr>
<tr><td><div align="right"><a name="78"></a><a href="#78">78</a></div></td><td class="codeLine"> ===============================================*/</td></tr>
<tr class="danger"><td><div align="right"><a name="79"></a><a href="#79">79</a></div></td><td class="codeLine"> if( !$oneDimension ){</td></tr>
<tr><td><div align="right"><a name="80"></a><a href="#80">80</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="81"></a><a href="#81">81</a></div></td><td class="codeLine"> // on supprime les doublons des entrées (indice numérique)</td></tr>
<tr class="danger"><td><div align="right"><a name="82"></a><a href="#82">82</a></div></td><td class="codeLine"> for( $i = 0 ; $i &lt; count($fetchData) ; $i++ ) // pour tout les utilisateurs</td></tr>
<tr class="danger"><td><div align="right"><a name="83"></a><a href="#83">83</a></div></td><td class="codeLine"> foreach($fetchData[$i] as $col =&gt; $val){ // pour toutes les entrées</td></tr>
<tr><td><div align="right"><a name="84"></a><a href="#84">84</a></div></td><td class="codeLine"></td></tr>
<tr class="danger"><td><div align="right"><a name="85"></a><a href="#85">85</a></div></td><td class="codeLine"> if( !mb_detect_encoding($val, 'UTF-8') )</td></tr>
<tr class="danger"><td><div align="right"><a name="86"></a><a href="#86">86</a></div></td><td class="codeLine"> $fetchData[$i][$col] = utf8_encode($val);</td></tr>
<tr><td><div align="right"><a name="87"></a><a href="#87">87</a></div></td><td class="codeLine"></td></tr>
<tr class="danger"><td><div align="right"><a name="88"></a><a href="#88">88</a></div></td><td class="codeLine"> if( is_int($col) ) // si l'indice est un entier</td></tr>
<tr class="danger"><td><div align="right"><a name="89"></a><a href="#89">89</a></div></td><td class="codeLine"> unset( $fetchData[$i][$col] ); // on le supprime</td></tr>
<tr class="danger"><td><div align="right"><a name="90"></a><a href="#90">90</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="91"></a><a href="#91">91</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="92"></a><a href="#92">92</a></div></td><td class="codeLine"> /* [2] 1 dimensions</td></tr>
<tr><td><div align="right"><a name="93"></a><a href="#93">93</a></div></td><td class="codeLine"> ===============================================*/</td></tr>
<tr class="danger"><td><div align="right"><a name="94"></a><a href="#94">94</a></div></td><td class="codeLine"> }else{</td></tr>
<tr><td><div align="right"><a name="95"></a><a href="#95">95</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="96"></a><a href="#96">96</a></div></td><td class="codeLine"> // on supprime les doublons des entrées (indice numérique)</td></tr>
<tr class="danger"><td><div align="right"><a name="97"></a><a href="#97">97</a></div></td><td class="codeLine"> foreach($fetchData as $i=&gt;$val){ // pour toutes les entrées</td></tr>
<tr><td><div align="right"><a name="98"></a><a href="#98">98</a></div></td><td class="codeLine"></td></tr>
<tr class="danger"><td><div align="right"><a name="99"></a><a href="#99">99</a></div></td><td class="codeLine"> if( !mb_detect_encoding($val, 'UTF-8') )</td></tr>
<tr class="danger"><td><div align="right"><a name="100"></a><a href="#100">100</a></div></td><td class="codeLine"> $fetchData[$i] = utf8_encode($val);</td></tr>
<tr><td><div align="right"><a name="101"></a><a href="#101">101</a></div></td><td class="codeLine"></td></tr>
<tr class="danger"><td><div align="right"><a name="102"></a><a href="#102">102</a></div></td><td class="codeLine"> if( is_int($i) ) // si l'indice est un entier</td></tr>
<tr class="danger"><td><div align="right"><a name="103"></a><a href="#103">103</a></div></td><td class="codeLine"> unset( $fetchData[$i] ); // on le supprime</td></tr>
<tr class="danger"><td><div align="right"><a name="104"></a><a href="#104">104</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="105"></a><a href="#105">105</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="106"></a><a href="#106">106</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="107"></a><a href="#107">107</a></div></td><td class="codeLine"></td></tr>
<tr class="danger"><td><div align="right"><a name="108"></a><a href="#108">108</a></div></td><td class="codeLine"> return $fetchData;</td></tr>
<tr><td><div align="right"><a name="109"></a><a href="#109">109</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="110"></a><a href="#110">110</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="111"></a><a href="#111">111</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="112"></a><a href="#112">112</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="113"></a><a href="#113">113</a></div></td><td class="codeLine"> ////////////////////////////////////////////////////////////////</td></tr>
<tr><td><div align="right"><a name="114"></a><a href="#114">114</a></div></td><td class="codeLine"> // _ __ _ _ _</td></tr>
<tr><td><div align="right"><a name="115"></a><a href="#115">115</a></div></td><td class="codeLine"> // __ _____ _ __(_)/ _(_) ___ __ _| |_(_) ___ _ __ ___</td></tr>
<tr><td><div align="right"><a name="116"></a><a href="#116">116</a></div></td><td class="codeLine"> // \ \ / / _ \ '__| | |_| |/ __/ _` | __| |/ _ \| '_ \/ __|</td></tr>
<tr><td><div align="right"><a name="117"></a><a href="#117">117</a></div></td><td class="codeLine"> // \ V / __/ | | | _| | (_| (_| | |_| | (_) | | | \__ \</td></tr>
<tr><td><div align="right"><a name="118"></a><a href="#118">118</a></div></td><td class="codeLine"> // \_/ \___|_| |_|_| |_|\___\__,_|\__|_|\___/|_| |_|___/</td></tr>
<tr><td><div align="right"><a name="119"></a><a href="#119">119</a></div></td><td class="codeLine"> //</td></tr>
<tr><td><div align="right"><a name="120"></a><a href="#120">120</a></div></td><td class="codeLine"> ////////////////////////////////////////////////////////////////</td></tr>
<tr><td><div align="right"><a name="121"></a><a href="#121">121</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="4 tests cover line 76" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="76"></a><a href="#76">76</a></div></td><td class="codeLine"> $nextEquivalent = false; // Vaut VRAI si le prochain est peut-etre un equivalent numerique</td></tr>
<tr><td><div align="right"><a name="77"></a><a href="#77">77</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="78"></a><a href="#78">78</a></div></td><td class="codeLine"> /* [1] 2 dimensions</td></tr>
<tr><td><div align="right"><a name="79"></a><a href="#79">79</a></div></td><td class="codeLine"> ===============================================*/</td></tr>
<tr class="success popin" data-title="4 tests cover line 80" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="80"></a><a href="#80">80</a></div></td><td class="codeLine"> if( !$oneDimension &amp;&amp; is_array($fetchData[0]) ){</td></tr>
<tr><td><div align="right"><a name="81"></a><a href="#81">81</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="82"></a><a href="#82">82</a></div></td><td class="codeLine"> // on supprime les doublons des entrées (indice numérique)</td></tr>
<tr class="success popin" data-title="2 tests cover line 83" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="83"></a><a href="#83">83</a></div></td><td class="codeLine"> for( $i = 0 ; $i &lt; count($fetchData) ; $i++ ) // pour tout les utilisateurs</td></tr>
<tr class="success popin" data-title="2 tests cover line 84" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="84"></a><a href="#84">84</a></div></td><td class="codeLine"> foreach($fetchData[$i] as $col =&gt; $val){ // pour toutes les entrées</td></tr>
<tr><td><div align="right"><a name="85"></a><a href="#85">85</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 86" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="86"></a><a href="#86">86</a></div></td><td class="codeLine"> if( !mb_detect_encoding($val, 'UTF-8') )</td></tr>
<tr class="success popin" data-title="2 tests cover line 87" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="87"></a><a href="#87">87</a></div></td><td class="codeLine"> $fetchData[$i][$col] = utf8_encode($val);</td></tr>
<tr><td><div align="right"><a name="88"></a><a href="#88">88</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 89" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="89"></a><a href="#89">89</a></div></td><td class="codeLine"> if( is_int($col) ){ // Si indice numerique</td></tr>
<tr><td><div align="right"><a name="90"></a><a href="#90">90</a></div></td><td class="codeLine"> if( $nextEquivalent ) // Si suit un indice textuel</td></tr>
<tr class="success popin" data-title="2 tests cover line 91" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="91"></a><a href="#91">91</a></div></td><td class="codeLine"> unset( $fetchData[$i][$col] ); // on supprime l'indice</td></tr>
<tr><td><div align="right"><a name="92"></a><a href="#92">92</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 93" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="93"></a><a href="#93">93</a></div></td><td class="codeLine"> $nextEquivalent = false; // Dans tous les cas, on dit que le prochain ne pourra pas etre supprime si numerique</td></tr>
<tr><td><div align="right"><a name="94"></a><a href="#94">94</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 95" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="95"></a><a href="#95">95</a></div></td><td class="codeLine"> }else // Si l'indice n'est pas un entier</td></tr>
<tr class="success popin" data-title="2 tests cover line 96" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="96"></a><a href="#96">96</a></div></td><td class="codeLine"> $nextEquivalent = true; // On signale qu'il y aura peut etre un indice numerique suivant</td></tr>
<tr><td><div align="right"><a name="97"></a><a href="#97">97</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 98" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="98"></a><a href="#98">98</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="99"></a><a href="#99">99</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="100"></a><a href="#100">100</a></div></td><td class="codeLine"> /* [2] 1 dimensions</td></tr>
<tr><td><div align="right"><a name="101"></a><a href="#101">101</a></div></td><td class="codeLine"> ===============================================*/</td></tr>
<tr class="success popin" data-title="2 tests cover line 102" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="102"></a><a href="#102">102</a></div></td><td class="codeLine"> }else{</td></tr>
<tr><td><div align="right"><a name="103"></a><a href="#103">103</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="104"></a><a href="#104">104</a></div></td><td class="codeLine"> // on supprime les doublons des entrées (indice numérique)</td></tr>
<tr class="success popin" data-title="2 tests cover line 105" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="105"></a><a href="#105">105</a></div></td><td class="codeLine"> foreach($fetchData as $i=&gt;$val){ // pour toutes les entrées</td></tr>
<tr><td><div align="right"><a name="106"></a><a href="#106">106</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 107" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="107"></a><a href="#107">107</a></div></td><td class="codeLine"> if( !mb_detect_encoding($val, 'UTF-8') )</td></tr>
<tr class="success popin" data-title="2 tests cover line 108" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="108"></a><a href="#108">108</a></div></td><td class="codeLine"> $fetchData[$i] = utf8_encode($val);</td></tr>
<tr><td><div align="right"><a name="109"></a><a href="#109">109</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 110" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="110"></a><a href="#110">110</a></div></td><td class="codeLine"> if( is_int($i) ){ // Si indice numerique</td></tr>
<tr><td><div align="right"><a name="111"></a><a href="#111">111</a></div></td><td class="codeLine"> if( $nextEquivalent ) // Si suit un indice textuel</td></tr>
<tr class="success popin" data-title="2 tests cover line 112" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="112"></a><a href="#112">112</a></div></td><td class="codeLine"> unset( $fetchData[$i] ); // on supprime l'indice</td></tr>
<tr><td><div align="right"><a name="113"></a><a href="#113">113</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 114" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="114"></a><a href="#114">114</a></div></td><td class="codeLine"> $nextEquivalent = false; // Dans tous les cas, on dit que le prochain ne pourra pas etre supprime si numerique</td></tr>
<tr><td><div align="right"><a name="115"></a><a href="#115">115</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 116" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="116"></a><a href="#116">116</a></div></td><td class="codeLine"> }else // Si l'indice n'est pas un entier</td></tr>
<tr class="success popin" data-title="2 tests cover line 117" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="117"></a><a href="#117">117</a></div></td><td class="codeLine"> $nextEquivalent = true; // On signale qu'il y aura peut etre un indice numerique suivant</td></tr>
<tr><td><div align="right"><a name="118"></a><a href="#118">118</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="2 tests cover line 119" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="119"></a><a href="#119">119</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="120"></a><a href="#120">120</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="121"></a><a href="#121">121</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="122"></a><a href="#122">122</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="123"></a><a href="#123">123</a></div></td><td class="codeLine"> /* VERIFICATIONS DES TYPES UTILES GENERIQUES</td></tr>
<tr><td><div align="right"><a name="124"></a><a href="#124">124</a></div></td><td class="codeLine"> *</td></tr>
<tr><td><div align="right"><a name="125"></a><a href="#125">125</a></div></td><td class="codeLine"> * @type&lt;String&gt; Type que l'on veut verifier</td></tr>
<tr><td><div align="right"><a name="126"></a><a href="#126">126</a></div></td><td class="codeLine"> * @value&lt;mixed*&gt; Valeur a verifier</td></tr>
<tr><td><div align="right"><a name="127"></a><a href="#127">127</a></div></td><td class="codeLine"> *</td></tr>
<tr><td><div align="right"><a name="128"></a><a href="#128">128</a></div></td><td class="codeLine"> * @return match&lt;Boolean&gt; Retourne si oui ou non la valeur @value est du bon type @type</td></tr>
<tr><td><div align="right"><a name="129"></a><a href="#129">129</a></div></td><td class="codeLine"> *</td></tr>
<tr><td><div align="right"><a name="130"></a><a href="#130">130</a></div></td><td class="codeLine"> */</td></tr>
<tr><td><div align="right"><a name="131"></a><a href="#131">131</a></div></td><td class="codeLine"> public static function check($type, $value){</td></tr>
<tr class="success popin" data-title="32 tests cover line 132" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="132"></a><a href="#132">132</a></div></td><td class="codeLine"> $checker = !is_null($value);</td></tr>
<tr><td><div align="right"><a name="133"></a><a href="#133">133</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="134"></a><a href="#134">134</a></div></td><td class="codeLine"> switch($type){</td></tr>
<tr><td><div align="right"><a name="135"></a><a href="#135">135</a></div></td><td class="codeLine"> /* (1) Global */</td></tr>
<tr class="success popin" data-title="32 tests cover line 136" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="136"></a><a href="#136">136</a></div></td><td class="codeLine"> case 'auto_increment_id':</td></tr>
<tr class="success popin" data-title="8 tests cover line 137" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupStringIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="137"></a><a href="#137">137</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_numeric($value) &amp;&amp; $value &lt;= 2147483647 &amp;&amp; $value &gt;= -2147483647;</td></tr>
<tr><td><div align="right"><a name="138"></a><a href="#138">138</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="139"></a><a href="#139">139</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="140"></a><a href="#140">140</a></div></td><td class="codeLine"> /* (2) Utilisateur */</td></tr>
<tr class="success popin" data-title="24 tests cover line 141" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="141"></a><a href="#141">141</a></div></td><td class="codeLine"> case 'user.code':</td></tr>
<tr class="success popin" data-title="5 tests cover line 142" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="142"></a><a href="#142">142</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[\dA-F]{2}(\-[\dA-F]{2}){3,5}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="143"></a><a href="#143">143</a></div></td><td class="codeLine"> break;</td></tr>
<tr class="success popin" data-title="19 tests cover line 144" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="144"></a><a href="#144">144</a></div></td><td class="codeLine"> case 'user.username': case 'user.lastname':</td></tr>
<tr class="success popin" data-title="8 tests cover line 145" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="145"></a><a href="#145">145</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[\w-]{3,30}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="146"></a><a href="#146">146</a></div></td><td class="codeLine"> break;</td></tr>
<tr class="success popin" data-title="11 tests cover line 147" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="147"></a><a href="#147">147</a></div></td><td class="codeLine"> case 'user.firstname': case 'user.lastname':</td></tr>
<tr class="success popin" data-title="8 tests cover line 148" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="148"></a><a href="#148">148</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[a-z -]{3,30}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="149"></a><a href="#149">149</a></div></td><td class="codeLine"> break;</td></tr>
<tr class="success popin" data-title="3 tests cover line 150" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="150"></a><a href="#150">150</a></div></td><td class="codeLine"> case 'user.mail':</td></tr>
<tr class="success popin" data-title="3 tests cover line 151" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="151"></a><a href="#151">151</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; strlen($value) &lt;= 50 &amp;&amp; preg_match('/^[\w\.-]+@[\w\.-]+\.[a-z]{2,4}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="152"></a><a href="#152">152</a></div></td><td class="codeLine"> break;</td></tr>
<tr class="danger"><td><div align="right"><a name="153"></a><a href="#153">153</a></div></td><td class="codeLine"> case 'user.password':</td></tr>
<tr class="danger"><td><div align="right"><a name="154"></a><a href="#154">154</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_numeric($value) &amp;&amp; preg_match('/^[\da-f]{40}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="155"></a><a href="#155">155</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="156"></a><a href="#156">156</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="157"></a><a href="#157">157</a></div></td><td class="codeLine"> /* (3) Machine */</td></tr>
<tr class="danger"><td><div align="right"><a name="158"></a><a href="#158">158</a></div></td><td class="codeLine"> case 'groupe.nom':</td></tr>
<tr class="danger"><td><div align="right"><a name="159"></a><a href="#159">159</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[a-z0-9 -]{1,10}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="160"></a><a href="#160">160</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="161"></a><a href="#161">161</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="162"></a><a href="#162">162</a></div></td><td class="codeLine"> /* (4) Groupe */</td></tr>
<tr class="danger"><td><div align="right"><a name="163"></a><a href="#163">163</a></div></td><td class="codeLine"> case 'formation.code':</td></tr>
<tr class="danger"><td><div align="right"><a name="164"></a><a href="#164">164</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/[\w]{0,10}/i', $value);</td></tr>
<tr class="success popin" data-title="4 tests cover line 123" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2DimWithNumericIndexes&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1Dim&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal1DimWithNumericIndexes&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="123"></a><a href="#123">123</a></div></td><td class="codeLine"> return $fetchData;</td></tr>
<tr><td><div align="right"><a name="124"></a><a href="#124">124</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="125"></a><a href="#125">125</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="126"></a><a href="#126">126</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="127"></a><a href="#127">127</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="128"></a><a href="#128">128</a></div></td><td class="codeLine"> ////////////////////////////////////////////////////////////////</td></tr>
<tr><td><div align="right"><a name="129"></a><a href="#129">129</a></div></td><td class="codeLine"> // _ __ _ _ _</td></tr>
<tr><td><div align="right"><a name="130"></a><a href="#130">130</a></div></td><td class="codeLine"> // __ _____ _ __(_)/ _(_) ___ __ _| |_(_) ___ _ __ ___</td></tr>
<tr><td><div align="right"><a name="131"></a><a href="#131">131</a></div></td><td class="codeLine"> // \ \ / / _ \ '__| | |_| |/ __/ _` | __| |/ _ \| '_ \/ __|</td></tr>
<tr><td><div align="right"><a name="132"></a><a href="#132">132</a></div></td><td class="codeLine"> // \ V / __/ | | | _| | (_| (_| | |_| | (_) | | | \__ \</td></tr>
<tr><td><div align="right"><a name="133"></a><a href="#133">133</a></div></td><td class="codeLine"> // \_/ \___|_| |_|_| |_|\___\__,_|\__|_|\___/|_| |_|___/</td></tr>
<tr><td><div align="right"><a name="134"></a><a href="#134">134</a></div></td><td class="codeLine"> //</td></tr>
<tr><td><div align="right"><a name="135"></a><a href="#135">135</a></div></td><td class="codeLine"> ////////////////////////////////////////////////////////////////</td></tr>
<tr><td><div align="right"><a name="136"></a><a href="#136">136</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="137"></a><a href="#137">137</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="138"></a><a href="#138">138</a></div></td><td class="codeLine"> /* VERIFICATIONS DES TYPES UTILES GENERIQUES</td></tr>
<tr><td><div align="right"><a name="139"></a><a href="#139">139</a></div></td><td class="codeLine"> *</td></tr>
<tr><td><div align="right"><a name="140"></a><a href="#140">140</a></div></td><td class="codeLine"> * @type&lt;String&gt; Type que l'on veut verifier</td></tr>
<tr><td><div align="right"><a name="141"></a><a href="#141">141</a></div></td><td class="codeLine"> * @value&lt;mixed*&gt; Valeur a verifier</td></tr>
<tr><td><div align="right"><a name="142"></a><a href="#142">142</a></div></td><td class="codeLine"> *</td></tr>
<tr><td><div align="right"><a name="143"></a><a href="#143">143</a></div></td><td class="codeLine"> * @return match&lt;Boolean&gt; Retourne si oui ou non la valeur @value est du bon type @type</td></tr>
<tr><td><div align="right"><a name="144"></a><a href="#144">144</a></div></td><td class="codeLine"> *</td></tr>
<tr><td><div align="right"><a name="145"></a><a href="#145">145</a></div></td><td class="codeLine"> */</td></tr>
<tr><td><div align="right"><a name="146"></a><a href="#146">146</a></div></td><td class="codeLine"> public static function check($type, $value){</td></tr>
<tr class="success popin" data-title="39 tests cover line 147" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="147"></a><a href="#147">147</a></div></td><td class="codeLine"> $checker = !is_null($value);</td></tr>
<tr><td><div align="right"><a name="148"></a><a href="#148">148</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="149"></a><a href="#149">149</a></div></td><td class="codeLine"> switch($type){</td></tr>
<tr><td><div align="right"><a name="150"></a><a href="#150">150</a></div></td><td class="codeLine"> /* (1) Global */</td></tr>
<tr class="success popin" data-title="39 tests cover line 151" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="151"></a><a href="#151">151</a></div></td><td class="codeLine"> case 'auto_increment_id':</td></tr>
<tr class="success popin" data-title="8 tests cover line 152" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeSupStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfStringIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeGtSupStringIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="152"></a><a href="#152">152</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_numeric($value) &amp;&amp; $value &lt;= 2147483647 &amp;&amp; $value &gt;= -2147483647;</td></tr>
<tr><td><div align="right"><a name="153"></a><a href="#153">153</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="154"></a><a href="#154">154</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="155"></a><a href="#155">155</a></div></td><td class="codeLine"> /* (2) Utilisateur */</td></tr>
<tr class="success popin" data-title="31 tests cover line 156" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="156"></a><a href="#156">156</a></div></td><td class="codeLine"> case 'user.code':</td></tr>
<tr class="success popin" data-title="31 tests cover line 157" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="157"></a><a href="#157">157</a></div></td><td class="codeLine"> case 'machine.code':</td></tr>
<tr class="success popin" data-title="5 tests cover line 158" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize4WrongCharacter&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSizeGreaterThan6&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUserCodeSize6WrongCharacter&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="158"></a><a href="#158">158</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[\dA-F]{2}(\-[\dA-F]{2}){3,5}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="159"></a><a href="#159">159</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="160"></a><a href="#160">160</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="26 tests cover line 161" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="161"></a><a href="#161">161</a></div></td><td class="codeLine"> case 'user.username':</td></tr>
<tr class="success popin" data-title="26 tests cover line 162" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="162"></a><a href="#162">162</a></div></td><td class="codeLine"> case 'machine.name':</td></tr>
<tr class="success popin" data-title="26 tests cover line 163" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="163"></a><a href="#163">163</a></div></td><td class="codeLine"> case 'group.name':</td></tr>
<tr class="success popin" data-title="8 tests cover line 164" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="164"></a><a href="#164">164</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[\w-]{1,30}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="165"></a><a href="#165">165</a></div></td><td class="codeLine"> break;</td></tr>
<tr class="danger"><td><div align="right"><a name="166"></a><a href="#166">166</a></div></td><td class="codeLine"> case 'formation.nom':</td></tr>
<tr class="danger"><td><div align="right"><a name="167"></a><a href="#167">167</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/[\w ]{0,100}/i', $value);</td></tr>
<tr><td><div align="right"><a name="168"></a><a href="#168">168</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="169"></a><a href="#169">169</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="170"></a><a href="#170">170</a></div></td><td class="codeLine"></td></tr>
<tr class="danger"><td><div align="right"><a name="171"></a><a href="#171">171</a></div></td><td class="codeLine"> return $checker;</td></tr>
<tr><td><div align="right"><a name="172"></a><a href="#172">172</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="173"></a><a href="#173">173</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="174"></a><a href="#174">174</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="166"></a><a href="#166">166</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="18 tests cover line 167" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="167"></a><a href="#167">167</a></div></td><td class="codeLine"> case 'user.firstname':</td></tr>
<tr class="success popin" data-title="18 tests cover line 168" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="168"></a><a href="#168">168</a></div></td><td class="codeLine"> case 'user.lastname':</td></tr>
<tr class="success popin" data-title="8 tests cover line 169" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeStringCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameTypeIntIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSize30Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testFirstnameSizeGt30Incorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="169"></a><a href="#169">169</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[a-z -]{3,30}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="170"></a><a href="#170">170</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="171"></a><a href="#171">171</a></div></td><td class="codeLine"></td></tr>
<tr class="success popin" data-title="10 tests cover line 172" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="172"></a><a href="#172">172</a></div></td><td class="codeLine"> case 'user.mail':</td></tr>
<tr class="success popin" data-title="5 tests cover line 173" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeSupCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect1&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailContentIncorrect2&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="173"></a><a href="#173">173</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; strlen($value) &lt;= 50 &amp;&amp; preg_match('/^[\w\.-]+@[\w\.-]+\.[a-z]{2,4}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="174"></a><a href="#174">174</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="175"></a><a href="#175">175</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="176"></a><a href="#176">176</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="177"></a><a href="#177">177</a></div></td><td class="codeLine">?&gt;</td></tr>
<tr class="success popin" data-title="5 tests cover line 176" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="176"></a><a href="#176">176</a></div></td><td class="codeLine"> case 'user.password':</td></tr>
<tr class="success popin" data-title="5 tests cover line 177" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordSizeSupIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="177"></a><a href="#177">177</a></div></td><td class="codeLine"> return $checker &amp;&amp; is_string($value) &amp;&amp; preg_match('/^[\da-f]{40}$/i', $value);</td></tr>
<tr><td><div align="right"><a name="178"></a><a href="#178">178</a></div></td><td class="codeLine"> break;</td></tr>
<tr><td><div align="right"><a name="179"></a><a href="#179">179</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="180"></a><a href="#180">180</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="181"></a><a href="#181">181</a></div></td><td class="codeLine"></td></tr>
<tr class="danger"><td><div align="right"><a name="182"></a><a href="#182">182</a></div></td><td class="codeLine"> return $checker;</td></tr>
<tr><td><div align="right"><a name="183"></a><a href="#183">183</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="184"></a><a href="#184">184</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="185"></a><a href="#185">185</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="186"></a><a href="#186">186</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="187"></a><a href="#187">187</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="188"></a><a href="#188">188</a></div></td><td class="codeLine">?&gt;</td></tr>
</tbody>
</table>
@ -364,7 +375,7 @@
<span class="warning"><strong>Dead Code</strong></span>
</p>
<p>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 16:18:15 CET 2016.</small>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 20:46:41 CET 2016.</small>
</p>
</footer>
</div>

View File

@ -110,18 +110,18 @@
<tr><td><div align="right"><a name="12"></a><a href="#12">12</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="13"></a><a href="#13">13</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="14"></a><a href="#14">14</a></div></td><td class="codeLine"> function autoloader($className){</td></tr>
<tr class="success popin" data-title="2 tests cover line 15" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="15"></a><a href="#15">15</a></div></td><td class="codeLine"> $path = '';</td></tr>
<tr class="success popin" data-title="8 tests cover line 15" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="15"></a><a href="#15">15</a></div></td><td class="codeLine"> $path = '';</td></tr>
<tr><td><div align="right"><a name="16"></a><a href="#16">16</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="17"></a><a href="#17">17</a></div></td><td class="codeLine"> /* [1] On utilise le namespace pour localiser</td></tr>
<tr><td><div align="right"><a name="18"></a><a href="#18">18</a></div></td><td class="codeLine"> ===============================================*/</td></tr>
<tr><td><div align="right"><a name="19"></a><a href="#19">19</a></div></td><td class="codeLine"> // On remplace les '\' par des '/'</td></tr>
<tr class="success popin" data-title="2 tests cover line 20" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="20"></a><a href="#20">20</a></div></td><td class="codeLine"> $path = str_replace('\\', '/', $className) . '.php';</td></tr>
<tr class="success popin" data-title="2 tests cover line 21" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="21"></a><a href="#21">21</a></div></td><td class="codeLine"> $path = __ROOT__.'/'.$path;</td></tr>
<tr class="success popin" data-title="8 tests cover line 20" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="20"></a><a href="#20">20</a></div></td><td class="codeLine"> $path = str_replace('\\', '/', $className) . '.php';</td></tr>
<tr class="success popin" data-title="8 tests cover line 21" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="21"></a><a href="#21">21</a></div></td><td class="codeLine"> $path = __ROOT__.'/'.$path;</td></tr>
<tr><td><div align="right"><a name="22"></a><a href="#22">22</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="23"></a><a href="#23">23</a></div></td><td class="codeLine"> // Si le fichier existe, on l'inclut</td></tr>
<tr class="success popin" data-title="2 tests cover line 24" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="24"></a><a href="#24">24</a></div></td><td class="codeLine"> if( file_exists($path) )</td></tr>
<tr class="success popin" data-title="2 tests cover line 25" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="25"></a><a href="#25">25</a></div></td><td class="codeLine"> require_once $path;</td></tr>
<tr class="success popin" data-title="2 tests cover line 26" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="26"></a><a href="#26">26</a></div></td><td class="codeLine"> }</td></tr>
<tr class="success popin" data-title="8 tests cover line 24" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="24"></a><a href="#24">24</a></div></td><td class="codeLine"> if( file_exists($path) )</td></tr>
<tr class="success popin" data-title="8 tests cover line 25" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="25"></a><a href="#25">25</a></div></td><td class="codeLine"> require_once $path;</td></tr>
<tr class="success popin" data-title="8 tests cover line 26" data-content="&lt;ul&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeInfCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testAutoIncrementSizeLtInfIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSize3Correct&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeLt3Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testUsernameSizeGt30Incorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testMailSizeEqCorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_check::testPasswordContentIncorrect&lt;/li&gt;&lt;li class=&quot;success&quot;&gt;Database_delNumeric::testGlobal2Dim&lt;/li&gt;&lt;/ul&gt;" data-placement="bottom" data-html="true"><td><div align="right"><a name="26"></a><a href="#26">26</a></div></td><td class="codeLine"> }</td></tr>
<tr><td><div align="right"><a name="27"></a><a href="#27">27</a></div></td><td class="codeLine"></td></tr>
<tr><td><div align="right"><a name="28"></a><a href="#28">28</a></div></td><td class="codeLine"> // On definit l'autoloader comme autoloader (obvious)</td></tr>
<tr><td><div align="right"><a name="29"></a><a href="#29">29</a></div></td><td class="codeLine"> spl_autoload_register('autoloader', false, true);</td></tr>
@ -138,7 +138,7 @@
<span class="warning"><strong>Dead Code</strong></span>
</p>
<p>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 16:18:15 CET 2016.</small>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 20:46:41 CET 2016.</small>
</p>
</footer>
</div>

View File

@ -40,25 +40,24 @@
<div class="span6">
<h2>Top Project Risks</h2>
<ul>
<li><a href="Database.php.html#6">DataBase</a> (1066)</li>
<li><a href="Database.php.html#6">DataBase</a> (83)</li>
</ul>
</div>
<div class="span6">
<h2>Least Tested Methods</h2>
<ul>
<li><a href="Database.php.html#75">DataBase::delNumeric</a> (0%)</li>
<li><a href="Database.php.html#21">DataBase::__construct</a> (0%)</li>
<li><a href="Database.php.html#51">DataBase::getPDO</a> (0%)</li>
<li><a href="Database.php.html#33">DataBase::getInstance</a> (0%)</li>
<li><a href="Database.php.html#131">DataBase::check</a> (55%)</li>
<li><a href="Database.php.html#21">DataBase::__construct</a> (0%)</li>
<li><a href="Database.php.html#146">DataBase::check</a> (94%)</li>
</ul>
</div>
</div>
<footer>
<p>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 16:18:15 CET 2016.</small>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 20:46:41 CET 2016.</small>
</p>
</footer>
</div>
@ -89,7 +88,7 @@ $(document).ready(function() {
min: 0
},
series: [{
data: [0,0,0,1,0,0,0,0,0,0,0,0]
data: [0,0,0,0,0,0,0,0,1,0,0,0]
}],
});
@ -117,7 +116,7 @@ $(document).ready(function() {
}
},
series: [{
data: [[21.56862745098,46,"<a href=\"Database.php.html#6\">DataBase<\/a>"]],
data: [[71.428571428571,42,"<a href=\"Database.php.html#6\">DataBase<\/a>"]],
marker: {
symbol: 'diamond'
}

View File

@ -41,19 +41,19 @@
</thead>
<tbody>
<tr>
<td class="danger">Total</td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 27.87%;"></div>
<td class="warning">Total</td>
<td class="warning big"> <div class="progress progress-warning" style="width: 100px;">
<div class="bar" style="width: 69.70%;"></div>
</div>
</td>
<td class="danger small"><div align="right">27.87%</div></td>
<td class="danger small"><div align="right">17&nbsp;/&nbsp;61</div></td>
<td class="warning small"><div align="right">69.70%</div></td>
<td class="warning small"><div align="right">46&nbsp;/&nbsp;66</div></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
<div class="bar" style="width: 20.00%;"></div>
</div>
</td>
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;5</div></td>
<td class="danger small"><div align="right">20.00%</div></td>
<td class="danger small"><div align="right">1&nbsp;/&nbsp;5</div></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
</div>
@ -63,19 +63,19 @@
</tr>
<tr>
<td class="danger"><i class="icon-file"></i> <a href="Database.php.html">Database.php</a></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 21.57%;"></div>
<td class="success"><i class="icon-file"></i> <a href="Database.php.html">Database.php</a></td>
<td class="success big"> <div class="progress progress-success" style="width: 100px;">
<div class="bar" style="width: 71.43%;"></div>
</div>
</td>
<td class="danger small"><div align="right">21.57%</div></td>
<td class="danger small"><div align="right">11&nbsp;/&nbsp;51</div></td>
<td class="success small"><div align="right">71.43%</div></td>
<td class="success small"><div align="right">40&nbsp;/&nbsp;56</div></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
<div class="bar" style="width: 20.00%;"></div>
</div>
</td>
<td class="danger small"><div align="right">0.00%</div></td>
<td class="danger small"><div align="right">0&nbsp;/&nbsp;5</div></td>
<td class="danger small"><div align="right">20.00%</div></td>
<td class="danger small"><div align="right">1&nbsp;/&nbsp;5</div></td>
<td class="danger big"> <div class="progress progress-danger" style="width: 100px;">
<div class="bar" style="width: 0.00%;"></div>
</div>
@ -111,7 +111,7 @@
<span class="success"><strong>High</strong>: 70% to 100%</span>
</p>
<p>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 16:18:15 CET 2016.</small>
<small>Generated by <a href="http://github.com/sebastianbergmann/php-code-coverage" target="_top">PHP_CodeCoverage 1.2.13</a> using <a href="http://www.php.net/" target="_top">PHP 5.5.9-1ubuntu4.14</a> and <a href="http://phpunit.de/">PHPUnit 3.7.28</a> at Fri Feb 12 20:46:41 CET 2016.</small>
</p>
</footer>
</div>

View File

@ -1,8 +1,9 @@
<phpunit bootstrap="../manager/autoloader.php">
<testsuites>
<testsuite name="Database::check">
<testsuite name="\manager\Database">
<file>tests/Database_check.php</file>
<file>tests/Database_delNumeric.php</file>
</testsuite>
</testsuites>

View File

@ -63,7 +63,7 @@
/* [2] username
/* [2] user.username ; machine.name ; group.name
=========================================================*/
/* (1) Type */
public function testUsernameTypeStringCorrect(){
@ -90,18 +90,22 @@
/* (3) Size */
public function testUsernameSize3Correct(){
$this->assertEquals( 3, strlen('012') );
$this->assertTrue( \manager\Database::check('user.username', '012') );
}
public function testUsernameSize30Correct(){
$this->assertEquals( 30, strlen('0123456789abcdefghijklmno_-sda') );
$this->assertTrue( \manager\Database::check('user.username', '0123456789abcdefghijklmno_-sda') );
}
public function testUsernameSizeLt3Incorrect(){
$this->assertFalse( \manager\Database::check('user.username', '01') );
$this->assertLessThan( 3, strlen('') );
$this->assertFalse( \manager\Database::check('user.username', '') );
}
public function testUsernameSizeGt30Incorrect(){
$this->assertGreaterThan( 30, strlen('0123456789abcdefghijklmno_-sdaa') );
$this->assertFalse( \manager\Database::check('user.username', '0123456789abcdefghijklmno_-sdaa') );
}
@ -131,37 +135,89 @@
/* (3) Size */
public function testFirstnameSize3Correct(){
$this->assertEquals( 3, strlen('abc') );
$this->assertTrue( \manager\Database::check('user.firstname', 'abc') );
}
public function testFirstnameSize30Correct(){
$this->assertEquals( 30, strlen('abcdefghijklmnopqrstuvwxyz-k s') );
$this->assertTrue( \manager\Database::check('user.firstname', 'abcdefghijklmnopqrstuvwxyz-k s') );
}
public function testFirstnameSizeLt3Incorrect(){
$this->assertLessThan( 3, strlen('ab') );
$this->assertFalse( \manager\Database::check('user.firstname', 'ab') );
}
public function testFirstnameSizeGt30Incorrect(){
$this->assertGreaterThan( 30, strlen('abcdefghijklmnopqrstuvwxyz-k ss') );
$this->assertFalse( \manager\Database::check('user.firstname', 'abcdefghijklmnopqrstuvwxyz-k ss') );
}
/* [4] Adresse mail
=========================================================*/
public function testMailContentCorrect(){
/* (1) Size */
public function testMailSizeEqCorrect(){
$this->assertLessThanOrEqual( 50, 'nom-prenom.mot@domaine-d.gouv' );
$this->assertTrue( \manager\Database::check('user.mail', 'nom-prenom.mot@domaine-d.gouv') );
}
public function testMailSizeSupCorrect(){
$this->assertGreaterThan( 50, strlen('ab12345678901234567890nom-prenom.mot@domaine-d.gouv') );
$this->assertFalse( \manager\Database::check('user.mail', 'ab12345678901234567890nom-prenom.mot@domaine-d.gouv') );
}
/* (2) Content */
public function testMailContentCorrect(){
$this->assertTrue( \manager\Database::check('user.mail', '0nom-prenom.mot@domaine-d.gouv') );
}
public function testMailContentIncorrect1(){
$this->assertFalse( \manager\Database::check('user.mail', 'nom-prenom.mot@domaine-d.gouve') );
$this->assertFalse( \manager\Database::check('user.mail', '0nom-prenom.mot@domaine-d.gouve') );
}
public function testMailContentIncorrect2(){
$this->assertFalse( \manager\Database::check('user.mail', 'nom-prenom.mot@domaine-d.g') );
$this->assertFalse( \manager\Database::check('user.mail', '0nom-prenom.mot@domaine-d.g') );
}
/* [5] Mot de passe
=========================================================*/
public function testPasswordSizeEqCorrect(){
$password_hash = sha1('monmotdepasse');
$this->assertEquals( 40, strlen($password_hash) );
$this->assertTrue( \manager\Database::check('user.password', $password_hash) );
}
public function testPasswordSizeInfIncorrect(){
$password_hash = 'a';
$this->assertLessThan( 40, strlen($password_hash) );
$this->assertFalse( \manager\Database::check('user.password', $password_hash) );
}
public function testPasswordSizeSupIncorrect(){
$password_hash = sha1('monmotdepasse').'a';
$this->assertGreaterThan( 40, strlen($password_hash) );
$this->assertFalse( \manager\Database::check('user.password', $password_hash) );
}
public function testPasswordContentCorrect(){
$this->assertTrue( \manager\Database::check('user.password', 'dd629d39c4576731a2bef003c72ff89d6fc2a99a') );
}
public function testPasswordContentIncorrect(){
$this->assertContains( 'g', 'dd629d39c4576731a2bef003c72ff89d6fc2a9g' );
$this->assertFalse( \manager\Database::check('user.password', 'dd629d39c4576731a2bef003c72ff89d6fc2a9g') );
}
}
?>

View File

@ -0,0 +1,106 @@
<?php
class Database_delNumeric extends PHPUnit_Framework_TestCase{
/* [1] Verification pour 2 dimensions
=========================================================*/
/* (1) Global */
public function testGlobal2Dim(){
$fetchData = array(array(
'id' => '000001',
0 => '000001',
'nom' => 'Jean Dupont',
1 => 'Jean Dupont',
));
$computed_array = \manager\Database::delNumeric( $fetchData );
$this->assertArrayHasKey( 'id', $computed_array[0] );
$this->assertArrayHasKey( 'nom', $computed_array[0] );
$this->assertArrayNotHasKey( 0, $computed_array[0] );
$this->assertArrayNotHasKey( 1, $computed_array[0] );
}
/* (2) Verification d'indices numeriques dans les donnees */
public function testGlobal2DimWithNumericIndexes(){
$fetchData = array(array(
'id' => '000001',
0 => '000001',
'nom' => 'Jean Dupont',
1 => 'Jean Dupont',
2 => 'Bla',
3 => 'Bla',
4 => 'Bla',
5 => 'Bla',
6 => 'Bla',
7 => 'Bla'
));
$computed_array = \manager\Database::delNumeric( $fetchData );
$this->assertArrayHasKey( 'id', $computed_array[0] );
$this->assertArrayHasKey( 'nom', $computed_array[0] );
$this->assertArrayNotHasKey( 0, $computed_array[0] );
$this->assertArrayNotHasKey( 1, $computed_array[0] );
$this->assertArrayHasKey( 2, $computed_array[0] );
$this->assertArrayHasKey( 3, $computed_array[0] );
$this->assertArrayHasKey( 4, $computed_array[0] );
$this->assertArrayHasKey( 5, $computed_array[0] );
$this->assertArrayHasKey( 6, $computed_array[0] );
$this->assertArrayHasKey( 7, $computed_array[0] );
}
/* [2] Verification pour 1 dimensions
=========================================================*/
/* (1) Global */
public function testGlobal1Dim(){
$fetchData = array(
'id' => '000001',
0 => '000001',
'nom' => 'Jean Dupont',
1 => 'Jean Dupont'
);
$computed_array = \manager\Database::delNumeric( $fetchData );
$this->assertArrayHasKey( 'id', $computed_array );
$this->assertArrayHasKey( 'nom', $computed_array );
$this->assertArrayNotHasKey( 0, $computed_array );
$this->assertArrayNotHasKey( 1, $computed_array );
}
/* (2) Verification d'indices numeriques dans les donnees */
public function testGlobal1DimWithNumericIndexes(){
$fetchData = array(
'id' => '000001',
0 => '000001',
'nom' => 'Jean Dupont',
1 => 'Jean Dupont',
2 => 'Bla',
3 => 'Bla',
4 => 'Bla',
5 => 'Bla',
6 => 'Bla',
7 => 'Bla'
);
$computed_array = \manager\Database::delNumeric( $fetchData );
$this->assertArrayHasKey( 'id', $computed_array );
$this->assertArrayHasKey( 'nom', $computed_array );
$this->assertArrayNotHasKey( 0, $computed_array );
$this->assertArrayNotHasKey( 1, $computed_array );
$this->assertArrayHasKey( 2, $computed_array );
$this->assertArrayHasKey( 3, $computed_array );
$this->assertArrayHasKey( 4, $computed_array );
$this->assertArrayHasKey( 5, $computed_array );
$this->assertArrayHasKey( 6, $computed_array );
$this->assertArrayHasKey( 7, $computed_array );
}
}
?>

View File

@ -13,7 +13,6 @@
############
# EN COURS #
############
- [.] [phpunit/tests/Database_check] Tests unitaire du checker
- [ ] [Database] Checker de type
- [ ] Gestion des groupes (utilisateurs/machines)
- [x] bdd
@ -41,6 +40,11 @@
########
# FAIT #
########
- [x] [phpunit/tests/Database_delNumeric] Tests unitaire de delNumeric()
- [x] [Database] Mise a jour des methodes de Database
- [x] [Database::check] Suite de l'implementation (couverture des types de la BDD actuelle: 100%)
- [x] [Database::delNumeric] Prevention si oubli @oneDimension + ne supprime plus les indices numeriques associees a aucun indice textuel
- [x] [phpunit/tests/Database_check] Tests unitaire du checker
- [x] [phpunit/] Install+Config phpunit
- [x] [manager/Repo] Gestion des Repo
- [x] [ManagerError] Correction/ajout des codes erreurs