public function testByteParsing()
 {
     $tests = array('1' => 1, '1k' => 1000, '1K' => 1000, '1kB' => 1000, '1Kb' => 1000, '1KB' => 1000, '1MB' => 1000000, '1GB' => 1000000000, '1.5M' => 1500000, '1 000' => 1000, '1,234.56 KB' => 1234560);
     foreach ($tests as $input => $expect) {
         $this->assertEqual($expect, phabricator_parse_bytes($input), 'phabricator_parse_bytes(' . $input . ')');
     }
     $this->tryTestCases(array('string' => 'string'), array(false), 'phabricator_parse_bytes');
 }
Exemplo n.º 2
0
 private static function validateFileSize($size)
 {
     $limit = PhabricatorEnv::getEnvConfig('storage.upload-size-limit');
     if (!$limit) {
         return;
     }
     $limit = phabricator_parse_bytes($limit);
     if ($size > $limit) {
         throw new PhabricatorFileUploadException(-1000);
     }
 }
 public static function renderUploadLimit()
 {
     $limit = PhabricatorEnv::getEnvConfig('storage.upload-size-limit');
     $limit = phabricator_parse_bytes($limit);
     if ($limit) {
         $formatted = phabricator_format_bytes($limit);
         return 'Maximum file size: ' . phutil_escape_html($formatted);
     }
     $doc_href = PhabricatorEnv::getDocLink('article/Configuring_File_Upload_Limits.html');
     $doc_link = phutil_render_tag('a', array('href' => $doc_href, 'target' => '_blank'), 'Configuring File Upload Limits');
     return 'Upload limit is not configured, see ' . $doc_link . '.';
 }