handler = new IlluminateValidationExceptionHandler; } public function test_it_creates_the_desired_output() { $exception = new ValidationException($this->makeValidator(['foo' => ''], ['foo' => 'required'])); $error = $this->handler->handle($exception); $this->assertEquals(422, $error->getStatusCode()); $this->assertEquals('validation_error', $error->getType()); $this->assertEquals([ [ 'detail' => 'validation.required', 'source' => ['pointer' => '/data/attributes/foo'] ] ], $error->getDetails()); } private function makeValidator($data = [], $rules = []) { $translator = new Translator(new ArrayLoader(), 'en'); $factory = new Factory($translator); return $factory->make($data, $rules); } }