EntryTest.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?php
  2. namespace Qiniu\Tests;
  3. use PHPUnit\Framework\TestCase;
  4. use Qiniu;
  5. class EntryTest extends TestCase
  6. {
  7. public function testNormal()
  8. {
  9. $bucket = 'qiniuphotos';
  10. $key = 'gogopher.jpg';
  11. $encodeEntryURI = Qiniu\entry($bucket, $key);
  12. $this->assertEquals('cWluaXVwaG90b3M6Z29nb3BoZXIuanBn', $encodeEntryURI);
  13. }
  14. public function testKeyEmpty()
  15. {
  16. $bucket = 'qiniuphotos';
  17. $key = '';
  18. $encodeEntryURI = Qiniu\entry($bucket, $key);
  19. $this->assertEquals('cWluaXVwaG90b3M6', $encodeEntryURI);
  20. }
  21. public function testKeyNull()
  22. {
  23. $bucket = 'qiniuphotos';
  24. $key = null;
  25. $encodeEntryURI = Qiniu\entry($bucket, $key);
  26. $this->assertEquals('cWluaXVwaG90b3M=', $encodeEntryURI);
  27. }
  28. public function testKeyNeedReplacePlusSymbol()
  29. {
  30. $bucket = 'qiniuphotos';
  31. $key = '012ts>a';
  32. $encodeEntryURI = Qiniu\entry($bucket, $key);
  33. $this->assertEquals('cWluaXVwaG90b3M6MDEydHM-YQ==', $encodeEntryURI);
  34. }
  35. public function testKeyNeedReplaceSlashSymbol()
  36. {
  37. $bucket = 'qiniuphotos';
  38. $key = '012ts?a';
  39. $encodeEntryURI = Qiniu\entry($bucket, $key);
  40. $this->assertEquals('cWluaXVwaG90b3M6MDEydHM_YQ==', $encodeEntryURI);
  41. }
  42. public function testDecodeEntry()
  43. {
  44. $entry = 'cWluaXVwaG90b3M6Z29nb3BoZXIuanBn';
  45. list($bucket, $key) = Qiniu\decodeEntry($entry);
  46. $this->assertEquals('qiniuphotos', $bucket);
  47. $this->assertEquals('gogopher.jpg', $key);
  48. }
  49. public function testDecodeEntryWithEmptyKey()
  50. {
  51. $entry = 'cWluaXVwaG90b3M6';
  52. list($bucket, $key) = Qiniu\decodeEntry($entry);
  53. $this->assertEquals('qiniuphotos', $bucket);
  54. $this->assertEquals('', $key);
  55. }
  56. public function testDecodeEntryWithNullKey()
  57. {
  58. $entry = 'cWluaXVwaG90b3M=';
  59. list($bucket, $key) = Qiniu\decodeEntry($entry);
  60. $this->assertEquals('qiniuphotos', $bucket);
  61. $this->assertNull($key);
  62. }
  63. public function testDecodeEntryWithPlusSymbol()
  64. {
  65. $entry = 'cWluaXVwaG90b3M6MDEydHM-YQ==';
  66. list($bucket, $key) = Qiniu\decodeEntry($entry);
  67. $this->assertEquals('qiniuphotos', $bucket);
  68. $this->assertEquals('012ts>a', $key);
  69. }
  70. public function testDecodeEntryWithSlashSymbol()
  71. {
  72. $entry = 'cWluaXVwaG90b3M6MDEydHM_YQ==';
  73. list($bucket, $key) = Qiniu\decodeEntry($entry);
  74. $this->assertEquals('qiniuphotos', $bucket);
  75. $this->assertEquals('012ts?a', $key);
  76. }
  77. }