2017-09-29 4 views
1

Je voudrais savoir quelle est la meilleure approche pour s'assurer que mon modèle Activity appartient à un User.Test Laravel Eloquent Relation

Activity.php

... 

public function user() 
{ 
    return $this->belongsTo(User::class); 
} 

Comment puis-je écrire un test qui s'assurer que le modèle Activity a cette relation?

+1

Vous pouvez utiliser la base de données comme sqlite pour le tester créer un utilisateur avec l'usine, puis créer une activité l'attacher à l'utilisateur après que charger l'activité et tester si elle est liée à l'utilisateur créé – Maraboc

+0

'Activity :: find (1) -> utilisateur'? – mimo

+0

Thx. @Maraboc pouvez-vous écrire une réponse? Je vais vous donner vos points. –

Répondre

1

Il n'y a aucun problème à tester éloquent avec la base de données comme source de vérité, de sorte que vous pouvez utiliser la base de données comme sqlite, pour des performances de vitesse.

Pour le tester, créez un utilisateur avec l'usine, puis créez une activité en l'attachant à l'utilisateur créé après avoir chargé l'activité et testé si elle est liée à l'utilisateur créé.

Nous suivons le modèle de Given, Quand, alors =>Étant donné vous avez u utilisateur Quand il créer une activité (connecté, créer un poste ...) Puis vérifier si l'activité créée