/** * @param Filesystem $files * @param ServiceInterpreterInterface $interpreter * @param ResponseMergerInterface $responseMerger * @param Ssh2SftpConnectionInterface $sshConnection optional */ public function __construct(Filesystem $files = null, ServiceInterpreterInterface $interpreter = null, ResponseMergerInterface $responseMerger = null, Ssh2SftpConnectionInterface $sshConnection = null) { if (!is_null($sshConnection)) { $this->ssh = $sshConnection; } parent::__construct($files, $interpreter, $responseMerger); }
/** * @test */ function it_throws_an_exception_on_invalid_config() { $service = new MultiFileService(); try { $service->config(['fingerprint' => ['not a string'], 'path' => false, 'local_path' => true, 'pattern' => ['not a string']]); $this->fail('Expecting ServiceConfigurationException'); } catch (ServiceConfigurationException $e) { $errors = $e->getErrors(); foreach (['fingerprint', 'path', 'local_path', 'pattern'] as $key) { $this->assertArrayHasKey($key, $errors, 'Missing validation error for: ' . $key); } } }