*/ protected $error_message = 'Can\'t connect to {field}'; /** * (non-PHPdoc) * * @ignore * * @see \mithra62\Validate\RuleInterface::validate() */ public function validate($field, $input, array $params = array()) { try { if ($input == '' || empty($params['0'])) { return false; } $params = $params['0']; if (empty($params['s3_access_key']) || empty($params['s3_secret_key'])) { return false; } $region = $params['s3_region'] ? $params['s3_region'] : ''; $client = m62S3::getRemoteClient($params['s3_access_key'], $params['s3_secret_key'], $region); $client->listBuckets(); return true; } catch (\Exception $e) { return false; } } } $rule = new Connect(); \JaegerApp\Validate::addrule($rule->getName(), array($rule, 'validate'), $rule->getErrorMessage());
/** * Tests the name of the rule */ public function testName() { $dir = new Connect(); $this->assertEquals($dir->getName(), 's3_connect'); }