Laravel Unittest модели, которая содержит другую модель - PullRequest
0 голосов
/ 18 октября 2018

Я сделал две модели Laravel, Module & ModuleDone.

Module.php :

class Module extends Model
{
    protected $fillable = [
      'id', 'domain','level', 'description', 'sbu'
    ];

    public function getFullNameAttribute()
    {
        return $this->domain . $this->level." ".$this->description." (".$this->sbu.")";
    }
}

ModuleDone.php:

class ModuleDone extends Model
{
    protected $dates = [
      'date', 'date_start', 'date_end'
    ];

    protected $fillable = [
      'id', 'date','modules_id','result','date_start','date_end'
    ];

    public function Module() {
      return $this->belongsTo(Module::class, 'modules_id');
    }


    public function getDescriptionHeaderAttribute(){
      if ($this->result != null) {
        return $this->Module->domain.$this->Module->level.' ('. $this->result.')';
      } else {
        return $this->Module->domain.$this->Module->level.' (S: '.
      $this->date_start->format('d-m-Y').')';
      }
    }
 }

Это код модульного теста для Module класса:

public function testGetFullNameAttribute()
{
  $module = new Module([
    'domain' => 'T',
    'level' => '9',
    'description' => 'Test',
    'sbu' => '10',
  ]);

  $this->assertEquals($module->fullName, 'T9 Test (10)', "FullNameAttribe");
}

Мой вопрос: как будет выглядеть модульный тест для getDescriptionHeaderAttribute()без сохранения чего-либо в базе данных или без заполнения чего-либо в базе данных?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...