La diferencia entre un mutator/accessor y un método personalizado es que los primeros solo se ejecutan sobre propiedades de la clase. 😉
Introducción
Todo lo que aprenderás sobre testing con PHP y Laravel
La función del testing
PHPUnit en Laravel
Unit y Feature
Conceptos
El resultado
Probar un Helper
Accessors y Mutators
Método personalizado
Carga de archivos
Carga de archivos desde el navegador
Refactorización
Validación
Database
Proyecto
TDD
¿Qué vamos a construir?
Testing HTTP
Testing HTTP: vista con datos
Nuevo registro
Eliminar registro
Validación
Probando desde el navegador
Añadiendo estilos con Tailwind CSS
Aplicando pruebas unitarias a cambios
Conclusión
Repaso final y despedida
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
Profesor Italo Morales F
Aportes 10
Preguntas 2
La diferencia entre un mutator/accessor y un método personalizado es que los primeros solo se ejecutan sobre propiedades de la clase. 😉
Algo que me encanta de este curso es cómo el profesor va reutilizando los métodos antiguos para generar nuevos, y es completamente válido jaja, los tests son como esa cosa que te sirven de colchón cuando te caes, básicamente te están diciendo: “Oiga, todo ok por acá, siga programando sin preocupaciones”
.
Y de hecho, repetir los tests, para este caso, es “buena práctica”, ya que te estás asegurando de que el mismo test pase por cada cambio que hay 👀
Getter: Su función es permitir el obtener el valor de una propiedad de la clase y así poder utilizar dicho valor en diferentes métodos.
Setter: Su función permite brindar acceso a propiedades especificas para poder asignar un valor fuera de la clase.
Un método en programación es una función que tiene un conjunto de instrucciones definidas dentro de él. El método tiene un nombre para identificarlo. Podemos hacer que requiera diferentes tipos de datos de entrada para ejecutarse. Y podemos hacer que el método devuelva datos como resultado.
La diferencia entre los setters y getters con los métodos personalizados es que en los métodos personalizados trabajamos con eso, con un método que trata los atributos y podemos usarlo para agregar cosas, en setters y getters trtabajamos directamente con los atributos del modelo, ya sea seteandolos o obteniéndolos para hacer en este caso una prueba.
Es una excelente manera de iniciar el desarrollo usando TDD (Test Driven Design). Se realizan primero las pruebas, y luego la función que debe ser probada exitosamente.
Hola les comparto como hacer los ejercicios usando la nueva clase de laravel para interactuar con strings de una manera más amigable
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Str;
class Post extends Model
{
use HasFactory;
public function href()
{
return Str::of($this->slug)->prepend('blog/');
}
}
<?php
namespace Tests\Unit\Models;
use App\Models\Post;
use Illuminate\Support\Str;
use PHPUnit\Framework\TestCase;
class PostTest extends TestCase
{
public function test_get_href()
{
$post = new Post();
$post->name = "Proyecto en PHP";
$href = Str::of($post->name)->slug()->prepend('blog/');
self::assertEquals($href, $post->href());
}
}
Me ha gustado la forma en que se ha dictado el curso. Se explican los conceptos de forma sencilla, paso a paso, para entender el porque de las cosas. 👍
Me ha gustado la forma en que se ha dictado el curso. Se explican los conceptos de forma sencilla, paso a paso, para entender el porque de las cosas.
Me parecen sumamente interesante estos conceptos, tome el curso
Básico de Manejo de Datos en Laravel con Eloquent ORM y me ayuda a refrescar algunos temas y entenderlos de mejor manera!
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?