Patrón de Diseño Pipeline en Laravel

patrón de diseño pipeline

7 Casos donde debes de usar Dobles de Prueba

Cuando usar dobles de prueba

Generalmente los dobles de prueba se usan para situaciones donde necesitamos simular la interacción con recursos que son difíciles de usar en una prueba.

Pero cuando comenzamos a usar dobles a veces se complica un poco saber en que casos me conviene usarlos.

Es por eso que te dejo algunas situaciones donde puedes usar dobles de prueba y también te dejo un pequeño ejemplo de cada situación.

Continue reading 7 Casos donde debes de usar Dobles de Prueba

Test Doubles o Dobles de prueba y como usarlos en Laravel

dobles de prueba(Test Doubles)

¿Cómo podemos probar la lógica de forma independiente cuando nuestro código depende de otra clase?

Cuando trabajamos usando TDD las cosas se ponen interesantes cuando comenzamos a probar clases que dependen de otras para hacer su trabajo. a veces es posible instanciar las dependencias y seguir probando, pero algunos casos son mas complicados porque son dependencias que a su vez necesitan de otras clases o se comunican con componentes que no están disponibles en nuestro ambiente de pruebas y en algunas ocasiones es posible que la clase que necesitamos todavía no existe.

Continue reading Test Doubles o Dobles de prueba y como usarlos en Laravel

Command Query Separation en Laravel

command query separation

Refactorización de Traits a Clases en Laravel

trait refactoring

¿Por qué quiero refactorizar un Trait?

La razón mas común para hacer esto, es porque el trait crece o se requiere funcionalidad que ya no puede ser manejada por el trait. También existe la posibilidad de que tomáramos una mala decisión y el trait no era lo que se necesitaba.

Continue reading Refactorización de Traits a Clases en Laravel

Cómo Probar Model Observers en Laravel

prueba de model observers

Basado en una pregunta realizada en una chat dejo un ejemplo de como puedes hacer pruebas cuando usas observadores para manejar los eventos de Eloquent.

Cómo probar traits existentes en Laravel

prueba de traits en laravel

¿Cómo pruebas tus traits?

Los Traits son geniales para compartir parte del comportamiento de una clase sin tener que extender de nada. Es como un copy/paste pero sin la duplicación de código ya que el código esta en el Trait.

Esto también ayuda a organizar el código de una clase. En Laravel puedes encontrar varios ejemplos donde se aplica esta idea.

Continue reading Cómo probar traits existentes en Laravel

Cómo subir y probar archivos en Laravel

Probar archivos

Transacciones en Laravel (Insertar modelos relacionados)

tramsacciones laravel

Aplicando el patrón de diseño State en laravel

patron de diseno state

Existen muchos casos en los que nuestra aplicación realiza acciones de acuerdo a un “estado”.

Un ejemplo típico de esto es cuando compras cosas en línea y dejas el carrito lleno sin completar la compra.

De forma interna el sistema detecta este carrito en el estado “no completado” y te hace recordatorios regulares vía E-mail para que finalices la compra.

Continue reading Aplicando el patrón de diseño State en laravel