Php 如何捕获验证消息?
我有一些现场验证的测试。 如何断言响应错误消息? 这是我的简单测试Php 如何捕获验证消息?,php,laravel,graphql,laravel-lighthouse,Php,Laravel,Graphql,Laravel Lighthouse,我有一些现场验证的测试。 如何断言响应错误消息? 这是我的简单测试 /** @test */ public function categoryRequiresName() { $response = $this->postGraphQL([ 'query' => ' mutation CreateCategory($name: String!) { createCategory(name: $name) {
/** @test */
public function categoryRequiresName()
{
$response = $this->postGraphQL([
'query' => '
mutation CreateCategory($name: String!) {
createCategory(name: $name) {
name
}
}
',
'variables' => [
'name' => '',
],
]);
// how to assert Response message ?
// edited solution
$this->assertEquals("The name field is required.", $response->json("errors.0.extensions.validation.name.0"));
}
这是我在变异领域的规则
name: String @rules(apply: ["required"])
这是错误树
如果收到正确的响应消息,您是否正在尝试验证?如果是,请检查我调试响应的屏幕截图。它给出了正确的消息,但我不知道如何断言它如果你想断言整个
$errors
数组,这将很困难,如果你想断言消息,你可以比较消息,对于$errors
数组,您可能需要编写一个自定义函数来检查该数组中的任何内容,并在此处断言返回的布尔值。。。我只需要包含名称数组的测试消息,例如“名称字段是必需的”否:(……)。。。。。。。