public function testPostFile() { $file = new PostFile('file', fopen(__FILE__, 'r')); $request = $this->getMockBuilder('\\Kintone\\Request')->disableOriginalConstructor()->setMethods(array('postFile'))->getMock(); $request->expects($this->once())->method('postFile')->with('file', $file)->willReturn(new GuzzleResponse(200)); $obj = new File($request); $obj->postFile($file); }
public function action_submit_form() { $ip = Loader::helper('validation/ip'); if (!$ip->check()) { $this->set('error', $ip->getErrorMessage()); return; } $post_data = $_POST['properties']; $file_data = $_FILES['properties']; $this->set('file_data', $file_data); if (!is_array($post_data)) { return; } if (is_array($file_data)) { $valf = Loader::helper('validation/file'); $fh = Loader::helper('file'); foreach ($file_data['tmp_name'] as $field => $filename) { if ($valf->file($filename['value'])) { $name = $file_data['name'][$field]['value']; //$name = $fh->sanitize($name); $uploader = new File($this->getRequestObject()); $postfile = new PostFile('file', fopen($filename['value'], 'r'), $name); $res = $uploader->postFile($postfile); if ($res->isSuccess()) { $post_data[$field] = array('type' => 'FILE', 'value' => array(array('fileKey' => $res->getFileKey(), 'name' => $name))); } } } } $this->set('post_data', $post_data); $record = new Record($this->getRequestObject()); $res = $record->postRecord($this->appID, $post_data); $this->set('result', $res); if ($res->isSuccess()) { $this->set('message', t('Success')); $_POST['properties'] = null; } else { $this->set('error', t('Error %s: %s', $res->getStatusCode(), $res->getMessage())); } }