Passed
Push — main ( 5d16fe...94d2f6 )
by Osvaldo
02:29
created

ConsultasTest::testConsultasSelectWhere()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 25
Code Lines 14

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 14
c 1
b 0
f 0
nc 1
nop 0
dl 0
loc 25
rs 9.7998
1
<?php
2
declare(strict_types=1);
3
namespace test;
4
5
use PDOStatement;
6
use \PHPUnit\Framework\TestCase;
7
use src\pdodatabase\conexion\CrearConexionBaseDeDatos;
8
use src\pdodatabase\consultas\select\ConsultaSelect;
9
use src\pdodatabase\consultas\select\ConsultaSelectWhere;
10
use src\pdodatabase\ejecutar\EjecutarConsultaConDatos;
11
use src\pdodatabase\ejecutar\EjecutarConsultaSinDatos;
12
use src\pdodatabase\elementos\Campos;
13
use src\pdodatabase\elementos\CamposYTabla;
14
use src\pdodatabase\elementos\Como;
15
use src\pdodatabase\elementos\Tabla;
16
use src\pdodatabase\elementos\ValidadorDeParametrosWhere;
17
use src\pdodatabase\elementos\Where;
18
use src\pdodatabase\sentencias\select\SentenciaSelect;
19
use src\pdodatabase\sentencias\select\SentenciaSelectWhere;
20
21
class ConsultasTest extends TestCase
22
{
23
    // class ConsultaSelect
24
25
    public function testConsultasSelect()
26
    {
27
        $conexion = new CrearConexionBaseDeDatos;
28
        $conexion = $conexion->crear([]);
29
30
        $consulta = new ConsultaSelect(
31
            new EjecutarConsultaSinDatos(
32
                $conexion
33
            ),
34
            new SentenciaSelect(
35
                new CamposYTabla(
36
                    new Campos(['*']),
37
                    new Tabla('prueba')
38
                )
39
            )
40
        );
41
42
        $this->assertInstanceOf(PDOStatement::class, $consulta->obtener());
43
    }
44
45
    // class ConsultaSelectWhere
46
47
    public function testConsultasSelectWhere()
48
    {
49
        $conexion = new CrearConexionBaseDeDatos;
50
        $conexion = $conexion->crear([]);
51
52
        $consulta = new ConsultaSelectWhere(
53
            new EjecutarConsultaConDatos(
54
                $conexion
55
            ),
56
            new SentenciaSelectWhere(
57
                new CamposYTabla(
58
                    new Campos(['*']),
59
                    new Tabla('prueba')
60
                ),
61
                new Como(
62
                    new Where(
63
                        new ValidadorDeParametrosWhere(
64
                            ['id','=',12]
65
                        )
66
                    )
67
                )
68
            )
69
        );
70
71
        $this->assertInstanceOf(PDOStatement::class, $consulta->obtener());
72
    }
73
}
74
75