Mailables con TDD en Laravel 5.3

Logo
33

Mailables con TDD en Laravel

Curso de Crea una aplicación con Laravel 5.3 Parte 1

Como se vió en la lección Uso de fakes para comprobar el envío de mailables y notificaciones con PHPUnit en Laravel 5.3 del Curso de novedades en Laravel 5.3 podemos hacer uso de test doubles para crear objetos que simulen un objeto real que nos permita probar nuestras aplicaciones de una manera automatizada sin depender de una API o servicios externos, pero en este tipo de pruebas no estamos comprobando que la vista y el mensaje se esté construyendo correctamente. Hasta la fecha de publicación de esta lección en el framework Laravel no existe una forma oficial de hacer dicha comprobación para las clases Mailable por tanto, esta lección está dedicada a explicar cómo crear un método de prueba para verificar esto.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Pruebas de regresión para el módulo de autenticación

Logo
32

Pruebas de regresión para el módulo de autenticación

Curso de Crea una aplicación con Laravel 5.3 Parte 1

Las pruebas de regresión nos permiten buscar y encontrar errores de un código ya desarrollado, por ello en esta lección mejoraremos nuestro módulo de autenticación creando pruebas para los siguientes escenarios: el usuario use un token inválido, el usuario use dos veces un mismo token, el usuario use un token transcurrido más de 30 minutos de haber sido generado y que la comprobación del token sea sensible a mayúsculas y minúsculas.

Regístrate para ver ésta y cientos de lecciones exclusivas.

Eventos de Eloquent basados en clases en Laravel 5.4

Logo
8

Eventos en Eloquent

Novedades de Laravel 5.4

Eloquent, el ORM de Laravel, dispara una serie de eventos antes y después de crear, actualizar o eliminar registros. Por ejemplo tenemos eventos como «creating» y «created» o «saving» y «saved». Hasta Laravel 5.3 podíamos asociar dichos eventos a callbacks usando una sintaxis como: Event::list(«eloquent.created: App\Post», $callback)  o App\Post::created($callback).

Sin embargo, desde hace varias versiones, Laravel nos permite trabajar con eventos y listeners utilizando clases y a partir de Laravel 5.4 también podemos definir clases para los modelos de Eloquent de una forma muy sencilla como veremos en la siguiente lección:

Ver post

Traducciones basadas en JSON en Laravel 5.4

Logo
7

Traducciones con JSON

Novedades de Laravel 5.4

Hasta ahora, definir áreas que queremos que contengan traducciones nos obligaba a inventar una «llave» y luego a irnos al directorio resources/lang para especificar la llave con su traducción, esta labor se vuelve tediosa cuando tenemos proyectos con cientos de cadenas que queremos traducir. A partir de Laravel 5.4 se simplifica este proceso, ya no necesitamos especificar una llave por cada texto sino que podemos usar texto plano y además todas las traducciones se almacenarán en un simple archivo JSON como veremos en esta lección:

Ver post

Nueva interfaz fluida en las rutas de Laravel 5.4

Logo
6

Interfaz fluida en las rutas

Novedades de Laravel 5.4

Laravel 5.4 incluye varias mejoras en el sistema de rutas, a partir de ahora es posible definirlas con una interfaz completamente fluida, es decir encadenando métodos para especificar los diferentes componentes de las rutas o grupos de rutas como lo son middleware, prefijos, nombres, entre otros y esto por supuesto lo aprenderás en el siguiente video:

Ver post

Nuevos middleware en Laravel 5.4

Logo
5

Nuevos middleware en Laravel 5.4

Novedades de Laravel 5.4

Laravel 5.4 incluye 2 nuevos middleware que te ayudarán a procesar los datos provenientes de formularios, estos middleware son: TrimString que elimina espacios sobrantes al principio y al final de las cadenas y ConvertEmptyStringsToNull, el cual, como su nombre en inglés lo indica: convierte las cadenas vacías a null, con el fin de evitar errores causados por restricciones (constraints) en la base de datos, cuando por ejemplo definimos llaves foráneas que aceptan valores nulos.

En el siguiente video tutorial usaré un formulario de ejemplo para enseñarte cómo actúan estos middleware, porqué son importantes y cómo usarlos:

Ver post

Generar controladores asociados a un modelo en Laravel 5.4

Logo
4

Controladores asociados a modelos

Novedades de Laravel 5.4

En las versiones anteriores de Laravel ya éramos capaces de generar controladores normales o de tipo recurso (resource controller) con tan sólo un comando. Desde Laravel 5.2 también somos capaces de enlazar un parámetro de una ruta (típicamente un ID o un slug) a un modelo. Ahora a partir de Laravel 5.4 podemos generar un controlador de tipo recurso enlazado a un modelo con «implicit route binding» y esto con tan sólo un comando, como veremos en el siguiente video.

Ver post

Facades automáticos en Laravel 5.4

Logo
3

Facades Automáticos

Novedades de Laravel 5.4

Los facades en Laravel proporcionan una interfaz “Estática” a las clases que están disponibles a través del contenedor de servicios de la aplicación, de esta manera podemos llamar a métodos sin tener que preocuparnos por instanciar la clase, pasar dependencias, etc. El único «problema» hasta la versión 5.3 de Laravel, era tener que crear nosotros mismos una clase para representar el facade y pasarle la referencia al contenedor de inyección de dependencias, sin embargo a partir de Laravel 5.4 este proceso es automático con los nuevas facades en tiempo real o facades automáticos. En esta lección aprenderás cómo usarlos pero también verás un repaso sobre la creación de facades manuales y cómo registrar clases en el contenedor del framework.

Ver post

Componentes y slots en Laravel 5.4

Logo
2

Componentes y slots

Novedades de Laravel 5.4

En Laravel 5.4, el sistema de plantillas Blade incluye componentes y slots parecidos a los de Vue.js. Los componentes y slots proveen de beneficios similares al uso de secciones y layouts que ya conocemos, sin embargo son más fáciles de entender y podemos usarlos tanto para layouts como para pequeños widgets o vistas parciales. En la siguiente lección te enseñaremos cómo sacarle provecho a este nuevo feature:

Ver post

Suscríbete a nuestro boletín

Te enviaremos publicaciones con consejos útiles y múltiples recursos para que sigas aprendiendo.

Suscríbete a nuestro boletín

Recibe consejos útiles, promos y múltiples recursos directamente en tu correo.

Tu nombre y correo serán enviados directamente a MailChimp. No compartiremos tus datos con otras empresas.