dependabot-composer 0.98.36 → 0.98.37

Sign up to get free protection for your applications and to get access to all the features.
Files changed (900) hide show
  1. checksums.yaml +4 -4
  2. metadata +3 -901
  3. data/helpers/vendor/autoload.php +0 -7
  4. data/helpers/vendor/bin/composer +0 -1
  5. data/helpers/vendor/bin/jsonlint +0 -1
  6. data/helpers/vendor/bin/validate-json +0 -1
  7. data/helpers/vendor/composer/ClassLoader.php +0 -445
  8. data/helpers/vendor/composer/LICENSE +0 -21
  9. data/helpers/vendor/composer/autoload_classmap.php +0 -9
  10. data/helpers/vendor/composer/autoload_files.php +0 -11
  11. data/helpers/vendor/composer/autoload_namespaces.php +0 -9
  12. data/helpers/vendor/composer/autoload_psr4.php +0 -26
  13. data/helpers/vendor/composer/autoload_real.php +0 -70
  14. data/helpers/vendor/composer/autoload_static.php +0 -128
  15. data/helpers/vendor/composer/ca-bundle/LICENSE +0 -19
  16. data/helpers/vendor/composer/ca-bundle/README.md +0 -85
  17. data/helpers/vendor/composer/ca-bundle/composer.json +0 -54
  18. data/helpers/vendor/composer/ca-bundle/res/cacert.pem +0 -3240
  19. data/helpers/vendor/composer/ca-bundle/src/CaBundle.php +0 -308
  20. data/helpers/vendor/composer/composer/.gitattributes +0 -12
  21. data/helpers/vendor/composer/composer/.github/CONTRIBUTING.md +0 -59
  22. data/helpers/vendor/composer/composer/.github/ISSUE_TEMPLATE.md +0 -25
  23. data/helpers/vendor/composer/composer/.gitignore +0 -11
  24. data/helpers/vendor/composer/composer/.php_cs +0 -58
  25. data/helpers/vendor/composer/composer/.travis.yml +0 -76
  26. data/helpers/vendor/composer/composer/CHANGELOG.md +0 -767
  27. data/helpers/vendor/composer/composer/LICENSE +0 -19
  28. data/helpers/vendor/composer/composer/PORTING_INFO +0 -39
  29. data/helpers/vendor/composer/composer/README.md +0 -62
  30. data/helpers/vendor/composer/composer/appveyor.yml +0 -33
  31. data/helpers/vendor/composer/composer/bin/compile +0 -31
  32. data/helpers/vendor/composer/composer/bin/composer +0 -57
  33. data/helpers/vendor/composer/composer/composer.json +0 -81
  34. data/helpers/vendor/composer/composer/composer.lock +0 -1800
  35. data/helpers/vendor/composer/composer/doc/00-intro.md +0 -156
  36. data/helpers/vendor/composer/composer/doc/01-basic-usage.md +0 -266
  37. data/helpers/vendor/composer/composer/doc/02-libraries.md +0 -153
  38. data/helpers/vendor/composer/composer/doc/03-cli.md +0 -931
  39. data/helpers/vendor/composer/composer/doc/04-schema.md +0 -924
  40. data/helpers/vendor/composer/composer/doc/05-repositories.md +0 -713
  41. data/helpers/vendor/composer/composer/doc/06-config.md +0 -277
  42. data/helpers/vendor/composer/composer/doc/07-community.md +0 -35
  43. data/helpers/vendor/composer/composer/doc/articles/aliases.md +0 -105
  44. data/helpers/vendor/composer/composer/doc/articles/autoloader-optimization.md +0 -111
  45. data/helpers/vendor/composer/composer/doc/articles/custom-installers.md +0 -204
  46. data/helpers/vendor/composer/composer/doc/articles/handling-private-packages-with-satis.md +0 -343
  47. data/helpers/vendor/composer/composer/doc/articles/http-basic-authentication.md +0 -59
  48. data/helpers/vendor/composer/composer/doc/articles/plugins.md +0 -285
  49. data/helpers/vendor/composer/composer/doc/articles/scripts.md +0 -304
  50. data/helpers/vendor/composer/composer/doc/articles/troubleshooting.md +0 -309
  51. data/helpers/vendor/composer/composer/doc/articles/vendor-binaries.md +0 -110
  52. data/helpers/vendor/composer/composer/doc/articles/versions.md +0 -230
  53. data/helpers/vendor/composer/composer/doc/dev/DefaultPolicy.md +0 -55
  54. data/helpers/vendor/composer/composer/doc/faqs/how-do-i-install-a-package-to-a-custom-path-for-my-framework.md +0 -50
  55. data/helpers/vendor/composer/composer/doc/faqs/how-to-install-composer-programmatically.md +0 -42
  56. data/helpers/vendor/composer/composer/doc/faqs/how-to-install-untrusted-packages-safely.md +0 -19
  57. data/helpers/vendor/composer/composer/doc/faqs/should-i-commit-the-dependencies-in-my-vendor-directory.md +0 -32
  58. data/helpers/vendor/composer/composer/doc/faqs/which-version-numbering-system-does-composer-itself-use.md +0 -4
  59. data/helpers/vendor/composer/composer/doc/faqs/why-are-unbound-version-constraints-a-bad-idea.md +0 -21
  60. data/helpers/vendor/composer/composer/doc/faqs/why-are-version-constraints-combining-comparisons-and-wildcards-a-bad-idea.md +0 -21
  61. data/helpers/vendor/composer/composer/doc/faqs/why-can't-composer-load-repositories-recursively.md +0 -35
  62. data/helpers/vendor/composer/composer/doc/fixtures/fixtures.md +0 -22
  63. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-plain/packages.json +0 -158
  64. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/bar/baz$923363b3c22e73abb2e3fd891c8156dd4d0821a97fd3e428bc910833e3e46dbe.json +0 -50
  65. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/foo/bar$4baabb3303afa3e34a4d3af18fb138e5f3b79029c1f8d9ab5b477ea15776ba0a.json +0 -77
  66. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/gar/nix$5d210670cb46c8364c8e3fb449967b9bea558b971e5b082f330ae4f1d484c321.json +0 -50
  67. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/provider-active$1893a061e579543822389ecd12d791c612db0c05e22d90e9286e233cacd86ed8.json +0 -16
  68. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/p/qux/quux$c142d1a07ca354be46b613f59f1d601923a5a00ccc5fcce50a77ecdd461eb72d.json +0 -22
  69. data/helpers/vendor/composer/composer/doc/fixtures/repo-composer-with-providers/packages.json +0 -9
  70. data/helpers/vendor/composer/composer/phpunit.xml.dist +0 -35
  71. data/helpers/vendor/composer/composer/res/composer-repository-schema.json +0 -110
  72. data/helpers/vendor/composer/composer/res/composer-schema.json +0 -843
  73. data/helpers/vendor/composer/composer/src/Composer/Autoload/AutoloadGenerator.php +0 -1057
  74. data/helpers/vendor/composer/composer/src/Composer/Autoload/ClassLoader.php +0 -445
  75. data/helpers/vendor/composer/composer/src/Composer/Autoload/ClassMapGenerator.php +0 -222
  76. data/helpers/vendor/composer/composer/src/Composer/Cache.php +0 -251
  77. data/helpers/vendor/composer/composer/src/Composer/Command/AboutCommand.php +0 -46
  78. data/helpers/vendor/composer/composer/src/Composer/Command/ArchiveCommand.php +0 -165
  79. data/helpers/vendor/composer/composer/src/Composer/Command/BaseCommand.php +0 -181
  80. data/helpers/vendor/composer/composer/src/Composer/Command/BaseDependencyCommand.php +0 -255
  81. data/helpers/vendor/composer/composer/src/Composer/Command/CheckPlatformReqsCommand.php +0 -156
  82. data/helpers/vendor/composer/composer/src/Composer/Command/ClearCacheCommand.php +0 -72
  83. data/helpers/vendor/composer/composer/src/Composer/Command/ConfigCommand.php +0 -704
  84. data/helpers/vendor/composer/composer/src/Composer/Command/CreateProjectCommand.php +0 -384
  85. data/helpers/vendor/composer/composer/src/Composer/Command/DependsCommand.php +0 -56
  86. data/helpers/vendor/composer/composer/src/Composer/Command/DiagnoseCommand.php +0 -728
  87. data/helpers/vendor/composer/composer/src/Composer/Command/DumpAutoloadCommand.php +0 -86
  88. data/helpers/vendor/composer/composer/src/Composer/Command/ExecCommand.php +0 -90
  89. data/helpers/vendor/composer/composer/src/Composer/Command/GlobalCommand.php +0 -110
  90. data/helpers/vendor/composer/composer/src/Composer/Command/HomeCommand.php +0 -166
  91. data/helpers/vendor/composer/composer/src/Composer/Command/InitCommand.php +0 -795
  92. data/helpers/vendor/composer/composer/src/Composer/Command/InstallCommand.php +0 -123
  93. data/helpers/vendor/composer/composer/src/Composer/Command/LicensesCommand.php +0 -158
  94. data/helpers/vendor/composer/composer/src/Composer/Command/OutdatedCommand.php +0 -95
  95. data/helpers/vendor/composer/composer/src/Composer/Command/ProhibitsCommand.php +0 -56
  96. data/helpers/vendor/composer/composer/src/Composer/Command/RemoveCommand.php +0 -162
  97. data/helpers/vendor/composer/composer/src/Composer/Command/RequireCommand.php +0 -243
  98. data/helpers/vendor/composer/composer/src/Composer/Command/RunScriptCommand.php +0 -139
  99. data/helpers/vendor/composer/composer/src/Composer/Command/ScriptAliasCommand.php +0 -64
  100. data/helpers/vendor/composer/composer/src/Composer/Command/SearchCommand.php +0 -82
  101. data/helpers/vendor/composer/composer/src/Composer/Command/SelfUpdateCommand.php +0 -404
  102. data/helpers/vendor/composer/composer/src/Composer/Command/ShowCommand.php +0 -1014
  103. data/helpers/vendor/composer/composer/src/Composer/Command/StatusCommand.php +0 -213
  104. data/helpers/vendor/composer/composer/src/Composer/Command/SuggestsCommand.php +0 -151
  105. data/helpers/vendor/composer/composer/src/Composer/Command/UpdateCommand.php +0 -227
  106. data/helpers/vendor/composer/composer/src/Composer/Command/ValidateCommand.php +0 -171
  107. data/helpers/vendor/composer/composer/src/Composer/Compiler.php +0 -283
  108. data/helpers/vendor/composer/composer/src/Composer/Composer.php +0 -246
  109. data/helpers/vendor/composer/composer/src/Composer/Config.php +0 -455
  110. data/helpers/vendor/composer/composer/src/Composer/Config/ConfigSourceInterface.php +0 -91
  111. data/helpers/vendor/composer/composer/src/Composer/Config/JsonConfigSource.php +0 -267
  112. data/helpers/vendor/composer/composer/src/Composer/Console/Application.php +0 -481
  113. data/helpers/vendor/composer/composer/src/Composer/Console/HtmlOutputFormatter.php +0 -90
  114. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Decisions.php +0 -199
  115. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/DefaultPolicy.php +0 -285
  116. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/GenericRule.php +0 -91
  117. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/InstallOperation.php +0 -66
  118. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/MarkAliasInstalledOperation.php +0 -67
  119. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/MarkAliasUninstalledOperation.php +0 -67
  120. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/OperationInterface.php +0 -42
  121. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/SolverOperation.php +0 -50
  122. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/UninstallOperation.php +0 -66
  123. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Operation/UpdateOperation.php +0 -80
  124. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/PolicyInterface.php +0 -27
  125. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Pool.php +0 -378
  126. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Problem.php +0 -253
  127. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Request.php +0 -78
  128. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Rule.php +0 -263
  129. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Rule2Literals.php +0 -113
  130. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleSet.php +0 -176
  131. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleSetGenerator.php +0 -372
  132. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleSetIterator.php +0 -94
  133. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleWatchChain.php +0 -52
  134. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleWatchGraph.php +0 -144
  135. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/RuleWatchNode.php +0 -113
  136. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Solver.php +0 -868
  137. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/SolverBugException.php +0 -27
  138. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/SolverProblemsException.php +0 -88
  139. data/helpers/vendor/composer/composer/src/Composer/DependencyResolver/Transaction.php +0 -244
  140. data/helpers/vendor/composer/composer/src/Composer/Downloader/ArchiveDownloader.php +0 -135
  141. data/helpers/vendor/composer/composer/src/Composer/Downloader/ChangeReportInterface.php +0 -32
  142. data/helpers/vendor/composer/composer/src/Composer/Downloader/DownloadManager.php +0 -325
  143. data/helpers/vendor/composer/composer/src/Composer/Downloader/DownloaderInterface.php +0 -64
  144. data/helpers/vendor/composer/composer/src/Composer/Downloader/DvcsDownloaderInterface.php +0 -32
  145. data/helpers/vendor/composer/composer/src/Composer/Downloader/FileDownloader.php +0 -322
  146. data/helpers/vendor/composer/composer/src/Composer/Downloader/FilesystemException.php +0 -26
  147. data/helpers/vendor/composer/composer/src/Composer/Downloader/FossilDownloader.php +0 -116
  148. data/helpers/vendor/composer/composer/src/Composer/Downloader/GitDownloader.php +0 -516
  149. data/helpers/vendor/composer/composer/src/Composer/Downloader/GzipDownloader.php +0 -84
  150. data/helpers/vendor/composer/composer/src/Composer/Downloader/HgDownloader.php +0 -100
  151. data/helpers/vendor/composer/composer/src/Composer/Downloader/PathDownloader.php +0 -175
  152. data/helpers/vendor/composer/composer/src/Composer/Downloader/PearPackageExtractor.php +0 -266
  153. data/helpers/vendor/composer/composer/src/Composer/Downloader/PerforceDownloader.php +0 -114
  154. data/helpers/vendor/composer/composer/src/Composer/Downloader/PharDownloader.php +0 -36
  155. data/helpers/vendor/composer/composer/src/Composer/Downloader/RarDownloader.php +0 -91
  156. data/helpers/vendor/composer/composer/src/Composer/Downloader/SvnDownloader.php +0 -225
  157. data/helpers/vendor/composer/composer/src/Composer/Downloader/TarDownloader.php +0 -31
  158. data/helpers/vendor/composer/composer/src/Composer/Downloader/TransportException.php +0 -53
  159. data/helpers/vendor/composer/composer/src/Composer/Downloader/VcsCapableDownloaderInterface.php +0 -32
  160. data/helpers/vendor/composer/composer/src/Composer/Downloader/VcsDownloader.php +0 -293
  161. data/helpers/vendor/composer/composer/src/Composer/Downloader/XzDownloader.php +0 -60
  162. data/helpers/vendor/composer/composer/src/Composer/Downloader/ZipDownloader.php +0 -230
  163. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/Event.php +0 -103
  164. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/EventDispatcher.php +0 -536
  165. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/EventSubscriberInterface.php +0 -48
  166. data/helpers/vendor/composer/composer/src/Composer/EventDispatcher/ScriptExecutionException.php +0 -20
  167. data/helpers/vendor/composer/composer/src/Composer/Exception/NoSslException.php +0 -20
  168. data/helpers/vendor/composer/composer/src/Composer/Factory.php +0 -653
  169. data/helpers/vendor/composer/composer/src/Composer/IO/BaseIO.php +0 -255
  170. data/helpers/vendor/composer/composer/src/Composer/IO/BufferIO.php +0 -59
  171. data/helpers/vendor/composer/composer/src/Composer/IO/ConsoleIO.php +0 -322
  172. data/helpers/vendor/composer/composer/src/Composer/IO/IOInterface.php +0 -207
  173. data/helpers/vendor/composer/composer/src/Composer/IO/NullIO.php +0 -129
  174. data/helpers/vendor/composer/composer/src/Composer/Installer.php +0 -1793
  175. data/helpers/vendor/composer/composer/src/Composer/Installer/BinaryInstaller.php +0 -210
  176. data/helpers/vendor/composer/composer/src/Composer/Installer/BinaryPresenceInterface.php +0 -30
  177. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallationManager.php +0 -326
  178. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallerEvent.php +0 -161
  179. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallerEvents.php +0 -43
  180. data/helpers/vendor/composer/composer/src/Composer/Installer/InstallerInterface.php +0 -79
  181. data/helpers/vendor/composer/composer/src/Composer/Installer/LibraryInstaller.php +0 -232
  182. data/helpers/vendor/composer/composer/src/Composer/Installer/MetapackageInstaller.php +0 -81
  183. data/helpers/vendor/composer/composer/src/Composer/Installer/NoopInstaller.php +0 -88
  184. data/helpers/vendor/composer/composer/src/Composer/Installer/PackageEvent.php +0 -65
  185. data/helpers/vendor/composer/composer/src/Composer/Installer/PackageEvents.php +0 -75
  186. data/helpers/vendor/composer/composer/src/Composer/Installer/PearBinaryInstaller.php +0 -144
  187. data/helpers/vendor/composer/composer/src/Composer/Installer/PearInstaller.php +0 -84
  188. data/helpers/vendor/composer/composer/src/Composer/Installer/PluginInstaller.php +0 -84
  189. data/helpers/vendor/composer/composer/src/Composer/Installer/ProjectInstaller.php +0 -99
  190. data/helpers/vendor/composer/composer/src/Composer/Installer/SuggestedPackagesReporter.php +0 -151
  191. data/helpers/vendor/composer/composer/src/Composer/Json/JsonFile.php +0 -301
  192. data/helpers/vendor/composer/composer/src/Composer/Json/JsonFormatter.php +0 -134
  193. data/helpers/vendor/composer/composer/src/Composer/Json/JsonManipulator.php +0 -521
  194. data/helpers/vendor/composer/composer/src/Composer/Json/JsonValidationException.php +0 -34
  195. data/helpers/vendor/composer/composer/src/Composer/Package/AliasPackage.php +0 -404
  196. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchivableFilesFilter.php +0 -44
  197. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchivableFilesFinder.php +0 -105
  198. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchiveManager.php +0 -178
  199. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ArchiverInterface.php +0 -43
  200. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/BaseExcludeFilter.php +0 -148
  201. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ComposerExcludeFilter.php +0 -31
  202. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/GitExcludeFilter.php +0 -79
  203. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/HgExcludeFilter.php +0 -107
  204. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/PharArchiver.php +0 -97
  205. data/helpers/vendor/composer/composer/src/Composer/Package/Archiver/ZipArchiver.php +0 -74
  206. data/helpers/vendor/composer/composer/src/Composer/Package/BasePackage.php +0 -250
  207. data/helpers/vendor/composer/composer/src/Composer/Package/Comparer/Comparer.php +0 -129
  208. data/helpers/vendor/composer/composer/src/Composer/Package/CompletePackage.php +0 -199
  209. data/helpers/vendor/composer/composer/src/Composer/Package/CompletePackageInterface.php +0 -95
  210. data/helpers/vendor/composer/composer/src/Composer/Package/Dumper/ArrayDumper.php +0 -145
  211. data/helpers/vendor/composer/composer/src/Composer/Package/Link.php +0 -128
  212. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/EmptyConstraint.php +0 -24
  213. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/LinkConstraintInterface.php +0 -24
  214. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/MultiConstraint.php +0 -24
  215. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/SpecificConstraint.php +0 -24
  216. data/helpers/vendor/composer/composer/src/Composer/Package/LinkConstraint/VersionConstraint.php +0 -24
  217. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/ArrayLoader.php +0 -290
  218. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/InvalidPackageException.php +0 -46
  219. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/JsonLoader.php +0 -45
  220. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/LoaderInterface.php +0 -30
  221. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/RootPackageLoader.php +0 -241
  222. data/helpers/vendor/composer/composer/src/Composer/Package/Loader/ValidatingArrayLoader.php +0 -461
  223. data/helpers/vendor/composer/composer/src/Composer/Package/Locker.php +0 -438
  224. data/helpers/vendor/composer/composer/src/Composer/Package/Package.php +0 -612
  225. data/helpers/vendor/composer/composer/src/Composer/Package/PackageInterface.php +0 -361
  226. data/helpers/vendor/composer/composer/src/Composer/Package/RootAliasPackage.php +0 -173
  227. data/helpers/vendor/composer/composer/src/Composer/Package/RootPackage.php +0 -136
  228. data/helpers/vendor/composer/composer/src/Composer/Package/RootPackageInterface.php +0 -142
  229. data/helpers/vendor/composer/composer/src/Composer/Package/Version/VersionGuesser.php +0 -302
  230. data/helpers/vendor/composer/composer/src/Composer/Package/Version/VersionParser.php +0 -81
  231. data/helpers/vendor/composer/composer/src/Composer/Package/Version/VersionSelector.php +0 -176
  232. data/helpers/vendor/composer/composer/src/Composer/Plugin/Capability/Capability.php +0 -23
  233. data/helpers/vendor/composer/composer/src/Composer/Plugin/Capability/CommandProvider.php +0 -33
  234. data/helpers/vendor/composer/composer/src/Composer/Plugin/Capable.php +0 -43
  235. data/helpers/vendor/composer/composer/src/Composer/Plugin/CommandEvent.php +0 -88
  236. data/helpers/vendor/composer/composer/src/Composer/Plugin/PluginEvents.php +0 -61
  237. data/helpers/vendor/composer/composer/src/Composer/Plugin/PluginInterface.php +0 -39
  238. data/helpers/vendor/composer/composer/src/Composer/Plugin/PluginManager.php +0 -403
  239. data/helpers/vendor/composer/composer/src/Composer/Plugin/PreCommandRunEvent.php +0 -68
  240. data/helpers/vendor/composer/composer/src/Composer/Plugin/PreFileDownloadEvent.php +0 -78
  241. data/helpers/vendor/composer/composer/src/Composer/Question/StrictConfirmationQuestion.php +0 -94
  242. data/helpers/vendor/composer/composer/src/Composer/Repository/ArrayRepository.php +0 -208
  243. data/helpers/vendor/composer/composer/src/Composer/Repository/ArtifactRepository.php +0 -167
  244. data/helpers/vendor/composer/composer/src/Composer/Repository/BaseRepository.php +0 -157
  245. data/helpers/vendor/composer/composer/src/Composer/Repository/ComposerRepository.php +0 -838
  246. data/helpers/vendor/composer/composer/src/Composer/Repository/CompositeRepository.php +0 -164
  247. data/helpers/vendor/composer/composer/src/Composer/Repository/ConfigurableRepositoryInterface.php +0 -23
  248. data/helpers/vendor/composer/composer/src/Composer/Repository/FilesystemRepository.php +0 -92
  249. data/helpers/vendor/composer/composer/src/Composer/Repository/InstalledArrayRepository.php +0 -24
  250. data/helpers/vendor/composer/composer/src/Composer/Repository/InstalledFilesystemRepository.php +0 -22
  251. data/helpers/vendor/composer/composer/src/Composer/Repository/InstalledRepositoryInterface.php +0 -24
  252. data/helpers/vendor/composer/composer/src/Composer/Repository/InvalidRepositoryException.php +0 -22
  253. data/helpers/vendor/composer/composer/src/Composer/Repository/PackageRepository.php +0 -61
  254. data/helpers/vendor/composer/composer/src/Composer/Repository/PathRepository.php +0 -190
  255. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/BaseChannelReader.php +0 -82
  256. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelInfo.php +0 -67
  257. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelReader.php +0 -101
  258. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelRest10Reader.php +0 -164
  259. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ChannelRest11Reader.php +0 -139
  260. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/DependencyConstraint.php +0 -60
  261. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/DependencyInfo.php +0 -50
  262. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/PackageDependencyParser.php +0 -317
  263. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/PackageInfo.php +0 -94
  264. data/helpers/vendor/composer/composer/src/Composer/Repository/Pear/ReleaseInfo.php +0 -50
  265. data/helpers/vendor/composer/composer/src/Composer/Repository/PearRepository.php +0 -198
  266. data/helpers/vendor/composer/composer/src/Composer/Repository/PlatformRepository.php +0 -315
  267. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositoryFactory.php +0 -166
  268. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositoryInterface.php +0 -74
  269. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositoryManager.php +0 -177
  270. data/helpers/vendor/composer/composer/src/Composer/Repository/RepositorySecurityException.php +0 -22
  271. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/BitbucketDriver.php +0 -443
  272. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/FossilDriver.php +0 -238
  273. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitBitbucketDriver.php +0 -91
  274. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitDriver.php +0 -222
  275. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitHubDriver.php +0 -472
  276. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/GitLabDriver.php +0 -511
  277. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/HgBitbucketDriver.php +0 -91
  278. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/HgDriver.php +0 -230
  279. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/PerforceDriver.php +0 -181
  280. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/SvnDriver.php +0 -397
  281. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/VcsDriver.php +0 -175
  282. data/helpers/vendor/composer/composer/src/Composer/Repository/Vcs/VcsDriverInterface.php +0 -117
  283. data/helpers/vendor/composer/composer/src/Composer/Repository/VcsRepository.php +0 -377
  284. data/helpers/vendor/composer/composer/src/Composer/Repository/VersionCacheInterface.php +0 -23
  285. data/helpers/vendor/composer/composer/src/Composer/Repository/WritableArrayRepository.php +0 -66
  286. data/helpers/vendor/composer/composer/src/Composer/Repository/WritableRepositoryInterface.php +0 -54
  287. data/helpers/vendor/composer/composer/src/Composer/Script/CommandEvent.php +0 -22
  288. data/helpers/vendor/composer/composer/src/Composer/Script/Event.php +0 -89
  289. data/helpers/vendor/composer/composer/src/Composer/Script/PackageEvent.php +0 -24
  290. data/helpers/vendor/composer/composer/src/Composer/Script/ScriptEvents.php +0 -193
  291. data/helpers/vendor/composer/composer/src/Composer/SelfUpdate/Keys.php +0 -36
  292. data/helpers/vendor/composer/composer/src/Composer/SelfUpdate/Versions.php +0 -75
  293. data/helpers/vendor/composer/composer/src/Composer/Util/AuthHelper.php +0 -63
  294. data/helpers/vendor/composer/composer/src/Composer/Util/Bitbucket.php +0 -245
  295. data/helpers/vendor/composer/composer/src/Composer/Util/ComposerMirror.php +0 -57
  296. data/helpers/vendor/composer/composer/src/Composer/Util/ConfigValidator.php +0 -191
  297. data/helpers/vendor/composer/composer/src/Composer/Util/ErrorHandler.php +0 -79
  298. data/helpers/vendor/composer/composer/src/Composer/Util/Filesystem.php +0 -700
  299. data/helpers/vendor/composer/composer/src/Composer/Util/Git.php +0 -347
  300. data/helpers/vendor/composer/composer/src/Composer/Util/GitHub.php +0 -180
  301. data/helpers/vendor/composer/composer/src/Composer/Util/GitLab.php +0 -163
  302. data/helpers/vendor/composer/composer/src/Composer/Util/Hg.php +0 -94
  303. data/helpers/vendor/composer/composer/src/Composer/Util/IniHelper.php +0 -64
  304. data/helpers/vendor/composer/composer/src/Composer/Util/NoProxyPattern.php +0 -147
  305. data/helpers/vendor/composer/composer/src/Composer/Util/Perforce.php +0 -575
  306. data/helpers/vendor/composer/composer/src/Composer/Util/Platform.php +0 -92
  307. data/helpers/vendor/composer/composer/src/Composer/Util/ProcessExecutor.php +0 -186
  308. data/helpers/vendor/composer/composer/src/Composer/Util/RemoteFilesystem.php +0 -1093
  309. data/helpers/vendor/composer/composer/src/Composer/Util/Silencer.php +0 -78
  310. data/helpers/vendor/composer/composer/src/Composer/Util/SpdxLicense.php +0 -24
  311. data/helpers/vendor/composer/composer/src/Composer/Util/StreamContextFactory.php +0 -177
  312. data/helpers/vendor/composer/composer/src/Composer/Util/Svn.php +0 -381
  313. data/helpers/vendor/composer/composer/src/Composer/Util/TlsHelper.php +0 -204
  314. data/helpers/vendor/composer/composer/src/Composer/Util/Url.php +0 -55
  315. data/helpers/vendor/composer/composer/src/Composer/XdebugHandler.php +0 -31
  316. data/helpers/vendor/composer/composer/src/bootstrap.php +0 -24
  317. data/helpers/vendor/composer/installed.json +0 -945
  318. data/helpers/vendor/composer/semver/CHANGELOG.md +0 -66
  319. data/helpers/vendor/composer/semver/LICENSE +0 -19
  320. data/helpers/vendor/composer/semver/README.md +0 -70
  321. data/helpers/vendor/composer/semver/composer.json +0 -58
  322. data/helpers/vendor/composer/semver/src/Comparator.php +0 -111
  323. data/helpers/vendor/composer/semver/src/Constraint/AbstractConstraint.php +0 -63
  324. data/helpers/vendor/composer/semver/src/Constraint/Constraint.php +0 -219
  325. data/helpers/vendor/composer/semver/src/Constraint/ConstraintInterface.php +0 -32
  326. data/helpers/vendor/composer/semver/src/Constraint/EmptyConstraint.php +0 -59
  327. data/helpers/vendor/composer/semver/src/Constraint/MultiConstraint.php +0 -120
  328. data/helpers/vendor/composer/semver/src/Semver.php +0 -127
  329. data/helpers/vendor/composer/semver/src/VersionParser.php +0 -548
  330. data/helpers/vendor/composer/spdx-licenses/.php_cs.dist +0 -59
  331. data/helpers/vendor/composer/spdx-licenses/CHANGELOG.md +0 -84
  332. data/helpers/vendor/composer/spdx-licenses/LICENSE +0 -19
  333. data/helpers/vendor/composer/spdx-licenses/README.md +0 -69
  334. data/helpers/vendor/composer/spdx-licenses/composer.json +0 -57
  335. data/helpers/vendor/composer/spdx-licenses/res/spdx-exceptions.json +0 -101
  336. data/helpers/vendor/composer/spdx-licenses/res/spdx-licenses.json +0 -1907
  337. data/helpers/vendor/composer/spdx-licenses/src/SpdxLicenses.php +0 -343
  338. data/helpers/vendor/composer/xdebug-handler/CHANGELOG.md +0 -51
  339. data/helpers/vendor/composer/xdebug-handler/LICENSE +0 -21
  340. data/helpers/vendor/composer/xdebug-handler/README.md +0 -280
  341. data/helpers/vendor/composer/xdebug-handler/composer.json +0 -40
  342. data/helpers/vendor/composer/xdebug-handler/src/PhpConfig.php +0 -73
  343. data/helpers/vendor/composer/xdebug-handler/src/Process.php +0 -160
  344. data/helpers/vendor/composer/xdebug-handler/src/Status.php +0 -163
  345. data/helpers/vendor/composer/xdebug-handler/src/XdebugHandler.php +0 -540
  346. data/helpers/vendor/justinrainbow/json-schema/.gitattributes +0 -5
  347. data/helpers/vendor/justinrainbow/json-schema/.php_cs.dist +0 -33
  348. data/helpers/vendor/justinrainbow/json-schema/LICENSE +0 -21
  349. data/helpers/vendor/justinrainbow/json-schema/README.md +0 -206
  350. data/helpers/vendor/justinrainbow/json-schema/bin/validate-json +0 -251
  351. data/helpers/vendor/justinrainbow/json-schema/composer.json +0 -65
  352. data/helpers/vendor/justinrainbow/json-schema/demo/README.md +0 -14
  353. data/helpers/vendor/justinrainbow/json-schema/demo/data.json +0 -3
  354. data/helpers/vendor/justinrainbow/json-schema/demo/demo.php +0 -18
  355. data/helpers/vendor/justinrainbow/json-schema/demo/schema.json +0 -3
  356. data/helpers/vendor/justinrainbow/json-schema/dist/schema/json-schema-draft-03.json +0 -174
  357. data/helpers/vendor/justinrainbow/json-schema/dist/schema/json-schema-draft-04.json +0 -150
  358. data/helpers/vendor/justinrainbow/json-schema/phpunit.xml.dist +0 -26
  359. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/BaseConstraint.php +0 -148
  360. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/CollectionConstraint.php +0 -147
  361. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/Constraint.php +0 -213
  362. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/ConstraintInterface.php +0 -65
  363. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/EnumConstraint.php +0 -54
  364. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/Factory.php +0 -220
  365. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/FormatConstraint.php +0 -214
  366. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/NumberConstraint.php +0 -86
  367. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/ObjectConstraint.php +0 -192
  368. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/SchemaConstraint.php +0 -94
  369. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/StringConstraint.php +0 -60
  370. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeCheck/LooseTypeCheck.php +0 -68
  371. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeCheck/StrictTypeCheck.php +0 -36
  372. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeCheck/TypeCheckInterface.php +0 -18
  373. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/TypeConstraint.php +0 -261
  374. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Constraints/UndefinedConstraint.php +0 -413
  375. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Entity/JsonPointer.php +0 -161
  376. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/ExceptionInterface.php +0 -7
  377. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidArgumentException.php +0 -17
  378. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidConfigException.php +0 -17
  379. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidSchemaException.php +0 -17
  380. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidSchemaMediaTypeException.php +0 -17
  381. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/InvalidSourceUriException.php +0 -17
  382. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/JsonDecodingException.php +0 -40
  383. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/ResourceNotFoundException.php +0 -17
  384. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/RuntimeException.php +0 -17
  385. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/UnresolvableJsonPointerException.php +0 -19
  386. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/UriResolverException.php +0 -17
  387. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Exception/ValidationException.php +0 -14
  388. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Iterator/ObjectIterator.php +0 -149
  389. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Rfc3339.php +0 -30
  390. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/SchemaStorage.php +0 -169
  391. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/SchemaStorageInterface.php +0 -41
  392. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/AbstractRetriever.php +0 -34
  393. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/Curl.php +0 -83
  394. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/FileGetContents.php +0 -93
  395. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/PredefinedArray.php +0 -56
  396. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/Retrievers/UriRetrieverInterface.php +0 -36
  397. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/UriResolver.php +0 -175
  398. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Uri/UriRetriever.php +0 -330
  399. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/UriResolverInterface.php +0 -26
  400. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/UriRetrieverInterface.php +0 -26
  401. data/helpers/vendor/justinrainbow/json-schema/src/JsonSchema/Validator.php +0 -90
  402. data/helpers/vendor/psr/log/.gitignore +0 -1
  403. data/helpers/vendor/psr/log/LICENSE +0 -19
  404. data/helpers/vendor/psr/log/Psr/Log/AbstractLogger.php +0 -128
  405. data/helpers/vendor/psr/log/Psr/Log/InvalidArgumentException.php +0 -7
  406. data/helpers/vendor/psr/log/Psr/Log/LogLevel.php +0 -18
  407. data/helpers/vendor/psr/log/Psr/Log/LoggerAwareInterface.php +0 -18
  408. data/helpers/vendor/psr/log/Psr/Log/LoggerAwareTrait.php +0 -26
  409. data/helpers/vendor/psr/log/Psr/Log/LoggerInterface.php +0 -123
  410. data/helpers/vendor/psr/log/Psr/Log/LoggerTrait.php +0 -140
  411. data/helpers/vendor/psr/log/Psr/Log/NullLogger.php +0 -28
  412. data/helpers/vendor/psr/log/Psr/Log/Test/LoggerInterfaceTest.php +0 -144
  413. data/helpers/vendor/psr/log/Psr/Log/Test/TestLogger.php +0 -146
  414. data/helpers/vendor/psr/log/README.md +0 -52
  415. data/helpers/vendor/psr/log/composer.json +0 -26
  416. data/helpers/vendor/seld/jsonlint/.gitignore +0 -3
  417. data/helpers/vendor/seld/jsonlint/.travis.yml +0 -25
  418. data/helpers/vendor/seld/jsonlint/CHANGELOG.md +0 -66
  419. data/helpers/vendor/seld/jsonlint/LICENSE +0 -19
  420. data/helpers/vendor/seld/jsonlint/README.md +0 -89
  421. data/helpers/vendor/seld/jsonlint/bin/jsonlint +0 -117
  422. data/helpers/vendor/seld/jsonlint/composer.json +0 -24
  423. data/helpers/vendor/seld/jsonlint/phpunit.xml.dist +0 -25
  424. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/DuplicateKeyException.php +0 -26
  425. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/JsonParser.php +0 -502
  426. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/Lexer.php +0 -217
  427. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/ParsingException.php +0 -28
  428. data/helpers/vendor/seld/jsonlint/src/Seld/JsonLint/Undefined.php +0 -16
  429. data/helpers/vendor/seld/jsonlint/tests/JsonParserTest.php +0 -230
  430. data/helpers/vendor/seld/jsonlint/tests/bom.json +0 -6
  431. data/helpers/vendor/seld/jsonlint/tests/bootstrap.php +0 -13
  432. data/helpers/vendor/seld/phar-utils/.gitignore +0 -1
  433. data/helpers/vendor/seld/phar-utils/LICENSE +0 -19
  434. data/helpers/vendor/seld/phar-utils/README.md +0 -39
  435. data/helpers/vendor/seld/phar-utils/composer.json +0 -26
  436. data/helpers/vendor/seld/phar-utils/composer.lock +0 -19
  437. data/helpers/vendor/seld/phar-utils/src/Timestamps.php +0 -192
  438. data/helpers/vendor/symfony/console/.gitignore +0 -3
  439. data/helpers/vendor/symfony/console/Application.php +0 -1174
  440. data/helpers/vendor/symfony/console/CHANGELOG.md +0 -140
  441. data/helpers/vendor/symfony/console/Command/Command.php +0 -654
  442. data/helpers/vendor/symfony/console/Command/HelpCommand.php +0 -81
  443. data/helpers/vendor/symfony/console/Command/ListCommand.php +0 -90
  444. data/helpers/vendor/symfony/console/Command/LockableTrait.php +0 -71
  445. data/helpers/vendor/symfony/console/CommandLoader/CommandLoaderInterface.php +0 -37
  446. data/helpers/vendor/symfony/console/CommandLoader/ContainerCommandLoader.php +0 -55
  447. data/helpers/vendor/symfony/console/CommandLoader/FactoryCommandLoader.php +0 -62
  448. data/helpers/vendor/symfony/console/ConsoleEvents.php +0 -47
  449. data/helpers/vendor/symfony/console/DependencyInjection/AddConsoleCommandPass.php +0 -98
  450. data/helpers/vendor/symfony/console/Descriptor/ApplicationDescription.php +0 -144
  451. data/helpers/vendor/symfony/console/Descriptor/Descriptor.php +0 -107
  452. data/helpers/vendor/symfony/console/Descriptor/DescriptorInterface.php +0 -31
  453. data/helpers/vendor/symfony/console/Descriptor/JsonDescriptor.php +0 -168
  454. data/helpers/vendor/symfony/console/Descriptor/MarkdownDescriptor.php +0 -182
  455. data/helpers/vendor/symfony/console/Descriptor/TextDescriptor.php +0 -342
  456. data/helpers/vendor/symfony/console/Descriptor/XmlDescriptor.php +0 -245
  457. data/helpers/vendor/symfony/console/Event/ConsoleCommandEvent.php +0 -60
  458. data/helpers/vendor/symfony/console/Event/ConsoleErrorEvent.php +0 -58
  459. data/helpers/vendor/symfony/console/Event/ConsoleEvent.php +0 -67
  460. data/helpers/vendor/symfony/console/Event/ConsoleTerminateEvent.php +0 -53
  461. data/helpers/vendor/symfony/console/EventListener/ErrorListener.php +0 -91
  462. data/helpers/vendor/symfony/console/Exception/CommandNotFoundException.php +0 -43
  463. data/helpers/vendor/symfony/console/Exception/ExceptionInterface.php +0 -21
  464. data/helpers/vendor/symfony/console/Exception/InvalidArgumentException.php +0 -19
  465. data/helpers/vendor/symfony/console/Exception/InvalidOptionException.php +0 -21
  466. data/helpers/vendor/symfony/console/Exception/LogicException.php +0 -19
  467. data/helpers/vendor/symfony/console/Exception/NamespaceNotFoundException.php +0 -21
  468. data/helpers/vendor/symfony/console/Exception/RuntimeException.php +0 -19
  469. data/helpers/vendor/symfony/console/Formatter/OutputFormatter.php +0 -278
  470. data/helpers/vendor/symfony/console/Formatter/OutputFormatterInterface.php +0 -71
  471. data/helpers/vendor/symfony/console/Formatter/OutputFormatterStyle.php +0 -203
  472. data/helpers/vendor/symfony/console/Formatter/OutputFormatterStyleInterface.php +0 -62
  473. data/helpers/vendor/symfony/console/Formatter/OutputFormatterStyleStack.php +0 -110
  474. data/helpers/vendor/symfony/console/Formatter/WrappableOutputFormatterInterface.php +0 -25
  475. data/helpers/vendor/symfony/console/Helper/DebugFormatterHelper.php +0 -127
  476. data/helpers/vendor/symfony/console/Helper/DescriptorHelper.php +0 -94
  477. data/helpers/vendor/symfony/console/Helper/FormatterHelper.php +0 -106
  478. data/helpers/vendor/symfony/console/Helper/Helper.php +0 -138
  479. data/helpers/vendor/symfony/console/Helper/HelperInterface.php +0 -39
  480. data/helpers/vendor/symfony/console/Helper/HelperSet.php +0 -108
  481. data/helpers/vendor/symfony/console/Helper/InputAwareHelper.php +0 -33
  482. data/helpers/vendor/symfony/console/Helper/ProcessHelper.php +0 -156
  483. data/helpers/vendor/symfony/console/Helper/ProgressBar.php +0 -530
  484. data/helpers/vendor/symfony/console/Helper/ProgressIndicator.php +0 -269
  485. data/helpers/vendor/symfony/console/Helper/QuestionHelper.php +0 -434
  486. data/helpers/vendor/symfony/console/Helper/SymfonyQuestionHelper.php +0 -96
  487. data/helpers/vendor/symfony/console/Helper/Table.php +0 -808
  488. data/helpers/vendor/symfony/console/Helper/TableCell.php +0 -68
  489. data/helpers/vendor/symfony/console/Helper/TableRows.php +0 -32
  490. data/helpers/vendor/symfony/console/Helper/TableSeparator.php +0 -25
  491. data/helpers/vendor/symfony/console/Helper/TableStyle.php +0 -458
  492. data/helpers/vendor/symfony/console/Input/ArgvInput.php +0 -346
  493. data/helpers/vendor/symfony/console/Input/ArrayInput.php +0 -206
  494. data/helpers/vendor/symfony/console/Input/Input.php +0 -203
  495. data/helpers/vendor/symfony/console/Input/InputArgument.php +0 -129
  496. data/helpers/vendor/symfony/console/Input/InputAwareInterface.php +0 -26
  497. data/helpers/vendor/symfony/console/Input/InputDefinition.php +0 -402
  498. data/helpers/vendor/symfony/console/Input/InputInterface.php +0 -163
  499. data/helpers/vendor/symfony/console/Input/InputOption.php +0 -208
  500. data/helpers/vendor/symfony/console/Input/StreamableInputInterface.php +0 -37
  501. data/helpers/vendor/symfony/console/Input/StringInput.php +0 -72
  502. data/helpers/vendor/symfony/console/LICENSE +0 -19
  503. data/helpers/vendor/symfony/console/Logger/ConsoleLogger.php +0 -124
  504. data/helpers/vendor/symfony/console/Output/BufferedOutput.php +0 -45
  505. data/helpers/vendor/symfony/console/Output/ConsoleOutput.php +0 -161
  506. data/helpers/vendor/symfony/console/Output/ConsoleOutputInterface.php +0 -32
  507. data/helpers/vendor/symfony/console/Output/ConsoleSectionOutput.php +0 -141
  508. data/helpers/vendor/symfony/console/Output/NullOutput.php +0 -123
  509. data/helpers/vendor/symfony/console/Output/Output.php +0 -177
  510. data/helpers/vendor/symfony/console/Output/OutputInterface.php +0 -114
  511. data/helpers/vendor/symfony/console/Output/StreamOutput.php +0 -124
  512. data/helpers/vendor/symfony/console/Question/ChoiceQuestion.php +0 -184
  513. data/helpers/vendor/symfony/console/Question/ConfirmationQuestion.php +0 -59
  514. data/helpers/vendor/symfony/console/Question/Question.php +0 -246
  515. data/helpers/vendor/symfony/console/README.md +0 -20
  516. data/helpers/vendor/symfony/console/Resources/bin/hiddeninput.exe +0 -0
  517. data/helpers/vendor/symfony/console/Style/OutputStyle.php +0 -155
  518. data/helpers/vendor/symfony/console/Style/StyleInterface.php +0 -154
  519. data/helpers/vendor/symfony/console/Style/SymfonyStyle.php +0 -438
  520. data/helpers/vendor/symfony/console/Terminal.php +0 -137
  521. data/helpers/vendor/symfony/console/Tester/ApplicationTester.php +0 -77
  522. data/helpers/vendor/symfony/console/Tester/CommandTester.php +0 -79
  523. data/helpers/vendor/symfony/console/Tester/TesterTrait.php +0 -173
  524. data/helpers/vendor/symfony/console/Tests/ApplicationTest.php +0 -1791
  525. data/helpers/vendor/symfony/console/Tests/Command/CommandTest.php +0 -436
  526. data/helpers/vendor/symfony/console/Tests/Command/HelpCommandTest.php +0 -71
  527. data/helpers/vendor/symfony/console/Tests/Command/ListCommandTest.php +0 -113
  528. data/helpers/vendor/symfony/console/Tests/Command/LockableTraitTest.php +0 -67
  529. data/helpers/vendor/symfony/console/Tests/CommandLoader/ContainerCommandLoaderTest.php +0 -61
  530. data/helpers/vendor/symfony/console/Tests/CommandLoader/FactoryCommandLoaderTest.php +0 -60
  531. data/helpers/vendor/symfony/console/Tests/DependencyInjection/AddConsoleCommandPassTest.php +0 -258
  532. data/helpers/vendor/symfony/console/Tests/Descriptor/AbstractDescriptorTest.php +0 -107
  533. data/helpers/vendor/symfony/console/Tests/Descriptor/JsonDescriptorTest.php +0 -35
  534. data/helpers/vendor/symfony/console/Tests/Descriptor/MarkdownDescriptorTest.php +0 -45
  535. data/helpers/vendor/symfony/console/Tests/Descriptor/ObjectsProvider.php +0 -82
  536. data/helpers/vendor/symfony/console/Tests/Descriptor/TextDescriptorTest.php +0 -53
  537. data/helpers/vendor/symfony/console/Tests/Descriptor/XmlDescriptorTest.php +0 -27
  538. data/helpers/vendor/symfony/console/Tests/EventListener/ErrorListenerTest.php +0 -156
  539. data/helpers/vendor/symfony/console/Tests/Fixtures/BarBucCommand.php +0 -11
  540. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorApplication1.php +0 -18
  541. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorApplication2.php +0 -26
  542. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorApplicationMbString.php +0 -24
  543. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand1.php +0 -27
  544. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand2.php +0 -32
  545. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand3.php +0 -27
  546. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommand4.php +0 -25
  547. data/helpers/vendor/symfony/console/Tests/Fixtures/DescriptorCommandMbString.php +0 -32
  548. data/helpers/vendor/symfony/console/Tests/Fixtures/DummyOutput.php +0 -36
  549. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo1Command.php +0 -26
  550. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo2Command.php +0 -21
  551. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo3Command.php +0 -29
  552. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo4Command.php +0 -11
  553. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo5Command.php +0 -10
  554. data/helpers/vendor/symfony/console/Tests/Fixtures/Foo6Command.php +0 -11
  555. data/helpers/vendor/symfony/console/Tests/Fixtures/FooCommand.php +0 -33
  556. data/helpers/vendor/symfony/console/Tests/Fixtures/FooLock2Command.php +0 -28
  557. data/helpers/vendor/symfony/console/Tests/Fixtures/FooLockCommand.php +0 -27
  558. data/helpers/vendor/symfony/console/Tests/Fixtures/FooOptCommand.php +0 -36
  559. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSameCaseLowercaseCommand.php +0 -11
  560. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSameCaseUppercaseCommand.php +0 -11
  561. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced1Command.php +0 -26
  562. data/helpers/vendor/symfony/console/Tests/Fixtures/FooSubnamespaced2Command.php +0 -26
  563. data/helpers/vendor/symfony/console/Tests/Fixtures/FooWithoutAliasCommand.php +0 -21
  564. data/helpers/vendor/symfony/console/Tests/Fixtures/FoobarCommand.php +0 -25
  565. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_0.php +0 -11
  566. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_1.php +0 -13
  567. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_10.php +0 -17
  568. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_11.php +0 -12
  569. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_12.php +0 -13
  570. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_13.php +0 -14
  571. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_14.php +0 -17
  572. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_15.php +0 -14
  573. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_16.php +0 -15
  574. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_17.php +0 -13
  575. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_2.php +0 -16
  576. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_3.php +0 -12
  577. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_4.php +0 -34
  578. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_4_with_iterators.php +0 -34
  579. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_5.php +0 -37
  580. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_6.php +0 -16
  581. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_7.php +0 -15
  582. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_8.php +0 -26
  583. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/command_9.php +0 -11
  584. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/command/interactive_command_1.php +0 -19
  585. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/interactive_output_1.txt +0 -7
  586. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_0.txt +0 -3
  587. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_1.txt +0 -9
  588. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_10.txt +0 -7
  589. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_11.txt +0 -4
  590. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_12.txt +0 -6
  591. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_13.txt +0 -7
  592. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_14.txt +0 -6
  593. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_15.txt +0 -7
  594. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_16.txt +0 -8
  595. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_17.txt +0 -7
  596. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_2.txt +0 -13
  597. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_3.txt +0 -7
  598. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_4.txt +0 -32
  599. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_4_with_iterators.txt +0 -32
  600. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_5.txt +0 -18
  601. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_6.txt +0 -6
  602. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_7.txt +0 -5
  603. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_8.txt +0 -9
  604. data/helpers/vendor/symfony/console/Tests/Fixtures/Style/SymfonyStyle/output/output_9.txt +0 -5
  605. data/helpers/vendor/symfony/console/Tests/Fixtures/TestCommand.php +0 -28
  606. data/helpers/vendor/symfony/console/Tests/Fixtures/TestTiti.php +0 -21
  607. data/helpers/vendor/symfony/console/Tests/Fixtures/TestToto.php +0 -22
  608. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.json +0 -156
  609. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.md +0 -172
  610. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.txt +0 -17
  611. data/helpers/vendor/symfony/console/Tests/Fixtures/application_1.xml +0 -104
  612. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.json +0 -509
  613. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.md +0 -431
  614. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.txt +0 -21
  615. data/helpers/vendor/symfony/console/Tests/Fixtures/application_2.xml +0 -254
  616. data/helpers/vendor/symfony/console/Tests/Fixtures/application_filtered_namespace.txt +0 -16
  617. data/helpers/vendor/symfony/console/Tests/Fixtures/application_gethelp.txt +0 -1
  618. data/helpers/vendor/symfony/console/Tests/Fixtures/application_mbstring.md +0 -269
  619. data/helpers/vendor/symfony/console/Tests/Fixtures/application_mbstring.txt +0 -19
  620. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception1.txt +0 -5
  621. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception2.txt +0 -7
  622. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception3.txt +0 -18
  623. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception3decorated.txt +0 -18
  624. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception4.txt +0 -6
  625. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1.txt +0 -8
  626. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth1decorated.txt +0 -8
  627. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_doublewidth2.txt +0 -9
  628. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_escapeslines.txt +0 -9
  629. data/helpers/vendor/symfony/console/Tests/Fixtures/application_renderexception_linebreaks.txt +0 -11
  630. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run1.txt +0 -17
  631. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run2.txt +0 -29
  632. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run3.txt +0 -29
  633. data/helpers/vendor/symfony/console/Tests/Fixtures/application_run4.txt +0 -1
  634. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.json +0 -15
  635. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.md +0 -12
  636. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.txt +0 -10
  637. data/helpers/vendor/symfony/console/Tests/Fixtures/command_1.xml +0 -12
  638. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.json +0 -33
  639. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.md +0 -29
  640. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.txt +0 -16
  641. data/helpers/vendor/symfony/console/Tests/Fixtures/command_2.xml +0 -21
  642. data/helpers/vendor/symfony/console/Tests/Fixtures/command_mbstring.md +0 -29
  643. data/helpers/vendor/symfony/console/Tests/Fixtures/command_mbstring.txt +0 -16
  644. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.json +0 -7
  645. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.md +0 -5
  646. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.txt +0 -1
  647. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_1.xml +0 -5
  648. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.json +0 -7
  649. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.md +0 -7
  650. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.txt +0 -1
  651. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_2.xml +0 -5
  652. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.json +0 -7
  653. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.md +0 -7
  654. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.txt +0 -1
  655. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_3.xml +0 -7
  656. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.json +0 -7
  657. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.md +0 -8
  658. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.txt +0 -2
  659. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_4.xml +0 -6
  660. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.json +0 -7
  661. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.md +0 -7
  662. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.txt +0 -1
  663. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_default_inf_value.xml +0 -7
  664. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.json +0 -7
  665. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.md +0 -7
  666. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.txt +0 -1
  667. data/helpers/vendor/symfony/console/Tests/Fixtures/input_argument_with_style.xml +0 -7
  668. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.json +0 -4
  669. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.md +0 -0
  670. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.txt +0 -0
  671. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_1.xml +0 -5
  672. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.json +0 -12
  673. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.md +0 -7
  674. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.txt +0 -2
  675. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_2.xml +0 -10
  676. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.json +0 -14
  677. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.md +0 -8
  678. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.txt +0 -2
  679. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_3.xml +0 -9
  680. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.json +0 -22
  681. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.md +0 -16
  682. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.txt +0 -5
  683. data/helpers/vendor/symfony/console/Tests/Fixtures/input_definition_4.xml +0 -14
  684. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.json +0 -9
  685. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.md +0 -6
  686. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.txt +0 -1
  687. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_1.xml +0 -4
  688. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.json +0 -9
  689. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.md +0 -8
  690. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.txt +0 -1
  691. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_2.xml +0 -7
  692. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.json +0 -9
  693. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.md +0 -8
  694. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.txt +0 -1
  695. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_3.xml +0 -5
  696. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.json +0 -9
  697. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.md +0 -8
  698. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.txt +0 -1
  699. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_4.xml +0 -5
  700. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.json +0 -9
  701. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.md +0 -9
  702. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.txt +0 -2
  703. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_5.xml +0 -6
  704. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.json +0 -9
  705. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.md +0 -8
  706. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.txt +0 -1
  707. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_6.xml +0 -5
  708. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.json +0 -9
  709. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.md +0 -8
  710. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.txt +0 -1
  711. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_default_inf_value.xml +0 -7
  712. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.json +0 -9
  713. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.md +0 -8
  714. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.txt +0 -1
  715. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style.xml +0 -7
  716. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.json +0 -12
  717. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.md +0 -8
  718. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.txt +0 -1
  719. data/helpers/vendor/symfony/console/Tests/Fixtures/input_option_with_style_array.xml +0 -8
  720. data/helpers/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleStackTest.php +0 -71
  721. data/helpers/vendor/symfony/console/Tests/Formatter/OutputFormatterStyleTest.php +0 -100
  722. data/helpers/vendor/symfony/console/Tests/Formatter/OutputFormatterTest.php +0 -352
  723. data/helpers/vendor/symfony/console/Tests/Helper/AbstractQuestionHelperTest.php +0 -34
  724. data/helpers/vendor/symfony/console/Tests/Helper/FormatterHelperTest.php +0 -129
  725. data/helpers/vendor/symfony/console/Tests/Helper/HelperSetTest.php +0 -127
  726. data/helpers/vendor/symfony/console/Tests/Helper/HelperTest.php +0 -55
  727. data/helpers/vendor/symfony/console/Tests/Helper/ProcessHelperTest.php +0 -133
  728. data/helpers/vendor/symfony/console/Tests/Helper/ProgressBarTest.php +0 -899
  729. data/helpers/vendor/symfony/console/Tests/Helper/ProgressIndicatorTest.php +0 -183
  730. data/helpers/vendor/symfony/console/Tests/Helper/QuestionHelperTest.php +0 -665
  731. data/helpers/vendor/symfony/console/Tests/Helper/SymfonyQuestionHelperTest.php +0 -168
  732. data/helpers/vendor/symfony/console/Tests/Helper/TableStyleTest.php +0 -28
  733. data/helpers/vendor/symfony/console/Tests/Helper/TableTest.php +0 -1127
  734. data/helpers/vendor/symfony/console/Tests/Input/ArgvInputTest.php +0 -458
  735. data/helpers/vendor/symfony/console/Tests/Input/ArrayInputTest.php +0 -177
  736. data/helpers/vendor/symfony/console/Tests/Input/InputArgumentTest.php +0 -103
  737. data/helpers/vendor/symfony/console/Tests/Input/InputDefinitionTest.php +0 -407
  738. data/helpers/vendor/symfony/console/Tests/Input/InputOptionTest.php +0 -196
  739. data/helpers/vendor/symfony/console/Tests/Input/InputTest.php +0 -149
  740. data/helpers/vendor/symfony/console/Tests/Input/StringInputTest.php +0 -87
  741. data/helpers/vendor/symfony/console/Tests/Logger/ConsoleLoggerTest.php +0 -215
  742. data/helpers/vendor/symfony/console/Tests/Output/ConsoleOutputTest.php +0 -42
  743. data/helpers/vendor/symfony/console/Tests/Output/ConsoleSectionOutputTest.php +0 -163
  744. data/helpers/vendor/symfony/console/Tests/Output/NullOutputTest.php +0 -88
  745. data/helpers/vendor/symfony/console/Tests/Output/OutputTest.php +0 -189
  746. data/helpers/vendor/symfony/console/Tests/Output/StreamOutputTest.php +0 -61
  747. data/helpers/vendor/symfony/console/Tests/Style/SymfonyStyleTest.php +0 -116
  748. data/helpers/vendor/symfony/console/Tests/TerminalTest.php +0 -44
  749. data/helpers/vendor/symfony/console/Tests/Tester/ApplicationTesterTest.php +0 -113
  750. data/helpers/vendor/symfony/console/Tests/Tester/CommandTesterTest.php +0 -207
  751. data/helpers/vendor/symfony/console/composer.json +0 -53
  752. data/helpers/vendor/symfony/console/phpunit.xml.dist +0 -41
  753. data/helpers/vendor/symfony/contracts/.gitignore +0 -3
  754. data/helpers/vendor/symfony/contracts/CHANGELOG.md +0 -12
  755. data/helpers/vendor/symfony/contracts/Cache/CacheInterface.php +0 -57
  756. data/helpers/vendor/symfony/contracts/Cache/CacheTrait.php +0 -71
  757. data/helpers/vendor/symfony/contracts/Cache/CallbackInterface.php +0 -30
  758. data/helpers/vendor/symfony/contracts/Cache/ItemInterface.php +0 -60
  759. data/helpers/vendor/symfony/contracts/Cache/TagAwareCacheInterface.php +0 -38
  760. data/helpers/vendor/symfony/contracts/LICENSE +0 -19
  761. data/helpers/vendor/symfony/contracts/README.md +0 -70
  762. data/helpers/vendor/symfony/contracts/Service/ResetInterface.php +0 -30
  763. data/helpers/vendor/symfony/contracts/Service/ServiceLocatorTrait.php +0 -97
  764. data/helpers/vendor/symfony/contracts/Service/ServiceSubscriberInterface.php +0 -53
  765. data/helpers/vendor/symfony/contracts/Service/ServiceSubscriberTrait.php +0 -61
  766. data/helpers/vendor/symfony/contracts/Tests/Cache/CacheTraitTest.php +0 -165
  767. data/helpers/vendor/symfony/contracts/Tests/Service/ServiceLocatorTest.php +0 -94
  768. data/helpers/vendor/symfony/contracts/Tests/Service/ServiceSubscriberTraitTest.php +0 -65
  769. data/helpers/vendor/symfony/contracts/Tests/Translation/TranslatorTest.php +0 -353
  770. data/helpers/vendor/symfony/contracts/Translation/LocaleAwareInterface.php +0 -31
  771. data/helpers/vendor/symfony/contracts/Translation/TranslatorInterface.php +0 -65
  772. data/helpers/vendor/symfony/contracts/Translation/TranslatorTrait.php +0 -255
  773. data/helpers/vendor/symfony/contracts/composer.json +0 -44
  774. data/helpers/vendor/symfony/contracts/phpunit.xml.dist +0 -31
  775. data/helpers/vendor/symfony/filesystem/.gitignore +0 -3
  776. data/helpers/vendor/symfony/filesystem/CHANGELOG.md +0 -59
  777. data/helpers/vendor/symfony/filesystem/Exception/ExceptionInterface.php +0 -21
  778. data/helpers/vendor/symfony/filesystem/Exception/FileNotFoundException.php +0 -34
  779. data/helpers/vendor/symfony/filesystem/Exception/IOException.php +0 -39
  780. data/helpers/vendor/symfony/filesystem/Exception/IOExceptionInterface.php +0 -27
  781. data/helpers/vendor/symfony/filesystem/Exception/InvalidArgumentException.php +0 -19
  782. data/helpers/vendor/symfony/filesystem/Filesystem.php +0 -767
  783. data/helpers/vendor/symfony/filesystem/LICENSE +0 -19
  784. data/helpers/vendor/symfony/filesystem/README.md +0 -13
  785. data/helpers/vendor/symfony/filesystem/Tests/ExceptionTest.php +0 -47
  786. data/helpers/vendor/symfony/filesystem/Tests/FilesystemTest.php +0 -1686
  787. data/helpers/vendor/symfony/filesystem/Tests/FilesystemTestCase.php +0 -166
  788. data/helpers/vendor/symfony/filesystem/Tests/Fixtures/MockStream/MockStream.php +0 -46
  789. data/helpers/vendor/symfony/filesystem/composer.json +0 -34
  790. data/helpers/vendor/symfony/filesystem/phpunit.xml.dist +0 -30
  791. data/helpers/vendor/symfony/finder/.gitignore +0 -3
  792. data/helpers/vendor/symfony/finder/CHANGELOG.md +0 -69
  793. data/helpers/vendor/symfony/finder/Comparator/Comparator.php +0 -98
  794. data/helpers/vendor/symfony/finder/Comparator/DateComparator.php +0 -51
  795. data/helpers/vendor/symfony/finder/Comparator/NumberComparator.php +0 -79
  796. data/helpers/vendor/symfony/finder/Exception/AccessDeniedException.php +0 -19
  797. data/helpers/vendor/symfony/finder/Finder.php +0 -780
  798. data/helpers/vendor/symfony/finder/Glob.php +0 -116
  799. data/helpers/vendor/symfony/finder/Iterator/CustomFilterIterator.php +0 -61
  800. data/helpers/vendor/symfony/finder/Iterator/DateRangeFilterIterator.php +0 -58
  801. data/helpers/vendor/symfony/finder/Iterator/DepthRangeFilterIterator.php +0 -45
  802. data/helpers/vendor/symfony/finder/Iterator/ExcludeDirectoryFilterIterator.php +0 -84
  803. data/helpers/vendor/symfony/finder/Iterator/FileTypeFilterIterator.php +0 -53
  804. data/helpers/vendor/symfony/finder/Iterator/FilecontentFilterIterator.php +0 -58
  805. data/helpers/vendor/symfony/finder/Iterator/FilenameFilterIterator.php +0 -47
  806. data/helpers/vendor/symfony/finder/Iterator/MultiplePcreFilterIterator.php +0 -112
  807. data/helpers/vendor/symfony/finder/Iterator/PathFilterIterator.php +0 -56
  808. data/helpers/vendor/symfony/finder/Iterator/RecursiveDirectoryIterator.php +0 -140
  809. data/helpers/vendor/symfony/finder/Iterator/SizeRangeFilterIterator.php +0 -57
  810. data/helpers/vendor/symfony/finder/Iterator/SortableIterator.php +0 -98
  811. data/helpers/vendor/symfony/finder/LICENSE +0 -19
  812. data/helpers/vendor/symfony/finder/README.md +0 -14
  813. data/helpers/vendor/symfony/finder/SplFileInfo.php +0 -78
  814. data/helpers/vendor/symfony/finder/Tests/Comparator/ComparatorTest.php +0 -65
  815. data/helpers/vendor/symfony/finder/Tests/Comparator/DateComparatorTest.php +0 -64
  816. data/helpers/vendor/symfony/finder/Tests/Comparator/NumberComparatorTest.php +0 -108
  817. data/helpers/vendor/symfony/finder/Tests/FinderTest.php +0 -1280
  818. data/helpers/vendor/symfony/finder/Tests/Fixtures/.dot/a +0 -0
  819. data/helpers/vendor/symfony/finder/Tests/Fixtures/.dot/b/c.neon +0 -0
  820. data/helpers/vendor/symfony/finder/Tests/Fixtures/.dot/b/d.neon +0 -0
  821. data/helpers/vendor/symfony/finder/Tests/Fixtures/A/B/C/abc.dat +0 -0
  822. data/helpers/vendor/symfony/finder/Tests/Fixtures/A/B/ab.dat +0 -0
  823. data/helpers/vendor/symfony/finder/Tests/Fixtures/A/a.dat +0 -0
  824. data/helpers/vendor/symfony/finder/Tests/Fixtures/copy/A/B/C/abc.dat.copy +0 -0
  825. data/helpers/vendor/symfony/finder/Tests/Fixtures/copy/A/B/ab.dat.copy +0 -0
  826. data/helpers/vendor/symfony/finder/Tests/Fixtures/copy/A/a.dat.copy +0 -0
  827. data/helpers/vendor/symfony/finder/Tests/Fixtures/dolor.txt +0 -2
  828. data/helpers/vendor/symfony/finder/Tests/Fixtures/ipsum.txt +0 -2
  829. data/helpers/vendor/symfony/finder/Tests/Fixtures/lorem.txt +0 -2
  830. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/.dot +0 -1
  831. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/a +0 -0
  832. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/b/c.neon +0 -0
  833. data/helpers/vendor/symfony/finder/Tests/Fixtures/one/b/d.neon +0 -0
  834. data/helpers/vendor/symfony/finder/Tests/Fixtures/r+e.gex[c]a(r)s/dir/bar.dat +0 -0
  835. data/helpers/vendor/symfony/finder/Tests/Fixtures/with space/foo.txt b/data/helpers/vendor/symfony/finder/Tests/Fixtures/with → space/foo.txt +0 -0
  836. data/helpers/vendor/symfony/finder/Tests/GlobTest.php +0 -95
  837. data/helpers/vendor/symfony/finder/Tests/Iterator/CustomFilterIteratorTest.php +0 -46
  838. data/helpers/vendor/symfony/finder/Tests/Iterator/DateRangeFilterIteratorTest.php +0 -92
  839. data/helpers/vendor/symfony/finder/Tests/Iterator/DepthRangeFilterIteratorTest.php +0 -103
  840. data/helpers/vendor/symfony/finder/Tests/Iterator/ExcludeDirectoryFilterIteratorTest.php +0 -107
  841. data/helpers/vendor/symfony/finder/Tests/Iterator/FileTypeFilterIteratorTest.php +0 -82
  842. data/helpers/vendor/symfony/finder/Tests/Iterator/FilecontentFilterIteratorTest.php +0 -86
  843. data/helpers/vendor/symfony/finder/Tests/Iterator/FilenameFilterIteratorTest.php +0 -54
  844. data/helpers/vendor/symfony/finder/Tests/Iterator/Iterator.php +0 -55
  845. data/helpers/vendor/symfony/finder/Tests/Iterator/IteratorTestCase.php +0 -100
  846. data/helpers/vendor/symfony/finder/Tests/Iterator/MockFileListIterator.php +0 -21
  847. data/helpers/vendor/symfony/finder/Tests/Iterator/MockSplFileInfo.php +0 -132
  848. data/helpers/vendor/symfony/finder/Tests/Iterator/MultiplePcreFilterIteratorTest.php +0 -71
  849. data/helpers/vendor/symfony/finder/Tests/Iterator/PathFilterIteratorTest.php +0 -82
  850. data/helpers/vendor/symfony/finder/Tests/Iterator/RealIteratorTestCase.php +0 -128
  851. data/helpers/vendor/symfony/finder/Tests/Iterator/RecursiveDirectoryIteratorTest.php +0 -59
  852. data/helpers/vendor/symfony/finder/Tests/Iterator/SizeRangeFilterIteratorTest.php +0 -70
  853. data/helpers/vendor/symfony/finder/Tests/Iterator/SortableIteratorTest.php +0 -262
  854. data/helpers/vendor/symfony/finder/composer.json +0 -33
  855. data/helpers/vendor/symfony/finder/phpunit.xml.dist +0 -30
  856. data/helpers/vendor/symfony/polyfill-ctype/Ctype.php +0 -227
  857. data/helpers/vendor/symfony/polyfill-ctype/LICENSE +0 -19
  858. data/helpers/vendor/symfony/polyfill-ctype/README.md +0 -12
  859. data/helpers/vendor/symfony/polyfill-ctype/bootstrap.php +0 -26
  860. data/helpers/vendor/symfony/polyfill-ctype/composer.json +0 -34
  861. data/helpers/vendor/symfony/polyfill-mbstring/LICENSE +0 -19
  862. data/helpers/vendor/symfony/polyfill-mbstring/Mbstring.php +0 -800
  863. data/helpers/vendor/symfony/polyfill-mbstring/README.md +0 -13
  864. data/helpers/vendor/symfony/polyfill-mbstring/Resources/unidata/lowerCase.php +0 -1096
  865. data/helpers/vendor/symfony/polyfill-mbstring/Resources/unidata/titleCaseRegexp.php +0 -5
  866. data/helpers/vendor/symfony/polyfill-mbstring/Resources/unidata/upperCase.php +0 -1104
  867. data/helpers/vendor/symfony/polyfill-mbstring/bootstrap.php +0 -58
  868. data/helpers/vendor/symfony/polyfill-mbstring/composer.json +0 -34
  869. data/helpers/vendor/symfony/process/.gitignore +0 -3
  870. data/helpers/vendor/symfony/process/CHANGELOG.md +0 -90
  871. data/helpers/vendor/symfony/process/Exception/ExceptionInterface.php +0 -21
  872. data/helpers/vendor/symfony/process/Exception/InvalidArgumentException.php +0 -21
  873. data/helpers/vendor/symfony/process/Exception/LogicException.php +0 -21
  874. data/helpers/vendor/symfony/process/Exception/ProcessFailedException.php +0 -54
  875. data/helpers/vendor/symfony/process/Exception/ProcessSignaledException.php +0 -41
  876. data/helpers/vendor/symfony/process/Exception/ProcessTimedOutException.php +0 -69
  877. data/helpers/vendor/symfony/process/Exception/RuntimeException.php +0 -21
  878. data/helpers/vendor/symfony/process/ExecutableFinder.php +0 -88
  879. data/helpers/vendor/symfony/process/InputStream.php +0 -90
  880. data/helpers/vendor/symfony/process/LICENSE +0 -19
  881. data/helpers/vendor/symfony/process/PhpExecutableFinder.php +0 -101
  882. data/helpers/vendor/symfony/process/PhpProcess.php +0 -76
  883. data/helpers/vendor/symfony/process/Pipes/AbstractPipes.php +0 -178
  884. data/helpers/vendor/symfony/process/Pipes/PipesInterface.php +0 -67
  885. data/helpers/vendor/symfony/process/Pipes/UnixPipes.php +0 -153
  886. data/helpers/vendor/symfony/process/Pipes/WindowsPipes.php +0 -191
  887. data/helpers/vendor/symfony/process/Process.php +0 -1652
  888. data/helpers/vendor/symfony/process/ProcessUtils.php +0 -69
  889. data/helpers/vendor/symfony/process/README.md +0 -13
  890. data/helpers/vendor/symfony/process/Tests/ExecutableFinderTest.php +0 -178
  891. data/helpers/vendor/symfony/process/Tests/KillableProcessWithOutput.php +0 -25
  892. data/helpers/vendor/symfony/process/Tests/NonStopableProcess.php +0 -47
  893. data/helpers/vendor/symfony/process/Tests/PhpExecutableFinderTest.php +0 -49
  894. data/helpers/vendor/symfony/process/Tests/PhpProcessTest.php +0 -48
  895. data/helpers/vendor/symfony/process/Tests/PipeStdinInStdoutStdErrStreamSelect.php +0 -72
  896. data/helpers/vendor/symfony/process/Tests/ProcessFailedExceptionTest.php +0 -137
  897. data/helpers/vendor/symfony/process/Tests/ProcessTest.php +0 -1533
  898. data/helpers/vendor/symfony/process/Tests/SignalListener.php +0 -21
  899. data/helpers/vendor/symfony/process/composer.json +0 -33
  900. data/helpers/vendor/symfony/process/phpunit.xml.dist +0 -30
