라라벨 6.0.4가 릴리즈 되었습니다. 패치 릴리즈인데도 기능이 추가되네요. SemVer 인듯 아닌듯.
assertJsonPath
추가특정 JSON 경로에 해당하는 값을 확인할 수 있는 매서드가 추가되었습니다.
$this->getJson(route('api.post.show', [$post->id]))
->assertJsonPath('tags', [])
->assertJsonPath('comments.0.user.username', 'ecrmnn')
->assertJsonPath('comments.*.body', [
'First!',
'This is my comment',
]);
assertJsonPath
를 쓰면 아래와 같은 장점이 있다고 합니다.
저는 앞으로 JSON 테스트 할 때 가장 먼저 assertJsonPath
사용을 고려하게 될 것 같네요!
hasMacro()
, hasGlobalMacro()
, getGloabalMacro()
가 추가되었습니다. hasMacro()
, hasGlobalMacro()
는 매크로가 있는지 여부를 확인합니다. 테스트와 방어적 코딩에 유용할거라 하네요.
pivot 컬럼 값을 가져오는 기능은 있었는데, 어떤 pivot 컬럼들이 있는지 조회하는 기능이 없었나보네요.
기존에 커맨드가 시작되고 끝날 때 발생하는 이벤트가 있긴했는데 (Illuminate\Console\Events\CommandStarting
, Illuminate\Console\Events\CommandFinished
) 편의를 위해 스케쥴에 의해 실행되는 커맨드용 이벤트만 따로 분리했다고 합니다.
추가된 이벤트는 아래 두가지입니다.
커맨드의 인수나 옵션을 정의할 때 "배열" 대신 객체(InputArgument 혹은 InputOption)를 사용할 수 있게 됐습니다.
Before:
protected function getArguments()
{
return [
['name', InputArgument::REQUIRED, 'the argument\'s description', 'default value'],
];
}
After
protected function getArguments()
{
return [
new InputArgument('name', InputArgument::REQUIRED, 'the argument\'s description', 'default value'),
];
}
장점은 배열을 구성하는 순서를 확인하기 위해 문서를 참조하지 않아도 되는 것이라고 하네요.
1일 1식 라라벨 62호
2019년 9월 27일
메쉬 코리아 개발자. 바쁜 팀장님 대신 알려주는 신입 PHP 개발자 안내서를 쓰고, 클린 아키텍처 인 PHP를 번역했습니다. 처음부터 제대로 배우는 라라벨(Laravel Up & Running 2nd Edition)을 번역했습니다.