29 if(isset(
$config->database->pdo)){
46 $value1 =
$db->drop_table(
"kumbia_test");
48 throw new DbException(
"No se pudo crear la tabla de prueba (1)");
52 "type" => db::TYPE_INTEGER,
58 "type" => db::TYPE_VARCHAR,
63 "type" => db::TYPE_DATE,
67 throw new DbException(
"No se pudo crear la tabla de prueba (2)");
69 if(!
$db->table_exists(
"kumbia_test")){
70 throw new DbException(
"No se pudo comprobar la existencia de la tabla de prueba (3)");
75 print
"<div style='background:#FFBBBB;border:1px solid red'>";
76 print
"Primer Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
81 print
"<div style='background:#CCFF99;border:1px solid green'>";
82 print
"Primer Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
87 $test_name =
"INSERTAR DATOS EN UNA TABLA DE PRUEBA";
90 $value1 =
$db->insert(
"kumbia_test", array(
"4",
"'Hello'",
"'2005-04-04'"));
92 throw new DbException(
"No se puede insertar en la tabla de prueba (1)");
94 $value2 =
$db->insert(
"kumbia_test", array(
"2",
"'Hello'",
"'2005-02-04'"), array(
"id",
"texto",
"fecha"));
96 throw new DbException(
"No se puede insertar en la tabla de prueba (2)");
98 $value3 =
$db->insert(
"kumbia_test", array(
"'Hello'",
"'2005-02-04'"), array(
"texto",
"fecha"));
100 throw new DbException(
"No se puede insertar en la tabla de prueba (3)");
102 if(
$db->affected_rows()!=1){
103 throw new DbException(
"No se puede insertar en la tabla de prueba (4)");
109 print
"<div style='background:#FFBBBB;border:1px solid red'>";
110 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
115 print
"<div style='background:#CCFF99;border:1px solid green'>";
116 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
121 $test_name =
"ACTUALIZAR DATOS EN UNA TABLA DE PRUEBA";
124 $value1 =
$db->update(
"kumbia_test", array(
"texto"), array(
"'Esto es un Texto'"));
126 throw new DbException(
"No se puede actualizar en la tabla de prueba (1)");
128 $value2 =
$db->update(
"kumbia_test", array(
"texto",
"fecha"), array(
"'Esto es otro Texto'",
"'2007-02-02'"),
"id = 1");
130 throw new DbException(
"No se puede actualizar en la tabla de prueba (2)");
134 print
"<div style='background:#FFBBBB;border:1px solid red'>";
135 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
140 print
"<div style='background:#CCFF99;border:1px solid green'>";
141 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
146 $test_name =
"BORRAR DATOS EN UNA TABLA DE PRUEBA";
149 $value1 =
$db->delete(
"kumbia_test",
"id = 4");
151 throw new DbException(
"No se puede borrar en la tabla de prueba (1)");
155 print
"<div style='background:#FFBBBB;border:1px solid red'>";
156 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
161 print
"<div style='background:#CCFF99;border:1px solid green'>";
162 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
167 $test_name =
"CONSULTAR DATOS EN UNA TABLA DE PRUEBA";
170 $value1 =
$db->query(
"SELECT * FROM kumbia_test ORDER BY id");
172 throw new DbException(
"No se puede consultar en la tabla de prueba (1)");
174 while(
$row =
$db->fetch_array()){
176 throw new DbException(
"No se puede consultar en la tabla de prueba {$row['id']} (2)");
179 if(!isset(
$config->database->pdo)){
180 if(
$db->num_rows()!=2){
181 throw new DbException(
"No se puede consultar en la tabla de prueba (3)");
184 $value2 =
$db->fetch_one(
"SELECT * FROM kumbia_test {$db->limit(1)}");
186 throw new DbException(
"No se puede consultar en la tabla de prueba (4)");
188 $value3 =
$db->fetch_all(
"SELECT * FROM kumbia_test");
190 throw new DbException(
"No se puede consultar en la tabla de prueba (5)");
192 $value4 =
$db->in_query_assoc(
"SELECT * FROM kumbia_test {$db->limit(1)}");
194 throw new DbException(
"No se puede consultar en la tabla de prueba (6)");
196 $value5 =
$db->in_query_num(
"SELECT * FROM kumbia_test {$db->limit(1)}");
198 throw new DbException(
"No se puede consultar en la tabla de prueba (7)");
200 $value6 =
$db->in_query(
"SELECT * FROM kumbia_test {$db->limit(1)}");
202 throw new DbException(
"No se puede consultar en la tabla de prueba (8)");
204 if(!isset(
$config->database->pdo)){
205 $value7 =
$db->data_seek(1, $value1);
207 throw new DbException(
"No se puede consultar en la tabla de prueba (9)");
212 throw new DbException(
"No se puede consultar en la tabla de prueba {$value8['id']} (10)");
216 print
"<div style='background:#FFBBBB;border:1px solid red'>";
217 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
222 print
"<div style='background:#CCFF99;border:1px solid green'>";
223 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
231 $value1 =
$db->query(
"SELECT * FROM kumbia_test");
233 throw new DbException(
"No se comprobar nombre del campo (1)");
237 throw new DbException(
"No se comprobar nombre del campo (2)");
241 print
"<div style='background:#FFBBBB;border:1px solid red'>";
242 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
247 print
"<div style='background:#CCFF99;border:1px solid green'>";
248 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
257 $db->query(
"delete from kumbia_test");
260 $db->query(
"delete from kumbia_test");
264 print
"<div style='background:#FFBBBB;border:1px solid red'>";
265 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
270 print
"<div style='background:#CCFF99;border:1px solid green'>";
271 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
276 $test_name =
"CONTAR TABLAS Y DESCRIBIR TABLA TEST";
279 Flash::notice(
"HAY ".count(
$db->list_tables()).
" TABLA(S) EN LA BASE DE DATOS");
280 print_r(
$db->describe_table(
"kumbia_test"));
283 print
"<div style='background:#FFBBBB;border:1px solid red'>";
284 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
289 print
"<div style='background:#CCFF99;border:1px solid green'>";
290 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
295 $test_name =
"CERRAR LA CONEXION A LA BASE DE DATOS";
298 $value1 =
$db->close();
300 throw new DbException(
"No se puede cerrar la conexion (1)");
304 print
"<div style='background:#FFBBBB;border:1px solid red'>";
305 print
"Test '$test_name' (FALLÓ) con mensaje: ({$e->getMessage()})";
310 print
"<div style='background:#CCFF99;border:1px solid green'>";
311 print
"Test '$test_name' (OK) con tiempo: ({$end_benckmark})";
316 print
"<div style='background:#CCFF99;border:1px solid green'>";
317 print
"<strong>Tiempo total de los Test ".(microtime(
true) -
$init_time).
"</strong>";