diff --git a/src/V2/Parsing/Inference/FailedInferenceResponse.php b/src/V2/Parsing/Inference/FailedInferenceResponse.php new file mode 100644 index 00000000..b64a791e --- /dev/null +++ b/src/V2/Parsing/Inference/FailedInferenceResponse.php @@ -0,0 +1,60 @@ +> $rawResponse Raw server response array. + * @throws Exception if the date can't be constructed. + */ + public function __construct(array $rawResponse) + { + parent::__construct($rawResponse); + + $this->inferenceId = $rawResponse["inference_id"]; + $this->modelId = $rawResponse["model_id"]; + $this->fileName = $rawResponse["file_name"]; + $this->fileAlias = $rawResponse["file_alias"]; + $this->error = new ErrorResponse($rawResponse["error"]); + $this->createdAt = new DateTimeImmutable($rawResponse["created_at"]); + } +} diff --git a/tests/V2/Parsing/FailedInferenceResponseTest.php b/tests/V2/Parsing/FailedInferenceResponseTest.php new file mode 100644 index 00000000..551d79bf --- /dev/null +++ b/tests/V2/Parsing/FailedInferenceResponseTest.php @@ -0,0 +1,41 @@ +inferenceId); + self::assertSame("default_sample.jpg", $response->fileName); + self::assertSame("dummy-alias.jpg", $response->fileAlias); + self::assertInstanceOf(DateTimeImmutable::class, $response->createdAt); + self::assertNotNull($response->error); + self::assertInstanceOf(ErrorResponse::class, $response->error); + self::assertSame(500, $response->error->status); + self::assertSame("500-012", $response->error->code); + } +} diff --git a/tests/resources b/tests/resources index 13093f3a..e41ab97c 160000 --- a/tests/resources +++ b/tests/resources @@ -1 +1 @@ -Subproject commit 13093f3a48de212ef26889df71199c1a2a9d1478 +Subproject commit e41ab97c2833f15ea5c4edf221c2d197d212f632