File tree Expand file tree Collapse file tree 2 files changed +24
-4
lines changed Expand file tree Collapse file tree 2 files changed +24
-4
lines changed Original file line number Diff line number Diff line change @@ -45,12 +45,23 @@ class_exists($invalidClassName) === false
45
45
}
46
46
47
47
if ($ this ->reflectionProvider ->hasClass ($ invalidClassName )) {
48
- $ result [] = PHPStan \Rules \RuleErrorBuilder::message ("GraphQL schema isn't valid. " )
48
+ $ ruleError = PHPStan \Rules \RuleErrorBuilder::message ("GraphQL schema isn't valid. " )
49
49
->identifier ('graphql.schemaInvalid ' )
50
50
->file ($ schemaName )
51
51
->line (0 )
52
- ->nonIgnorable ()
53
- ->build ();
52
+ ->nonIgnorable ();
53
+
54
+ $ errors = $ this ->reflectionProvider
55
+ ->getClass ($ invalidClassName )
56
+ ->getNativeProperty ('errors ' )
57
+ ->getNativeReflection ()
58
+ ->getDefaultValue ();
59
+
60
+ foreach ($ errors as $ error ) {
61
+ $ ruleError = $ ruleError ->addTip ($ error ['message ' ]);
62
+ }
63
+
64
+ $ result [] = $ ruleError ->build ();
54
65
55
66
continue ;
56
67
}
Original file line number Diff line number Diff line change @@ -57,7 +57,16 @@ private function generateInvalidSchemaClass(
57
57
$ file = new Nette \PhpGenerator \PhpFile ();
58
58
$ file ->setStrictTypes ();
59
59
60
- $ file ->addClass ($ invalidClassName );
60
+ $ class = $ file ->addClass ($ invalidClassName );
61
+
62
+ $ class ->addProperty ('errors ' )
63
+ ->setPublic ()
64
+ ->setValue (
65
+ array_map (
66
+ static fn ($ error ) => $ error ->toResponse (),
67
+ $ e ->errors ,
68
+ ),
69
+ );
61
70
62
71
Nette \Utils \FileSystem::write (
63
72
"{$ this ->generatedDir }/ {$ invalidClassName }.php " ,
You can’t perform that action at this time.
0 commit comments