@@ -1,137 +0,0 @@
1
- <?php
2
-
3
- /*
4
- * This file is part of the Symfony package.
5
- *
6
- * (c) Fabien Potencier <fabien@symfony.com>
7
- *
8
- * For the full copyright and license information, please view the LICENSE
9
- * file that was distributed with this source code.
10
- */
11
-
12
- namespace Symfony\Component\Process\Tests;
13
-
14
- use PHPUnit\Framework\TestCase;
15
- use Symfony\Component\Process\Exception\ProcessFailedException;
16
-
17
- /**
18
- * @author Sebastian Marek <proofek@gmail.com>
19
- */
20
- class ProcessFailedExceptionTest extends TestCase
21
- {
22
- /**
23
- * tests ProcessFailedException throws exception if the process was successful.
24
- */
25
- public function testProcessFailedExceptionThrowsException()
26
- {
27
- $process = $this->getMockBuilder('Symfony\Component\Process\Process')->setMethods(array('isSuccessful'))->setConstructorArgs(array(array('php')))->getMock();
28
- $process->expects($this->once())
29
- ->method('isSuccessful')
30
- ->will($this->returnValue(true));
31
-
32
- if (method_exists($this, 'expectException')) {
33
- $this->expectException(\InvalidArgumentException::class);
34
- $this->expectExceptionMessage('Expected a failed process, but the given process was successful.');
35
- } else {
36
- $this->setExpectedException(\InvalidArgumentException::class, 'Expected a failed process, but the given process was successful.');
37
- }
38
-
39
- new ProcessFailedException($process);
40
- }
41
-
42
- /**
43
- * tests ProcessFailedException uses information from process output
44
- * to generate exception message.
45
- */
46
- public function testProcessFailedExceptionPopulatesInformationFromProcessOutput()
47
- {
48
- $cmd = 'php';
49
- $exitCode = 1;
50
- $exitText = 'General error';
51
- $output = 'Command output';
52
- $errorOutput = 'FATAL: Unexpected error';
53
- $workingDirectory = getcwd();
54
-
55
- $process = $this->getMockBuilder('Symfony\Component\Process\Process')->setMethods(array('isSuccessful', 'getOutput', 'getErrorOutput', 'getExitCode', 'getExitCodeText', 'isOutputDisabled', 'getWorkingDirectory'))->setConstructorArgs(array(array($cmd)))->getMock();
56
- $process->expects($this->once())
57
- ->method('isSuccessful')
58
- ->will($this->returnValue(false));
59
-
60
- $process->expects($this->once())
61
- ->method('getOutput')
62
- ->will($this->returnValue($output));
63
-
64
- $process->expects($this->once())
65
- ->method('getErrorOutput')
66
- ->will($this->returnValue($errorOutput));
67
-
68
- $process->expects($this->once())
69
- ->method('getExitCode')
70
- ->will($this->returnValue($exitCode));
71
-
72
- $process->expects($this->once())
73
- ->method('getExitCodeText')
74
- ->will($this->returnValue($exitText));
75
-
76
- $process->expects($this->once())
77
- ->method('isOutputDisabled')
78
- ->will($this->returnValue(false));
79
-
80
- $process->expects($this->once())
81
- ->method('getWorkingDirectory')
82
- ->will($this->returnValue($workingDirectory));
83
-
84
- $exception = new ProcessFailedException($process);
85
-
86
- $this->assertEquals(
87
- "The command \"$cmd\" failed.\n\nExit Code: $exitCode($exitText)\n\nWorking directory: {$workingDirectory}\n\nOutput:\n================\n{$output}\n\nError Output:\n================\n{$errorOutput}",
88
- str_replace("'php'", 'php', $exception->getMessage())
89
- );
90
- }
91
-
92
- /**
93
- * Tests that ProcessFailedException does not extract information from
94
- * process output if it was previously disabled.
95
- */
96
- public function testDisabledOutputInFailedExceptionDoesNotPopulateOutput()
97
- {
98
- $cmd = 'php';
99
- $exitCode = 1;
100
- $exitText = 'General error';
101
- $workingDirectory = getcwd();
102
-
103
- $process = $this->getMockBuilder('Symfony\Component\Process\Process')->setMethods(array('isSuccessful', 'isOutputDisabled', 'getExitCode', 'getExitCodeText', 'getOutput', 'getErrorOutput', 'getWorkingDirectory'))->setConstructorArgs(array(array($cmd)))->getMock();
104
- $process->expects($this->once())
105
- ->method('isSuccessful')
106
- ->will($this->returnValue(false));
107
-
108
- $process->expects($this->never())
109
- ->method('getOutput');
110
-
111
- $process->expects($this->never())
112
- ->method('getErrorOutput');
113
-
114
- $process->expects($this->once())
115
- ->method('getExitCode')
116
- ->will($this->returnValue($exitCode));
117
-
118
- $process->expects($this->once())
119
- ->method('getExitCodeText')
120
- ->will($this->returnValue($exitText));
121
-
122
- $process->expects($this->once())
123
- ->method('isOutputDisabled')
124
- ->will($this->returnValue(true));
125
-
126
- $process->expects($this->once())
127
- ->method('getWorkingDirectory')
128
- ->will($this->returnValue($workingDirectory));
129
-
130
- $exception = new ProcessFailedException($process);
131
-
132
- $this->assertEquals(
133
- "The command \"$cmd\" failed.\n\nExit Code: $exitCode($exitText)\n\nWorking directory: {$workingDirectory}",
134
- str_replace("'php'", 'php', $exception->getMessage())
135
- );
136
- }
137
- }
@@ -1,1533 +0,0 @@
1
- <?php
2
-
3
- /*
4
- * This file is part of the Symfony package.
5
- *
6
- * (c) Fabien Potencier <fabien@symfony.com>
7
- *
8
- * For the full copyright and license information, please view the LICENSE
9
- * file that was distributed with this source code.
10
- */
11
-
12
- namespace Symfony\Component\Process\Tests;
13
-
14
- use PHPUnit\Framework\TestCase;
15
- use Symfony\Component\Process\Exception\LogicException;
16
- use Symfony\Component\Process\Exception\ProcessTimedOutException;
17
- use Symfony\Component\Process\Exception\RuntimeException;
18
- use Symfony\Component\Process\InputStream;
19
- use Symfony\Component\Process\PhpExecutableFinder;
20
- use Symfony\Component\Process\Pipes\PipesInterface;
21
- use Symfony\Component\Process\Process;
22
-
23
- /**
24
- * @author Robert Schönthal <seroscho@googlemail.com>
25
- */
26
- class ProcessTest extends TestCase
27
- {
28
- private static $phpBin;
29
- private static $process;
30
- private static $sigchild;
31
-
32
- public static function setUpBeforeClass()
33
- {
34
- $phpBin = new PhpExecutableFinder();
35
- self::$phpBin = getenv('SYMFONY_PROCESS_PHP_TEST_BINARY') ?: ('phpdbg' === \PHP_SAPI ? 'php' : $phpBin->find());
36
-
37
- ob_start();
38
- phpinfo(INFO_GENERAL);
39
- self::$sigchild = false !== strpos(ob_get_clean(), '--enable-sigchild');
40
- }
41
-
42
- protected function tearDown()
43
- {
44
- if (self::$process) {
45
- self::$process->stop(0);
46
- self::$process = null;
47
- }
48
- }
49
-
50
- /**
51
- * @expectedException \Symfony\Component\Process\Exception\RuntimeException
52
- * @expectedExceptionMessage The provided cwd does not exist.
53
- */
54
- public function testInvalidCwd()
55
- {
56
- try {
57
- // Check that it works fine if the CWD exists
58
- $cmd = new Process(array('echo', 'test'), __DIR__);
59
- $cmd->run();
60
- } catch (\Exception $e) {
61
- $this->fail($e);
62
- }
63
-
64
- $cmd = new Process(array('echo', 'test'), __DIR__.'/notfound/');
65
- $cmd->run();
66
- }
67
-
68
- public function testThatProcessDoesNotThrowWarningDuringRun()
69
- {
70
- if ('\\' === \DIRECTORY_SEPARATOR) {
71
- $this->markTestSkipped('This test is transient on Windows');
72
- }
73
- @trigger_error('Test Error', E_USER_NOTICE);
74
- $process = $this->getProcessForCode('sleep(3)');
75
- $process->run();
76
- $actualError = error_get_last();
77
- $this->assertEquals('Test Error', $actualError['message']);
78
- $this->assertEquals(E_USER_NOTICE, $actualError['type']);
79
- }
80
-
81
- /**
82
- * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
83
- */
84
- public function testNegativeTimeoutFromConstructor()
85
- {
86
- $this->getProcess('', null, null, null, -1);
87
- }
88
-
89
- /**
90
- * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
91
- */
92
- public function testNegativeTimeoutFromSetter()
93
- {
94
- $p = $this->getProcess('');
95
- $p->setTimeout(-1);
96
- }
97
-
98
- public function testFloatAndNullTimeout()
99
- {
100
- $p = $this->getProcess('');
101
-
102
- $p->setTimeout(10);
103
- $this->assertSame(10.0, $p->getTimeout());
104
-
105
- $p->setTimeout(null);
106
- $this->assertNull($p->getTimeout());
107
-
108
- $p->setTimeout(0.0);
109
- $this->assertNull($p->getTimeout());
110
- }
111
-
112
- /**
113
- * @requires extension pcntl
114
- */
115
- public function testStopWithTimeoutIsActuallyWorking()
116
- {
117
- $p = $this->getProcess(array(self::$phpBin, __DIR__.'/NonStopableProcess.php', 30));
118
- $p->start();
119
-
120
- while ($p->isRunning() && false === strpos($p->getOutput(), 'received')) {
121
- usleep(1000);
122
- }
123
-
124
- if (!$p->isRunning()) {
125
- throw new \LogicException('Process is not running: '.$p->getErrorOutput());
126
- }
127
-
128
- $start = microtime(true);
129
- $p->stop(0.1);
130
-
131
- $p->wait();
132
-
133
- $this->assertLessThan(15, microtime(true) - $start);
134
- }
135
-
136
- public function testWaitUntilSpecificOutput()
137
- {
138
- $p = $this->getProcess(array(self::$phpBin, __DIR__.'/KillableProcessWithOutput.php'));
139
- $p->start();
140
-
141
- $start = microtime(true);
142
-
143
- $completeOutput = '';
144
- $result = $p->waitUntil(function ($type, $output) use (&$completeOutput) {
145
- return false !== strpos($completeOutput .= $output, 'One more');
146
- });
147
- $this->assertTrue($result);
148
- $this->assertLessThan(20, microtime(true) - $start);
149
- $this->assertStringStartsWith("First iteration output\nSecond iteration output\nOne more", $completeOutput);
150
- $p->stop();
151
- }
152
-
153
- public function testWaitUntilCanReturnFalse()
154
- {
155
- $p = $this->getProcess('echo foo');
156
- $p->start();
157
- $this->assertFalse($p->waitUntil(function () { return false; }));
158
- }
159
-
160
- public function testAllOutputIsActuallyReadOnTermination()
161
- {
162
- // this code will result in a maximum of 2 reads of 8192 bytes by calling
163
- // start() and isRunning(). by the time getOutput() is called the process
164
- // has terminated so the internal pipes array is already empty. normally
165
- // the call to start() will not read any data as the process will not have
166
- // generated output, but this is non-deterministic so we must count it as
167
- // a possibility. therefore we need 2 * PipesInterface::CHUNK_SIZE plus
168
- // another byte which will never be read.
169
- $expectedOutputSize = PipesInterface::CHUNK_SIZE * 2 + 2;
170
-
171
- $code = sprintf('echo str_repeat(\'*\', %d);', $expectedOutputSize);
172
- $p = $this->getProcessForCode($code);
173
-
174
- $p->start();
175
-
176
- // Don't call Process::run nor Process::wait to avoid any read of pipes
177
- $h = new \ReflectionProperty($p, 'process');
178
- $h->setAccessible(true);
179
- $h = $h->getValue($p);
180
- $s = @proc_get_status($h);
181
-
182
- while (!empty($s['running'])) {
183
- usleep(1000);
184
- $s = proc_get_status($h);
185
- }
186
-
187
- $o = $p->getOutput();
188
-
189
- $this->assertEquals($expectedOutputSize, \strlen($o));
190
- }
191
-
192
- public function testCallbacksAreExecutedWithStart()
193
- {
194
- $process = $this->getProcess('echo foo');
195
- $process->start(function ($type, $buffer) use (&$data) {
196
- $data .= $buffer;
197
- });
198
-
199
- $process->wait();
200
-
201
- $this->assertSame('foo'.PHP_EOL, $data);
202
- }
203
-
204
- /**
205
- * tests results from sub processes.
206
- *
207
- * @dataProvider responsesCodeProvider
208
- */
209
- public function testProcessResponses($expected, $getter, $code)
210
- {
211
- $p = $this->getProcessForCode($code);
212
- $p->run();
213
-
214
- $this->assertSame($expected, $p->$getter());
215
- }
216
-
217
- /**
218
- * tests results from sub processes.
219
- *
220
- * @dataProvider pipesCodeProvider
221
- */
222
- public function testProcessPipes($code, $size)
223
- {
224
- $expected = str_repeat(str_repeat('*', 1024), $size).'!';
225
- $expectedLength = (1024 * $size) + 1;
226
-
227
- $p = $this->getProcessForCode($code);
228
- $p->setInput($expected);
229
- $p->run();
230
-
231
- $this->assertEquals($expectedLength, \strlen($p->getOutput()));
232
- $this->assertEquals($expectedLength, \strlen($p->getErrorOutput()));
233
- }
234
-
235
- /**
236
- * @dataProvider pipesCodeProvider
237
- */
238
- public function testSetStreamAsInput($code, $size)
239
- {
240
- $expected = str_repeat(str_repeat('*', 1024), $size).'!';
241
- $expectedLength = (1024 * $size) + 1;
242
-
243
- $stream = fopen('php://temporary', 'w+');
244
- fwrite($stream, $expected);
245
- rewind($stream);
246
-
247
- $p = $this->getProcessForCode($code);
248
- $p->setInput($stream);
249
- $p->run();
250
-
251
- fclose($stream);
252
-
253
- $this->assertEquals($expectedLength, \strlen($p->getOutput()));
254
- $this->assertEquals($expectedLength, \strlen($p->getErrorOutput()));
255
- }
256
-
257
- public function testLiveStreamAsInput()
258
- {
259
- $stream = fopen('php://memory', 'r+');
260
- fwrite($stream, 'hello');
261
- rewind($stream);
262
-
263
- $p = $this->getProcessForCode('stream_copy_to_stream(STDIN, STDOUT);');
264
- $p->setInput($stream);
265
- $p->start(function ($type, $data) use ($stream) {
266
- if ('hello' === $data) {
267
- fclose($stream);
268
- }
269
- });
270
- $p->wait();
271
-
272
- $this->assertSame('hello', $p->getOutput());
273
- }
274
-
275
- /**
276
- * @expectedException \Symfony\Component\Process\Exception\LogicException
277
- * @expectedExceptionMessage Input can not be set while the process is running.
278
- */
279
- public function testSetInputWhileRunningThrowsAnException()
280
- {
281
- $process = $this->getProcessForCode('sleep(30);');
282
- $process->start();
283
- try {
284
- $process->setInput('foobar');
285
- $process->stop();
286
- $this->fail('A LogicException should have been raised.');
287
- } catch (LogicException $e) {
288
- }
289
- $process->stop();
290
-
291
- throw $e;
292
- }
293
-
294
- /**
295
- * @dataProvider provideInvalidInputValues
296
- * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException
297
- * @expectedExceptionMessage Symfony\Component\Process\Process::setInput only accepts strings, Traversable objects or stream resources.
298
- */
299
- public function testInvalidInput($value)
300
- {
301
- $process = $this->getProcess('foo');
302
- $process->setInput($value);
303
- }
304
-
305
- public function provideInvalidInputValues()
306
- {
307
- return array(
308
- array(array()),
309
- array(new NonStringifiable()),
310
- );
311
- }
312
-
313
- /**
314
- * @dataProvider provideInputValues
315
- */
316
- public function testValidInput($expected, $value)
317
- {
318
- $process = $this->getProcess('foo');
319
- $process->setInput($value);
320
- $this->assertSame($expected, $process->getInput());
321
- }
322
-
323
- public function provideInputValues()
324
- {
325
- return array(
326
- array(null, null),
327
- array('24.5', 24.5),
328
- array('input data', 'input data'),
329
- );
330
- }
331
-
332
- public function chainedCommandsOutputProvider()
333
- {
334
- if ('\\' === \DIRECTORY_SEPARATOR) {
335
- return array(
336
- array("2 \r\n2\r\n", '&&', '2'),
337
- );
338
- }
339
-
340
- return array(
341
- array("1\n1\n", ';', '1'),
342
- array("2\n2\n", '&&', '2'),
343
- );
344
- }
345
-
346
- /**
347
- * @dataProvider chainedCommandsOutputProvider
348
- */
349
- public function testChainedCommandsOutput($expected, $operator, $input)
350
- {
351
- $process = $this->getProcess(sprintf('echo %s %s echo %s', $input, $operator, $input));
352
- $process->run();
353
- $this->assertEquals($expected, $process->getOutput());
354
- }
355
-
356
- public function testCallbackIsExecutedForOutput()
357
- {
358
- $p = $this->getProcessForCode('echo \'foo\';');
359
-
360
- $called = false;
361
- $p->run(function ($type, $buffer) use (&$called) {
362
- $called = 'foo' === $buffer;
363
- });
364
-
365
- $this->assertTrue($called, 'The callback should be executed with the output');
366
- }
367
-
368
- public function testCallbackIsExecutedForOutputWheneverOutputIsDisabled()
369
- {
370
- $p = $this->getProcessForCode('echo \'foo\';');
371
- $p->disableOutput();
372
-
373
- $called = false;
374
- $p->run(function ($type, $buffer) use (&$called) {
375
- $called = 'foo' === $buffer;
376
- });
377
-
378
- $this->assertTrue($called, 'The callback should be executed with the output');
379
- }
380
-
381
- public function testGetErrorOutput()
382
- {
383
- $p = $this->getProcessForCode('$n = 0; while ($n < 3) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; }');
384
-
385
- $p->run();
386
- $this->assertEquals(3, preg_match_all('/ERROR/', $p->getErrorOutput(), $matches));
387
- }
388
-
389
- public function testFlushErrorOutput()
390
- {
391
- $p = $this->getProcessForCode('$n = 0; while ($n < 3) { file_put_contents(\'php://stderr\', \'ERROR\'); $n++; }');
392
-
393
- $p->run();
394
- $p->clearErrorOutput();
395
- $this->assertEmpty($p->getErrorOutput());
396
- }
397
-
398
- /**
399
- * @dataProvider provideIncrementalOutput
400
- */
401
- public function testIncrementalOutput($getOutput, $getIncrementalOutput, $uri)
402
- {
403
- $lock = tempnam(sys_get_temp_dir(), __FUNCTION__);
404
-
405
- $p = $this->getProcessForCode('file_put_contents($s = \''.$uri.'\', \'foo\'); flock(fopen('.var_export($lock, true).', \'r\'), LOCK_EX); file_put_contents($s, \'bar\');');
406
-
407
- $h = fopen($lock, 'w');
408
- flock($h, LOCK_EX);
409
-
410
- $p->start();
411
-
412
- foreach (array('foo', 'bar') as $s) {
413
- while (false === strpos($p->$getOutput(), $s)) {
414
- usleep(1000);
415
- }
416
-
417
- $this->assertSame($s, $p->$getIncrementalOutput());
418
- $this->assertSame('', $p->$getIncrementalOutput());
419
-
420
- flock($h, LOCK_UN);
421
- }
422
-
423
- fclose($h);
424
- }
425
-
426
- public function provideIncrementalOutput()
427
- {
428
- return array(
429
- array('getOutput', 'getIncrementalOutput', 'php://stdout'),
430
- array('getErrorOutput', 'getIncrementalErrorOutput', 'php://stderr'),
431
- );
432
- }
433
-
434
- public function testGetOutput()
435
- {
436
- $p = $this->getProcessForCode('$n = 0; while ($n < 3) { echo \' foo \'; $n++; }');
437
-
438
- $p->run();
439
- $this->assertEquals(3, preg_match_all('/foo/', $p->getOutput(), $matches));
440
- }
441
-
442
- public function testFlushOutput()
443
- {
444
- $p = $this->getProcessForCode('$n=0;while ($n<3) {echo \' foo \';$n++;}');
445
-
446
- $p->run();
447
- $p->clearOutput();
448
- $this->assertEmpty($p->getOutput());
449
- }
450
-
451
- public function testZeroAsOutput()
452
- {
453
- if ('\\' === \DIRECTORY_SEPARATOR) {
454
- // see http://stackoverflow.com/questions/7105433/windows-batch-echo-without-new-line
455
- $p = $this->getProcess('echo | set /p dummyName=0');
456
- } else {
457
- $p = $this->getProcess('printf 0');
458
- }
459
-
460
- $p->run();
461
- $this->assertSame('0', $p->getOutput());
462
- }
463
-
464
- public function testExitCodeCommandFailed()
465
- {
466
- if ('\\' === \DIRECTORY_SEPARATOR) {
467
- $this->markTestSkipped('Windows does not support POSIX exit code');
468
- }
469
-
470
- // such command run in bash return an exitcode 127
471
- $process = $this->getProcess('nonexistingcommandIhopeneversomeonewouldnameacommandlikethis');
472
- $process->run();
473
-
474
- $this->assertGreaterThan(0, $process->getExitCode());
475
- }
476
-
477
- public function testTTYCommand()
478
- {
479
- if ('\\' === \DIRECTORY_SEPARATOR) {
480
- $this->markTestSkipped('Windows does not have /dev/tty support');
481
- }
482
-
483
- $process = $this->getProcess('echo "foo" >> /dev/null && '.$this->getProcessForCode('usleep(100000);')->getCommandLine());
484
- $process->setTty(true);
485
- $process->start();
486
- $this->assertTrue($process->isRunning());
487
- $process->wait();
488
-
489
- $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
490
- }
491
-
492
- public function testTTYCommandExitCode()
493
- {
494
- if ('\\' === \DIRECTORY_SEPARATOR) {
495
- $this->markTestSkipped('Windows does have /dev/tty support');
496
- }
497
-
498
- $process = $this->getProcess('echo "foo" >> /dev/null');
499
- $process->setTty(true);
500
- $process->run();
501
-
502
- $this->assertTrue($process->isSuccessful());
503
- }
504
-
505
- /**
506
- * @expectedException \Symfony\Component\Process\Exception\RuntimeException
507
- * @expectedExceptionMessage TTY mode is not supported on Windows platform.
508
- */
509
- public function testTTYInWindowsEnvironment()
510
- {
511
- if ('\\' !== \DIRECTORY_SEPARATOR) {
512
- $this->markTestSkipped('This test is for Windows platform only');
513
- }
514
-
515
- $process = $this->getProcess('echo "foo" >> /dev/null');
516
- $process->setTty(false);
517
- $process->setTty(true);
518
- }
519
-
520
- public function testExitCodeTextIsNullWhenExitCodeIsNull()
521
- {
522
- $process = $this->getProcess('');
523
- $this->assertNull($process->getExitCodeText());
524
- }
525
-
526
- public function testPTYCommand()
527
- {
528
- if (!Process::isPtySupported()) {
529
- $this->markTestSkipped('PTY is not supported on this operating system.');
530
- }
531
-
532
- $process = $this->getProcess('echo "foo"');
533
- $process->setPty(true);
534
- $process->run();
535
-
536
- $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
537
- $this->assertEquals("foo\r\n", $process->getOutput());
538
- }
539
-
540
- public function testMustRun()
541
- {
542
- $process = $this->getProcess('echo foo');
543
-
544
- $this->assertSame($process, $process->mustRun());
545
- $this->assertEquals('foo'.PHP_EOL, $process->getOutput());
546
- }
547
-
548
- public function testSuccessfulMustRunHasCorrectExitCode()
549
- {
550
- $process = $this->getProcess('echo foo')->mustRun();
551
- $this->assertEquals(0, $process->getExitCode());
552
- }
553
-
554
- /**
555
- * @expectedException \Symfony\Component\Process\Exception\ProcessFailedException
556
- */
557
- public function testMustRunThrowsException()
558
- {
559
- $process = $this->getProcess('exit 1');
560
- $process->mustRun();
561
- }
562
-
563
- public function testExitCodeText()
564
- {
565
- $process = $this->getProcess('');
566
- $r = new \ReflectionObject($process);
567
- $p = $r->getProperty('exitcode');
568
- $p->setAccessible(true);
569
-
570
- $p->setValue($process, 2);
571
- $this->assertEquals('Misuse of shell builtins', $process->getExitCodeText());
572
- }
573
-
574
- public function testStartIsNonBlocking()
575
- {
576
- $process = $this->getProcessForCode('usleep(500000);');
577
- $start = microtime(true);
578
- $process->start();
579
- $end = microtime(true);
580
- $this->assertLessThan(0.4, $end - $start);
581
- $process->stop();
582
- }
583
-
584
- public function testUpdateStatus()
585
- {
586
- $process = $this->getProcess('echo foo');
587
- $process->run();
588
- $this->assertGreaterThan(0, \strlen($process->getOutput()));
589
- }
590
-
591
- public function testGetExitCodeIsNullOnStart()
592
- {
593
- $process = $this->getProcessForCode('usleep(100000);');
594
- $this->assertNull($process->getExitCode());
595
- $process->start();
596
- $this->assertNull($process->getExitCode());
597
- $process->wait();
598
- $this->assertEquals(0, $process->getExitCode());
599
- }
600
-
601
- public function testGetExitCodeIsNullOnWhenStartingAgain()
602
- {
603
- $process = $this->getProcessForCode('usleep(100000);');
604
- $process->run();
605
- $this->assertEquals(0, $process->getExitCode());
606
- $process->start();
607
- $this->assertNull($process->getExitCode());
608
- $process->wait();
609
- $this->assertEquals(0, $process->getExitCode());
610
- }
611
-
612
- public function testGetExitCode()
613
- {
614
- $process = $this->getProcess('echo foo');
615
- $process->run();
616
- $this->assertSame(0, $process->getExitCode());
617
- }
618
-
619
- public function testStatus()
620
- {
621
- $process = $this->getProcessForCode('usleep(100000);');
622
- $this->assertFalse($process->isRunning());
623
- $this->assertFalse($process->isStarted());
624
- $this->assertFalse($process->isTerminated());
625
- $this->assertSame(Process::STATUS_READY, $process->getStatus());
626
- $process->start();
627
- $this->assertTrue($process->isRunning());
628
- $this->assertTrue($process->isStarted());
629
- $this->assertFalse($process->isTerminated());
630
- $this->assertSame(Process::STATUS_STARTED, $process->getStatus());
631
- $process->wait();
632
- $this->assertFalse($process->isRunning());
633
- $this->assertTrue($process->isStarted());
634
- $this->assertTrue($process->isTerminated());
635
- $this->assertSame(Process::STATUS_TERMINATED, $process->getStatus());
636
- }
637
-
638
- public function testStop()
639
- {
640
- $process = $this->getProcessForCode('sleep(31);');
641
- $process->start();
642
- $this->assertTrue($process->isRunning());
643
- $process->stop();
644
- $this->assertFalse($process->isRunning());
645
- }
646
-
647
- public function testIsSuccessful()
648
- {
649
- $process = $this->getProcess('echo foo');
650
- $process->run();
651
- $this->assertTrue($process->isSuccessful());
652
- }
653
-
654
- public function testIsSuccessfulOnlyAfterTerminated()
655
- {
656
- $process = $this->getProcessForCode('usleep(100000);');
657
- $process->start();
658
-
659
- $this->assertFalse($process->isSuccessful());
660
-
661
- $process->wait();
662
-
663
- $this->assertTrue($process->isSuccessful());
664
- }
665
-
666
- public function testIsNotSuccessful()
667
- {
668
- $process = $this->getProcessForCode('throw new \Exception(\'BOUM\');');
669
- $process->run();
670
- $this->assertFalse($process->isSuccessful());
671
- }
672
-
673
- public function testProcessIsNotSignaled()
674
- {
675
- if ('\\' === \DIRECTORY_SEPARATOR) {
676
- $this->markTestSkipped('Windows does not support POSIX signals');
677
- }
678
-
679
- $process = $this->getProcess('echo foo');
680
- $process->run();
681
- $this->assertFalse($process->hasBeenSignaled());
682
- }
683
-
684
- public function testProcessWithoutTermSignal()
685
- {
686
- if ('\\' === \DIRECTORY_SEPARATOR) {
687
- $this->markTestSkipped('Windows does not support POSIX signals');
688
- }
689
-
690
- $process = $this->getProcess('echo foo');
691
- $process->run();
692
- $this->assertEquals(0, $process->getTermSignal());
693
- }
694
-
695
- public function testProcessIsSignaledIfStopped()
696
- {
697
- if ('\\' === \DIRECTORY_SEPARATOR) {
698
- $this->markTestSkipped('Windows does not support POSIX signals');
699
- }
700
-
701
- $process = $this->getProcessForCode('sleep(32);');
702
- $process->start();
703
- $process->stop();
704
- $this->assertTrue($process->hasBeenSignaled());
705
- $this->assertEquals(15, $process->getTermSignal()); // SIGTERM
706
- }
707
-
708
- /**
709
- * @expectedException \Symfony\Component\Process\Exception\ProcessSignaledException
710
- * @expectedExceptionMessage The process has been signaled with signal "9".
711
- */
712
- public function testProcessThrowsExceptionWhenExternallySignaled()
713
- {
714
- if (!\function_exists('posix_kill')) {
715
- $this->markTestSkipped('Function posix_kill is required.');
716
- }
717
-
718
- if (self::$sigchild) {
719
- $this->markTestSkipped('PHP is compiled with --enable-sigchild.');
720
- }
721
-
722
- $process = $this->getProcessForCode('sleep(32.1);');
723
- $process->start();
724
- posix_kill($process->getPid(), 9); // SIGKILL
725
-
726
- $process->wait();
727
- }
728
-
729
- public function testRestart()
730
- {
731
- $process1 = $this->getProcessForCode('echo getmypid();');
732
- $process1->run();
733
- $process2 = $process1->restart();
734
-
735
- $process2->wait(); // wait for output
736
-
737
- // Ensure that both processed finished and the output is numeric
738
- $this->assertFalse($process1->isRunning());
739
- $this->assertFalse($process2->isRunning());
740
- $this->assertInternalType('numeric', $process1->getOutput());
741
- $this->assertInternalType('numeric', $process2->getOutput());
742
-
743
- // Ensure that restart returned a new process by check that the output is different
744
- $this->assertNotEquals($process1->getOutput(), $process2->getOutput());
745
- }
746
-
747
- /**
748
- * @expectedException \Symfony\Component\Process\Exception\ProcessTimedOutException
749
- * @expectedExceptionMessage exceeded the timeout of 0.1 seconds.
750
- */
751
- public function testRunProcessWithTimeout()
752
- {
753
- $process = $this->getProcessForCode('sleep(30);');
754
- $process->setTimeout(0.1);
755
- $start = microtime(true);
756
- try {
757
- $process->run();
758
- $this->fail('A RuntimeException should have been raised');
759
- } catch (RuntimeException $e) {
760
- }
761
-
762
- $this->assertLessThan(15, microtime(true) - $start);
763
-
764
- throw $e;
765
- }
766
-
767
- /**
768
- * @expectedException \Symfony\Component\Process\Exception\ProcessTimedOutException
769
- * @expectedExceptionMessage exceeded the timeout of 0.1 seconds.
770
- */
771
- public function testIterateOverProcessWithTimeout()
772
- {
773
- $process = $this->getProcessForCode('sleep(30);');
774
- $process->setTimeout(0.1);
775
- $start = microtime(true);
776
- try {
777
- $process->start();
778
- foreach ($process as $buffer);
779
- $this->fail('A RuntimeException should have been raised');
780
- } catch (RuntimeException $e) {
781
- }
782
-
783
- $this->assertLessThan(15, microtime(true) - $start);
784
-
785
- throw $e;
786
- }
787
-
788
- public function testCheckTimeoutOnNonStartedProcess()
789
- {
790
- $process = $this->getProcess('echo foo');
791
- $this->assertNull($process->checkTimeout());
792
- }
793
-
794
- public function testCheckTimeoutOnTerminatedProcess()
795
- {
796
- $process = $this->getProcess('echo foo');
797
- $process->run();
798
- $this->assertNull($process->checkTimeout());
799
- }
800
-
801
- /**
802
- * @expectedException \Symfony\Component\Process\Exception\ProcessTimedOutException
803
- * @expectedExceptionMessage exceeded the timeout of 0.1 seconds.
804
- */
805
- public function testCheckTimeoutOnStartedProcess()
806
- {
807
- $process = $this->getProcessForCode('sleep(33);');
808
- $process->setTimeout(0.1);
809
-
810
- $process->start();
811
- $start = microtime(true);
812
-
813
- try {
814
- while ($process->isRunning()) {
815
- $process->checkTimeout();
816
- usleep(100000);
817
- }
818
- $this->fail('A ProcessTimedOutException should have been raised');
819
- } catch (ProcessTimedOutException $e) {
820
- }
821
-
822
- $this->assertLessThan(15, microtime(true) - $start);
823
-
824
- throw $e;
825
- }
826
-
827
- public function testIdleTimeout()
828
- {
829
- $process = $this->getProcessForCode('sleep(34);');
830
- $process->setTimeout(60);
831
- $process->setIdleTimeout(0.1);
832
-
833
- try {
834
- $process->run();
835
-
836
- $this->fail('A timeout exception was expected.');
837
- } catch (ProcessTimedOutException $e) {
838
- $this->assertTrue($e->isIdleTimeout());
839
- $this->assertFalse($e->isGeneralTimeout());
840
- $this->assertEquals(0.1, $e->getExceededTimeout());
841
- }
842
- }
843
-
844
- public function testIdleTimeoutNotExceededWhenOutputIsSent()
845
- {
846
- $process = $this->getProcessForCode('while (true) {echo \'foo \'; usleep(1000);}');
847
- $process->setTimeout(1);
848
- $process->start();
849
-
850
- while (false === strpos($process->getOutput(), 'foo')) {
851
- usleep(1000);
852
- }
853
-
854
- $process->setIdleTimeout(0.5);
855
-
856
- try {
857
- $process->wait();
858
- $this->fail('A timeout exception was expected.');
859
- } catch (ProcessTimedOutException $e) {
860
- $this->assertTrue($e->isGeneralTimeout(), 'A general timeout is expected.');
861
- $this->assertFalse($e->isIdleTimeout(), 'No idle timeout is expected.');
862
- $this->assertEquals(1, $e->getExceededTimeout());
863
- }
864
- }
865
-
866
- /**
867
- * @expectedException \Symfony\Component\Process\Exception\ProcessTimedOutException
868
- * @expectedExceptionMessage exceeded the timeout of 0.1 seconds.
869
- */
870
- public function testStartAfterATimeout()
871
- {
872
- $process = $this->getProcessForCode('sleep(35);');
873
- $process->setTimeout(0.1);
874
-
875
- try {
876
- $process->run();
877
- $this->fail('A ProcessTimedOutException should have been raised.');
878
- } catch (ProcessTimedOutException $e) {
879
- }
880
- $this->assertFalse($process->isRunning());
881
- $process->start();
882
- $this->assertTrue($process->isRunning());
883
- $process->stop(0);
884
-
885
- throw $e;
886
- }
887
-
888
- public function testGetPid()
889
- {
890
- $process = $this->getProcessForCode('sleep(36);');
891
- $process->start();
892
- $this->assertGreaterThan(0, $process->getPid());
893
- $process->stop(0);
894
- }
895
-
896
- public function testGetPidIsNullBeforeStart()
897
- {
898
- $process = $this->getProcess('foo');
899
- $this->assertNull($process->getPid());
900
- }
901
-
902
- public function testGetPidIsNullAfterRun()
903
- {
904
- $process = $this->getProcess('echo foo');
905
- $process->run();
906
- $this->assertNull($process->getPid());
907
- }
908
-
909
- /**
910
- * @requires extension pcntl
911
- */
912
- public function testSignal()
913
- {
914
- $process = $this->getProcess(array(self::$phpBin, __DIR__.'/SignalListener.php'));
915
- $process->start();
916
-
917
- while (false === strpos($process->getOutput(), 'Caught')) {
918
- usleep(1000);
919
- }
920
- $process->signal(SIGUSR1);
921
- $process->wait();
922
-
923
- $this->assertEquals('Caught SIGUSR1', $process->getOutput());
924
- }
925
-
926
- /**
927
- * @requires extension pcntl
928
- */
929
- public function testExitCodeIsAvailableAfterSignal()
930
- {
931
- $process = $this->getProcess('sleep 4');
932
- $process->start();
933
- $process->signal(SIGKILL);
934
-
935
- while ($process->isRunning()) {
936
- usleep(10000);
937
- }
938
-
939
- $this->assertFalse($process->isRunning());
940
- $this->assertTrue($process->hasBeenSignaled());
941
- $this->assertFalse($process->isSuccessful());
942
- $this->assertEquals(137, $process->getExitCode());
943
- }
944
-
945
- /**
946
- * @expectedException \Symfony\Component\Process\Exception\LogicException
947
- * @expectedExceptionMessage Can not send signal on a non running process.
948
- */
949
- public function testSignalProcessNotRunning()
950
- {
951
- $process = $this->getProcess('foo');
952
- $process->signal(1); // SIGHUP
953
- }
954
-
955
- /**
956
- * @dataProvider provideMethodsThatNeedARunningProcess
957
- */
958
- public function testMethodsThatNeedARunningProcess($method)
959
- {
960
- $process = $this->getProcess('foo');
961
-
962
- if (method_exists($this, 'expectException')) {
963
- $this->expectException('Symfony\Component\Process\Exception\LogicException');
964
- $this->expectExceptionMessage(sprintf('Process must be started before calling %s.', $method));
965
- } else {
966
- $this->setExpectedException('Symfony\Component\Process\Exception\LogicException', sprintf('Process must be started before calling %s.', $method));
967
- }
968
-
969
- $process->{$method}();
970
- }
971
-
972
- public function provideMethodsThatNeedARunningProcess()
973
- {
974
- return array(
975
- array('getOutput'),
976
- array('getIncrementalOutput'),
977
- array('getErrorOutput'),
978
- array('getIncrementalErrorOutput'),
979
- array('wait'),
980
- );
981
- }
982
-
983
- /**
984
- * @dataProvider provideMethodsThatNeedATerminatedProcess
985
- * @expectedException \Symfony\Component\Process\Exception\LogicException
986
- * @expectedExceptionMessage Process must be terminated before calling
987
- */
988
- public function testMethodsThatNeedATerminatedProcess($method)
989
- {
990
- $process = $this->getProcessForCode('sleep(37);');
991
- $process->start();
992
- try {
993
- $process->{$method}();
994
- $process->stop(0);
995
- $this->fail('A LogicException must have been thrown');
996
- } catch (\Exception $e) {
997
- }
998
- $process->stop(0);
999
-
1000
- throw $e;
1001
- }
1002
-
1003
- public function provideMethodsThatNeedATerminatedProcess()
1004
- {
1005
- return array(
1006
- array('hasBeenSignaled'),
1007
- array('getTermSignal'),
1008
- array('hasBeenStopped'),
1009
- array('getStopSignal'),
1010
- );
1011
- }
1012
-
1013
- /**
1014
- * @expectedException \Symfony\Component\Process\Exception\RuntimeException
1015
- */
1016
- public function testWrongSignal()
1017
- {
1018
- if ('\\' === \DIRECTORY_SEPARATOR) {
1019
- $this->markTestSkipped('POSIX signals do not work on Windows');
1020
- }
1021
-
1022
- $process = $this->getProcessForCode('sleep(38);');
1023
- $process->start();
1024
- try {
1025
- $process->signal(-4);
1026
- $this->fail('A RuntimeException must have been thrown');
1027
- } catch (RuntimeException $e) {
1028
- $process->stop(0);
1029
- }
1030
-
1031
- throw $e;
1032
- }
1033
-
1034
- public function testDisableOutputDisablesTheOutput()
1035
- {
1036
- $p = $this->getProcess('foo');
1037
- $this->assertFalse($p->isOutputDisabled());
1038
- $p->disableOutput();
1039
- $this->assertTrue($p->isOutputDisabled());
1040
- $p->enableOutput();
1041
- $this->assertFalse($p->isOutputDisabled());
1042
- }
1043
-
1044
- /**
1045
- * @expectedException \Symfony\Component\Process\Exception\RuntimeException
1046
- * @expectedExceptionMessage Disabling output while the process is running is not possible.
1047
- */
1048
- public function testDisableOutputWhileRunningThrowsException()
1049
- {
1050
- $p = $this->getProcessForCode('sleep(39);');
1051
- $p->start();
1052
- $p->disableOutput();
1053
- }
1054
-
1055
- /**
1056
- * @expectedException \Symfony\Component\Process\Exception\RuntimeException
1057
- * @expectedExceptionMessage Enabling output while the process is running is not possible.
1058
- */
1059
- public function testEnableOutputWhileRunningThrowsException()
1060
- {
1061
- $p = $this->getProcessForCode('sleep(40);');
1062
- $p->disableOutput();
1063
- $p->start();
1064
- $p->enableOutput();
1065
- }
1066
-
1067
- public function testEnableOrDisableOutputAfterRunDoesNotThrowException()
1068
- {
1069
- $p = $this->getProcess('echo foo');
1070
- $p->disableOutput();
1071
- $p->run();
1072
- $p->enableOutput();
1073
- $p->disableOutput();
1074
- $this->assertTrue($p->isOutputDisabled());
1075
- }
1076
-
1077
- /**
1078
- * @expectedException \Symfony\Component\Process\Exception\LogicException
1079
- * @expectedExceptionMessage Output can not be disabled while an idle timeout is set.
1080
- */
1081
- public function testDisableOutputWhileIdleTimeoutIsSet()
1082
- {
1083
- $process = $this->getProcess('foo');
1084
- $process->setIdleTimeout(1);
1085
- $process->disableOutput();
1086
- }
1087
-
1088
- /**
1089
- * @expectedException \Symfony\Component\Process\Exception\LogicException
1090
- * @expectedExceptionMessage timeout can not be set while the output is disabled.
1091
- */
1092
- public function testSetIdleTimeoutWhileOutputIsDisabled()
1093
- {
1094
- $process = $this->getProcess('foo');
1095
- $process->disableOutput();
1096
- $process->setIdleTimeout(1);
1097
- }
1098
-
1099
- public function testSetNullIdleTimeoutWhileOutputIsDisabled()
1100
- {
1101
- $process = $this->getProcess('foo');
1102
- $process->disableOutput();
1103
- $this->assertSame($process, $process->setIdleTimeout(null));
1104
- }
1105
-
1106
- /**
1107
- * @dataProvider provideOutputFetchingMethods
1108
- * @expectedException \Symfony\Component\Process\Exception\LogicException
1109
- * @expectedExceptionMessage Output has been disabled.
1110
- */
1111
- public function testGetOutputWhileDisabled($fetchMethod)
1112
- {
1113
- $p = $this->getProcessForCode('sleep(41);');
1114
- $p->disableOutput();
1115
- $p->start();
1116
- $p->{$fetchMethod}();
1117
- }
1118
-
1119
- public function provideOutputFetchingMethods()
1120
- {
1121
- return array(
1122
- array('getOutput'),
1123
- array('getIncrementalOutput'),
1124
- array('getErrorOutput'),
1125
- array('getIncrementalErrorOutput'),
1126
- );
1127
- }
1128
-
1129
- public function testStopTerminatesProcessCleanly()
1130
- {
1131
- $process = $this->getProcessForCode('echo 123; sleep(42);');
1132
- $process->run(function () use ($process) {
1133
- $process->stop();
1134
- });
1135
- $this->assertTrue(true, 'A call to stop() is not expected to cause wait() to throw a RuntimeException');
1136
- }
1137
-
1138
- public function testKillSignalTerminatesProcessCleanly()
1139
- {
1140
- $process = $this->getProcessForCode('echo 123; sleep(43);');
1141
- $process->run(function () use ($process) {
1142
- $process->signal(9); // SIGKILL
1143
- });
1144
- $this->assertTrue(true, 'A call to signal() is not expected to cause wait() to throw a RuntimeException');
1145
- }
1146
-
1147
- public function testTermSignalTerminatesProcessCleanly()
1148
- {
1149
- $process = $this->getProcessForCode('echo 123; sleep(44);');
1150
- $process->run(function () use ($process) {
1151
- $process->signal(15); // SIGTERM
1152
- });
1153
- $this->assertTrue(true, 'A call to signal() is not expected to cause wait() to throw a RuntimeException');
1154
- }
1155
-
1156
- public function responsesCodeProvider()
1157
- {
1158
- return array(
1159
- //expected output / getter / code to execute
1160
- //array(1,'getExitCode','exit(1);'),
1161
- //array(true,'isSuccessful','exit();'),
1162
- array('output', 'getOutput', 'echo \'output\';'),
1163
- );
1164
- }
1165
-
1166
- public function pipesCodeProvider()
1167
- {
1168
- $variations = array(
1169
- 'fwrite(STDOUT, $in = file_get_contents(\'php://stdin\')); fwrite(STDERR, $in);',
1170
- 'include \''.__DIR__.'/PipeStdinInStdoutStdErrStreamSelect.php\';',
1171
- );
1172
-
1173
- if ('\\' === \DIRECTORY_SEPARATOR) {
1174
- // Avoid XL buffers on Windows because of https://bugs.php.net/bug.php?id=65650
1175
- $sizes = array(1, 2, 4, 8);
1176
- } else {
1177
- $sizes = array(1, 16, 64, 1024, 4096);
1178
- }
1179
-
1180
- $codes = array();
1181
- foreach ($sizes as $size) {
1182
- foreach ($variations as $code) {
1183
- $codes[] = array($code, $size);
1184
- }
1185
- }
1186
-
1187
- return $codes;
1188
- }
1189
-
1190
- /**
1191
- * @dataProvider provideVariousIncrementals
1192
- */
1193
- public function testIncrementalOutputDoesNotRequireAnotherCall($stream, $method)
1194
- {
1195
- $process = $this->getProcessForCode('$n = 0; while ($n < 3) { file_put_contents(\''.$stream.'\', $n, 1); $n++; usleep(1000); }', null, null, null, null);
1196
- $process->start();
1197
- $result = '';
1198
- $limit = microtime(true) + 3;
1199
- $expected = '012';
1200
-
1201
- while ($result !== $expected && microtime(true) < $limit) {
1202
- $result .= $process->$method();
1203
- }
1204
-
1205
- $this->assertSame($expected, $result);
1206
- $process->stop();
1207
- }
1208
-
1209
- public function provideVariousIncrementals()
1210
- {
1211
- return array(
1212
- array('php://stdout', 'getIncrementalOutput'),
1213
- array('php://stderr', 'getIncrementalErrorOutput'),
1214
- );
1215
- }
1216
-
1217
- public function testIteratorInput()
1218
- {
1219
- $input = function () {
1220
- yield 'ping';
1221
- yield 'pong';
1222
- };
1223
-
1224
- $process = $this->getProcessForCode('stream_copy_to_stream(STDIN, STDOUT);', null, null, $input());
1225
- $process->run();
1226
- $this->assertSame('pingpong', $process->getOutput());
1227
- }
1228
-
1229
- public function testSimpleInputStream()
1230
- {
1231
- $input = new InputStream();
1232
-
1233
- $process = $this->getProcessForCode('echo \'ping\'; echo fread(STDIN, 4); echo fread(STDIN, 4);');
1234
- $process->setInput($input);
1235
-
1236
- $process->start(function ($type, $data) use ($input) {
1237
- if ('ping' === $data) {
1238
- $input->write('pang');
1239
- } elseif (!$input->isClosed()) {
1240
- $input->write('pong');
1241
- $input->close();
1242
- }
1243
- });
1244
-
1245
- $process->wait();
1246
- $this->assertSame('pingpangpong', $process->getOutput());
1247
- }
1248
-
1249
- public function testInputStreamWithCallable()
1250
- {
1251
- $i = 0;
1252
- $stream = fopen('php://memory', 'w+');
1253
- $stream = function () use ($stream, &$i) {
1254
- if ($i < 3) {
1255
- rewind($stream);
1256
- fwrite($stream, ++$i);
1257
- rewind($stream);
1258
-
1259
- return $stream;
1260
- }
1261
- };
1262
-
1263
- $input = new InputStream();
1264
- $input->onEmpty($stream);
1265
- $input->write($stream());
1266
-
1267
- $process = $this->getProcessForCode('echo fread(STDIN, 3);');
1268
- $process->setInput($input);
1269
- $process->start(function ($type, $data) use ($input) {
1270
- $input->close();
1271
- });
1272
-
1273
- $process->wait();
1274
- $this->assertSame('123', $process->getOutput());
1275
- }
1276
-
1277
- public function testInputStreamWithGenerator()
1278
- {
1279
- $input = new InputStream();
1280
- $input->onEmpty(function ($input) {
1281
- yield 'pong';
1282
- $input->close();
1283
- });
1284
-
1285
- $process = $this->getProcessForCode('stream_copy_to_stream(STDIN, STDOUT);');
1286
- $process->setInput($input);
1287
- $process->start();
1288
- $input->write('ping');
1289
- $process->wait();
1290
- $this->assertSame('pingpong', $process->getOutput());
1291
- }
1292
-
1293
- public function testInputStreamOnEmpty()
1294
- {
1295
- $i = 0;
1296
- $input = new InputStream();
1297
- $input->onEmpty(function () use (&$i) { ++$i; });
1298
-
1299
- $process = $this->getProcessForCode('echo 123; echo fread(STDIN, 1); echo 456;');
1300
- $process->setInput($input);
1301
- $process->start(function ($type, $data) use ($input) {
1302
- if ('123' === $data) {
1303
- $input->close();
1304
- }
1305
- });
1306
- $process->wait();
1307
-
1308
- $this->assertSame(0, $i, 'InputStream->onEmpty callback should be called only when the input *becomes* empty');
1309
- $this->assertSame('123456', $process->getOutput());
1310
- }
1311
-
1312
- public function testIteratorOutput()
1313
- {
1314
- $input = new InputStream();
1315
-
1316
- $process = $this->getProcessForCode('fwrite(STDOUT, 123); fwrite(STDERR, 234); flush(); usleep(10000); fwrite(STDOUT, fread(STDIN, 3)); fwrite(STDERR, 456);');
1317
- $process->setInput($input);
1318
- $process->start();
1319
- $output = array();
1320
-
1321
- foreach ($process as $type => $data) {
1322
- $output[] = array($type, $data);
1323
- break;
1324
- }
1325
- $expectedOutput = array(
1326
- array($process::OUT, '123'),
1327
- );
1328
- $this->assertSame($expectedOutput, $output);
1329
-
1330
- $input->write(345);
1331
-
1332
- foreach ($process as $type => $data) {
1333
- $output[] = array($type, $data);
1334
- }
1335
-
1336
- $this->assertSame('', $process->getOutput());
1337
- $this->assertFalse($process->isRunning());
1338
-
1339
- $expectedOutput = array(
1340
- array($process::OUT, '123'),
1341
- array($process::ERR, '234'),
1342
- array($process::OUT, '345'),
1343
- array($process::ERR, '456'),
1344
- );
1345
- $this->assertSame($expectedOutput, $output);
1346
- }
1347
-
1348
- public function testNonBlockingNorClearingIteratorOutput()
1349
- {
1350
- $input = new InputStream();
1351
-
1352
- $process = $this->getProcessForCode('fwrite(STDOUT, fread(STDIN, 3));');
1353
- $process->setInput($input);
1354
- $process->start();
1355
- $output = array();
1356
-
1357
- foreach ($process->getIterator($process::ITER_NON_BLOCKING | $process::ITER_KEEP_OUTPUT) as $type => $data) {
1358
- $output[] = array($type, $data);
1359
- break;
1360
- }
1361
- $expectedOutput = array(
1362
- array($process::OUT, ''),
1363
- );
1364
- $this->assertSame($expectedOutput, $output);
1365
-
1366
- $input->write(123);
1367
-
1368
- foreach ($process->getIterator($process::ITER_NON_BLOCKING | $process::ITER_KEEP_OUTPUT) as $type => $data) {
1369
- if ('' !== $data) {
1370
- $output[] = array($type, $data);
1371
- }
1372
- }
1373
-
1374
- $this->assertSame('123', $process->getOutput());
1375
- $this->assertFalse($process->isRunning());
1376
-
1377
- $expectedOutput = array(
1378
- array($process::OUT, ''),
1379
- array($process::OUT, '123'),
1380
- );
1381
- $this->assertSame($expectedOutput, $output);
1382
- }
1383
-
1384
- public function testChainedProcesses()
1385
- {
1386
- $p1 = $this->getProcessForCode('fwrite(STDERR, 123); fwrite(STDOUT, 456);');
1387
- $p2 = $this->getProcessForCode('stream_copy_to_stream(STDIN, STDOUT);');
1388
- $p2->setInput($p1);
1389
-
1390
- $p1->start();
1391
- $p2->run();
1392
-
1393
- $this->assertSame('123', $p1->getErrorOutput());
1394
- $this->assertSame('', $p1->getOutput());
1395
- $this->assertSame('', $p2->getErrorOutput());
1396
- $this->assertSame('456', $p2->getOutput());
1397
- }
1398
-
1399
- public function testSetBadEnv()
1400
- {
1401
- $process = $this->getProcess('echo hello');
1402
- $process->setEnv(array('bad%%' => '123'));
1403
- $process->inheritEnvironmentVariables(true);
1404
-
1405
- $process->run();
1406
-
1407
- $this->assertSame('hello'.PHP_EOL, $process->getOutput());
1408
- $this->assertSame('', $process->getErrorOutput());
1409
- }
1410
-
1411
- public function testEnvBackupDoesNotDeleteExistingVars()
1412
- {
1413
- putenv('existing_var=foo');
1414
- $_ENV['existing_var'] = 'foo';
1415
- $process = $this->getProcess('php -r "echo getenv(\'new_test_var\');"');
1416
- $process->setEnv(array('existing_var' => 'bar', 'new_test_var' => 'foo'));
1417
- $process->inheritEnvironmentVariables();
1418
-
1419
- $process->run();
1420
-
1421
- $this->assertSame('foo', $process->getOutput());
1422
- $this->assertSame('foo', getenv('existing_var'));
1423
- $this->assertFalse(getenv('new_test_var'));
1424
-
1425
- putenv('existing_var');
1426
- unset($_ENV['existing_var']);
1427
- }
1428
-
1429
- public function testEnvIsInherited()
1430
- {
1431
- $process = $this->getProcessForCode('echo serialize($_SERVER);', null, array('BAR' => 'BAZ', 'EMPTY' => ''));
1432
-
1433
- putenv('FOO=BAR');
1434
- $_ENV['FOO'] = 'BAR';
1435
-
1436
- $process->run();
1437
-
1438
- $expected = array('BAR' => 'BAZ', 'EMPTY' => '', 'FOO' => 'BAR');
1439
- $env = array_intersect_key(unserialize($process->getOutput()), $expected);
1440
-
1441
- $this->assertEquals($expected, $env);
1442
-
1443
- putenv('FOO');
1444
- unset($_ENV['FOO']);
1445
- }
1446
-
1447
- public function testGetCommandLine()
1448
- {
1449
- $p = new Process(array('/usr/bin/php'));
1450
-
1451
- $expected = '\\' === \DIRECTORY_SEPARATOR ? '"/usr/bin/php"' : "'/usr/bin/php'";
1452
- $this->assertSame($expected, $p->getCommandLine());
1453
- }
1454
-
1455
- /**
1456
- * @dataProvider provideEscapeArgument
1457
- */
1458
- public function testEscapeArgument($arg)
1459
- {
1460
- $p = new Process(array(self::$phpBin, '-r', 'echo $argv[1];', $arg));
1461
- $p->run();
1462
-
1463
- $this->assertSame((string) $arg, $p->getOutput());
1464
- }
1465
-
1466
- public function testRawCommandLine()
1467
- {
1468
- $p = Process::fromShellCommandline(sprintf('"%s" -r %s "a" "" "b"', self::$phpBin, escapeshellarg('print_r($argv);')));
1469
- $p->run();
1470
-
1471
- $expected = <<<EOTXT
1472
- Array
1473
- (
1474
- [0] => -
1475
- [1] => a
1476
- [2] =>
1477
- [3] => b
1478
- )
1479
-
1480
- EOTXT;
1481
- $this->assertSame($expected, str_replace('Standard input code', '-', $p->getOutput()));
1482
- }
1483
-
1484
- public function provideEscapeArgument()
1485
- {
1486
- yield array('a"b%c%');
1487
- yield array('a"b^c^');
1488
- yield array("a\nb'c");
1489
- yield array('a^b c!');
1490
- yield array("a!b\tc");
1491
- yield array('a\\\\"\\"');
1492
- yield array('éÉèÈàÀöä');
1493
- yield array(null);
1494
- yield array(1);
1495
- yield array(1.1);
1496
- }
1497
-
1498
- public function testEnvArgument()
1499
- {
1500
- $env = array('FOO' => 'Foo', 'BAR' => 'Bar');
1501
- $cmd = '\\' === \DIRECTORY_SEPARATOR ? 'echo !FOO! !BAR! !BAZ!' : 'echo $FOO $BAR $BAZ';
1502
- $p = Process::fromShellCommandline($cmd, null, $env);
1503
- $p->run(null, array('BAR' => 'baR', 'BAZ' => 'baZ'));
1504
-
1505
- $this->assertSame('Foo baR baZ', rtrim($p->getOutput()));
1506
- $this->assertSame($env, $p->getEnv());
1507
- }
1508
-
1509
- private function getProcess($commandline, string $cwd = null, array $env = null, $input = null, ?int $timeout = 60): Process
1510
- {
1511
- if (\is_string($commandline)) {
1512
- $process = Process::fromShellCommandline($commandline, $cwd, $env, $input, $timeout);
1513
- } else {
1514
- $process = new Process($commandline, $cwd, $env, $input, $timeout);
1515
- }
1516
- $process->inheritEnvironmentVariables();
1517
-
1518
- if (self::$process) {
1519
- self::$process->stop(0);
1520
- }
1521
-
1522
- return self::$process = $process;
1523
- }
1524
-
1525
- private function getProcessForCode(string $code, string $cwd = null, array $env = null, $input = null, ?int $timeout = 60): Process
1526
- {
1527
- return $this->getProcess(array(self::$phpBin, '-r', $code), $cwd, $env, $input, $timeout);
1528
- }
1529
- }
1530
-
1531
- class NonStringifiable
1532
- {
1533
- }