phar_setdefaultstub.phpt 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. --TEST--
  2. Phar: Phar::setDefaultStub() with and without arg, zip-based phar
  3. --EXTENSIONS--
  4. phar
  5. --INI--
  6. phar.readonly=0
  7. --FILE--
  8. <?php
  9. $fname = __DIR__ . '/' . basename(__FILE__, '.php') . '.phar.zip';
  10. $phar = new Phar($fname);
  11. $phar['a.php'] = '<php echo "this is a\n"; ?>';
  12. $phar['b.php'] = '<php echo "this is b\n"; ?>';
  13. $phar->setStub('<?php echo "Hello World\n"; __HALT_COMPILER(); ?>');
  14. var_dump($phar->getStub());
  15. echo "============================================================================\n";
  16. echo "============================================================================\n";
  17. try {
  18. $phar->setDefaultStub();
  19. $phar->stopBuffering();
  20. } catch(Exception $e) {
  21. echo $e->getMessage(). "\n";
  22. }
  23. var_dump($phar->getStub());
  24. echo "============================================================================\n";
  25. echo "============================================================================\n";
  26. try {
  27. $phar->setDefaultStub('my/custom/thingy.php');
  28. } catch(Error $e) {
  29. echo $e->getMessage(). "\n";
  30. }
  31. try {
  32. $phar->stopBuffering();
  33. } catch(Exception $e) {
  34. echo $e->getMessage(). "\n";
  35. }
  36. var_dump($phar->getStub());
  37. echo "============================================================================\n";
  38. echo "============================================================================\n";
  39. try {
  40. $phar->setDefaultStub('my/custom/thingy.php', 'the/web.php');
  41. } catch(ValueError $e) {
  42. echo $e->getMessage(). "\n";
  43. }
  44. try {
  45. $phar->stopBuffering();
  46. } catch(Exception $e) {
  47. echo $e->getMessage(). "\n";
  48. }
  49. var_dump($phar->getStub());
  50. ?>
  51. --CLEAN--
  52. <?php
  53. unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.zip');
  54. ?>
  55. --EXPECT--
  56. string(51) "<?php echo "Hello World\n"; __HALT_COMPILER(); ?>
  57. "
  58. ============================================================================
  59. ============================================================================
  60. string(60) "<?php // zip-based phar archive stub file
  61. __HALT_COMPILER();"
  62. ============================================================================
  63. ============================================================================
  64. Phar::setDefaultStub(): Argument #1 ($index) must be null for a tar- or zip-based phar stub, string given
  65. string(60) "<?php // zip-based phar archive stub file
  66. __HALT_COMPILER();"
  67. ============================================================================
  68. ============================================================================
  69. Phar::setDefaultStub(): Argument #1 ($index) must be null for a tar- or zip-based phar stub, string given
  70. string(60) "<?php // zip-based phar archive stub file
  71. __HALT_COMPILER();"