├── .gitignore ├── init.sh ├── README.md ├── tests ├── Demo │ └── DemoTest.php └── TestCase.php ├── phpunit.xml ├── composer.json └── composer.lock /.gitignore: -------------------------------------------------------------------------------- 1 | /vendor/ 2 | -------------------------------------------------------------------------------- /init.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | #copy test demo folder and phpunit.xml examplefile 4 | if [[ ! -d '../../../tests' ]]; then 5 | cp -r ./tests ../../../ 6 | cp ./phpunit.xml ../../../ 7 | fi 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ThinkPHP5——phpunit测试用例 2 | 3 | 由于think官方版的think-testing依赖的phpunit版本太老的问题, 自己写了个thinkphp5下的phpunit测试用例 4 | 5 | ## 使用 6 | 7 | > composer require tigerb/think-phpunit 8 | 9 | ## 版本 10 | 11 | - thinkphp 5+ 12 | - phpunit 5+ 13 | 14 | ## 手册 15 | 16 | > [phpunit断言API](https://phpunit.de/manual/current/zh_cn/appendixes.assertions.html) 17 | -------------------------------------------------------------------------------- /tests/Demo/DemoTest.php: -------------------------------------------------------------------------------- 1 | assertEquals( 14 | 'Hello Think', 15 | 'Hello Think' 16 | ); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /tests/TestCase.php: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 13 | ./tests/ 14 | 15 | 16 | 17 | 18 | application/ 19 | 20 | 21 | 22 | =5.6.0", 14 | "phpunit/phpunit": "^5.6" 15 | }, 16 | "autoload": { 17 | "psr-4": { 18 | "Case\\": "./tests" 19 | } 20 | }, 21 | "keywords": [ 22 | "think-phpunit", 23 | "think-testing", 24 | "phpunit", 25 | "ThinkPHP5" 26 | ], 27 | "homepage": "https://github.com/TIGERB/think-phpunit", 28 | "minimum-stability": "stable", 29 | "config": { 30 | "preferred-install": "dist" 31 | }, 32 | "scripts": { 33 | "post-install-cmd": [ 34 | "bash +x ./init.sh" 35 | ] 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_readme": [ 3 | "This file locks the dependencies of your project to a known state", 4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", 5 | "This file is @generated automatically" 6 | ], 7 | "hash": "663abfa06cfbfd95eccef62a0c5a6f93", 8 | "content-hash": "f297bd99c21064b515317eea9c8fa579", 9 | "packages": [ 10 | { 11 | "name": "doctrine/instantiator", 12 | "version": "1.0.5", 13 | "source": { 14 | "type": "git", 15 | "url": "https://github.com/doctrine/instantiator.git", 16 | "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d" 17 | }, 18 | "dist": { 19 | "type": "zip", 20 | "url": "https://files.phpcomposer.com/files/doctrine/instantiator/8e884e78f9f0eb1329e445619e04456e64d8051d.zip", 21 | "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d", 22 | "shasum": "" 23 | }, 24 | "require": { 25 | "php": ">=5.3,<8.0-DEV" 26 | }, 27 | "require-dev": { 28 | "athletic/athletic": "~0.1.8", 29 | "ext-pdo": "*", 30 | "ext-phar": "*", 31 | "phpunit/phpunit": "~4.0", 32 | "squizlabs/php_codesniffer": "~2.0" 33 | }, 34 | "type": "library", 35 | "extra": { 36 | "branch-alias": { 37 | "dev-master": "1.0.x-dev" 38 | } 39 | }, 40 | "autoload": { 41 | "psr-4": { 42 | "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" 43 | } 44 | }, 45 | "notification-url": "https://packagist.org/downloads/", 46 | "license": [ 47 | "MIT" 48 | ], 49 | "authors": [ 50 | { 51 | "name": "Marco Pivetta", 52 | "email": "ocramius@gmail.com", 53 | "homepage": "http://ocramius.github.com/" 54 | } 55 | ], 56 | "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", 57 | "homepage": "https://github.com/doctrine/instantiator", 58 | "keywords": [ 59 | "constructor", 60 | "instantiate" 61 | ], 62 | "time": "2015-06-14 21:17:01" 63 | }, 64 | { 65 | "name": "myclabs/deep-copy", 66 | "version": "1.6.0", 67 | "source": { 68 | "type": "git", 69 | "url": "https://github.com/myclabs/DeepCopy.git", 70 | "reference": "5a5a9fc8025a08d8919be87d6884d5a92520cefe" 71 | }, 72 | "dist": { 73 | "type": "zip", 74 | "url": "https://files.phpcomposer.com/files/myclabs/DeepCopy/5a5a9fc8025a08d8919be87d6884d5a92520cefe.zip", 75 | "reference": "5a5a9fc8025a08d8919be87d6884d5a92520cefe", 76 | "shasum": "" 77 | }, 78 | "require": { 79 | "php": ">=5.4.0" 80 | }, 81 | "require-dev": { 82 | "doctrine/collections": "1.*", 83 | "phpunit/phpunit": "~4.1" 84 | }, 85 | "type": "library", 86 | "autoload": { 87 | "psr-4": { 88 | "DeepCopy\\": "src/DeepCopy/" 89 | } 90 | }, 91 | "notification-url": "https://packagist.org/downloads/", 92 | "license": [ 93 | "MIT" 94 | ], 95 | "description": "Create deep copies (clones) of your objects", 96 | "homepage": "https://github.com/myclabs/DeepCopy", 97 | "keywords": [ 98 | "clone", 99 | "copy", 100 | "duplicate", 101 | "object", 102 | "object graph" 103 | ], 104 | "time": "2017-01-26 22:05:40" 105 | }, 106 | { 107 | "name": "phpdocumentor/reflection-common", 108 | "version": "1.0", 109 | "source": { 110 | "type": "git", 111 | "url": "https://github.com/phpDocumentor/ReflectionCommon.git", 112 | "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c" 113 | }, 114 | "dist": { 115 | "type": "zip", 116 | "url": "https://files.phpcomposer.com/files/phpDocumentor/ReflectionCommon/144c307535e82c8fdcaacbcfc1d6d8eeb896687c.zip", 117 | "reference": "144c307535e82c8fdcaacbcfc1d6d8eeb896687c", 118 | "shasum": "" 119 | }, 120 | "require": { 121 | "php": ">=5.5" 122 | }, 123 | "require-dev": { 124 | "phpunit/phpunit": "^4.6" 125 | }, 126 | "type": "library", 127 | "extra": { 128 | "branch-alias": { 129 | "dev-master": "1.0.x-dev" 130 | } 131 | }, 132 | "autoload": { 133 | "psr-4": { 134 | "phpDocumentor\\Reflection\\": [ 135 | "src" 136 | ] 137 | } 138 | }, 139 | "notification-url": "https://packagist.org/downloads/", 140 | "license": [ 141 | "MIT" 142 | ], 143 | "authors": [ 144 | { 145 | "name": "Jaap van Otterdijk", 146 | "email": "opensource@ijaap.nl" 147 | } 148 | ], 149 | "description": "Common reflection classes used by phpdocumentor to reflect the code structure", 150 | "homepage": "http://www.phpdoc.org", 151 | "keywords": [ 152 | "FQSEN", 153 | "phpDocumentor", 154 | "phpdoc", 155 | "reflection", 156 | "static analysis" 157 | ], 158 | "time": "2015-12-27 11:43:31" 159 | }, 160 | { 161 | "name": "phpdocumentor/reflection-docblock", 162 | "version": "3.1.1", 163 | "source": { 164 | "type": "git", 165 | "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", 166 | "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e" 167 | }, 168 | "dist": { 169 | "type": "zip", 170 | "url": "https://files.phpcomposer.com/files/phpDocumentor/ReflectionDocBlock/8331b5efe816ae05461b7ca1e721c01b46bafb3e.zip", 171 | "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e", 172 | "shasum": "" 173 | }, 174 | "require": { 175 | "php": ">=5.5", 176 | "phpdocumentor/reflection-common": "^1.0@dev", 177 | "phpdocumentor/type-resolver": "^0.2.0", 178 | "webmozart/assert": "^1.0" 179 | }, 180 | "require-dev": { 181 | "mockery/mockery": "^0.9.4", 182 | "phpunit/phpunit": "^4.4" 183 | }, 184 | "type": "library", 185 | "autoload": { 186 | "psr-4": { 187 | "phpDocumentor\\Reflection\\": [ 188 | "src/" 189 | ] 190 | } 191 | }, 192 | "notification-url": "https://packagist.org/downloads/", 193 | "license": [ 194 | "MIT" 195 | ], 196 | "authors": [ 197 | { 198 | "name": "Mike van Riel", 199 | "email": "me@mikevanriel.com" 200 | } 201 | ], 202 | "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", 203 | "time": "2016-09-30 07:12:33" 204 | }, 205 | { 206 | "name": "phpdocumentor/type-resolver", 207 | "version": "0.2.1", 208 | "source": { 209 | "type": "git", 210 | "url": "https://github.com/phpDocumentor/TypeResolver.git", 211 | "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb" 212 | }, 213 | "dist": { 214 | "type": "zip", 215 | "url": "https://files.phpcomposer.com/files/phpDocumentor/TypeResolver/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb.zip", 216 | "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb", 217 | "shasum": "" 218 | }, 219 | "require": { 220 | "php": ">=5.5", 221 | "phpdocumentor/reflection-common": "^1.0" 222 | }, 223 | "require-dev": { 224 | "mockery/mockery": "^0.9.4", 225 | "phpunit/phpunit": "^5.2||^4.8.24" 226 | }, 227 | "type": "library", 228 | "extra": { 229 | "branch-alias": { 230 | "dev-master": "1.0.x-dev" 231 | } 232 | }, 233 | "autoload": { 234 | "psr-4": { 235 | "phpDocumentor\\Reflection\\": [ 236 | "src/" 237 | ] 238 | } 239 | }, 240 | "notification-url": "https://packagist.org/downloads/", 241 | "license": [ 242 | "MIT" 243 | ], 244 | "authors": [ 245 | { 246 | "name": "Mike van Riel", 247 | "email": "me@mikevanriel.com" 248 | } 249 | ], 250 | "time": "2016-11-25 06:54:22" 251 | }, 252 | { 253 | "name": "phpspec/prophecy", 254 | "version": "v1.7.0", 255 | "source": { 256 | "type": "git", 257 | "url": "https://github.com/phpspec/prophecy.git", 258 | "reference": "93d39f1f7f9326d746203c7c056f300f7f126073" 259 | }, 260 | "dist": { 261 | "type": "zip", 262 | "url": "https://files.phpcomposer.com/files/phpspec/prophecy/93d39f1f7f9326d746203c7c056f300f7f126073.zip", 263 | "reference": "93d39f1f7f9326d746203c7c056f300f7f126073", 264 | "shasum": "" 265 | }, 266 | "require": { 267 | "doctrine/instantiator": "^1.0.2", 268 | "php": "^5.3|^7.0", 269 | "phpdocumentor/reflection-docblock": "^2.0|^3.0.2", 270 | "sebastian/comparator": "^1.1|^2.0", 271 | "sebastian/recursion-context": "^1.0|^2.0|^3.0" 272 | }, 273 | "require-dev": { 274 | "phpspec/phpspec": "^2.5|^3.2", 275 | "phpunit/phpunit": "^4.8 || ^5.6.5" 276 | }, 277 | "type": "library", 278 | "extra": { 279 | "branch-alias": { 280 | "dev-master": "1.6.x-dev" 281 | } 282 | }, 283 | "autoload": { 284 | "psr-0": { 285 | "Prophecy\\": "src/" 286 | } 287 | }, 288 | "notification-url": "https://packagist.org/downloads/", 289 | "license": [ 290 | "MIT" 291 | ], 292 | "authors": [ 293 | { 294 | "name": "Konstantin Kudryashov", 295 | "email": "ever.zet@gmail.com", 296 | "homepage": "http://everzet.com" 297 | }, 298 | { 299 | "name": "Marcello Duarte", 300 | "email": "marcello.duarte@gmail.com" 301 | } 302 | ], 303 | "description": "Highly opinionated mocking framework for PHP 5.3+", 304 | "homepage": "https://github.com/phpspec/prophecy", 305 | "keywords": [ 306 | "Double", 307 | "Dummy", 308 | "fake", 309 | "mock", 310 | "spy", 311 | "stub" 312 | ], 313 | "time": "2017-03-02 20:05:34" 314 | }, 315 | { 316 | "name": "phpunit/php-code-coverage", 317 | "version": "5.0.3", 318 | "source": { 319 | "type": "git", 320 | "url": "https://github.com/sebastianbergmann/php-code-coverage.git", 321 | "reference": "4e99e1c4f9b05cbf4d6e84b100b3ff4107cf8cd1" 322 | }, 323 | "dist": { 324 | "type": "zip", 325 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/php-code-coverage/4e99e1c4f9b05cbf4d6e84b100b3ff4107cf8cd1.zip", 326 | "reference": "4e99e1c4f9b05cbf4d6e84b100b3ff4107cf8cd1", 327 | "shasum": "" 328 | }, 329 | "require": { 330 | "ext-dom": "*", 331 | "ext-xmlwriter": "*", 332 | "php": "^7.0", 333 | "phpunit/php-file-iterator": "^1.3", 334 | "phpunit/php-text-template": "^1.2", 335 | "phpunit/php-token-stream": "^1.4.11 || ^2.0", 336 | "sebastian/code-unit-reverse-lookup": "^1.0", 337 | "sebastian/environment": "^2.0", 338 | "sebastian/version": "^2.0" 339 | }, 340 | "require-dev": { 341 | "ext-xdebug": "^2.5", 342 | "phpunit/phpunit": "^6.0" 343 | }, 344 | "suggest": { 345 | "ext-xdebug": "^2.5.1" 346 | }, 347 | "type": "library", 348 | "extra": { 349 | "branch-alias": { 350 | "dev-master": "5.0.x-dev" 351 | } 352 | }, 353 | "autoload": { 354 | "classmap": [ 355 | "src/" 356 | ] 357 | }, 358 | "notification-url": "https://packagist.org/downloads/", 359 | "license": [ 360 | "BSD-3-Clause" 361 | ], 362 | "authors": [ 363 | { 364 | "name": "Sebastian Bergmann", 365 | "email": "sb@sebastian-bergmann.de", 366 | "role": "lead" 367 | } 368 | ], 369 | "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", 370 | "homepage": "https://github.com/sebastianbergmann/php-code-coverage", 371 | "keywords": [ 372 | "coverage", 373 | "testing", 374 | "xunit" 375 | ], 376 | "time": "2017-03-06 14:22:16" 377 | }, 378 | { 379 | "name": "phpunit/php-file-iterator", 380 | "version": "1.4.2", 381 | "source": { 382 | "type": "git", 383 | "url": "https://github.com/sebastianbergmann/php-file-iterator.git", 384 | "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5" 385 | }, 386 | "dist": { 387 | "type": "zip", 388 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/php-file-iterator/3cc8f69b3028d0f96a9078e6295d86e9bf019be5.zip", 389 | "reference": "3cc8f69b3028d0f96a9078e6295d86e9bf019be5", 390 | "shasum": "" 391 | }, 392 | "require": { 393 | "php": ">=5.3.3" 394 | }, 395 | "type": "library", 396 | "extra": { 397 | "branch-alias": { 398 | "dev-master": "1.4.x-dev" 399 | } 400 | }, 401 | "autoload": { 402 | "classmap": [ 403 | "src/" 404 | ] 405 | }, 406 | "notification-url": "https://packagist.org/downloads/", 407 | "license": [ 408 | "BSD-3-Clause" 409 | ], 410 | "authors": [ 411 | { 412 | "name": "Sebastian Bergmann", 413 | "email": "sb@sebastian-bergmann.de", 414 | "role": "lead" 415 | } 416 | ], 417 | "description": "FilterIterator implementation that filters files based on a list of suffixes.", 418 | "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", 419 | "keywords": [ 420 | "filesystem", 421 | "iterator" 422 | ], 423 | "time": "2016-10-03 07:40:28" 424 | }, 425 | { 426 | "name": "phpunit/php-text-template", 427 | "version": "1.2.1", 428 | "source": { 429 | "type": "git", 430 | "url": "https://github.com/sebastianbergmann/php-text-template.git", 431 | "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686" 432 | }, 433 | "dist": { 434 | "type": "zip", 435 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/php-text-template/31f8b717e51d9a2afca6c9f046f5d69fc27c8686.zip", 436 | "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686", 437 | "shasum": "" 438 | }, 439 | "require": { 440 | "php": ">=5.3.3" 441 | }, 442 | "type": "library", 443 | "autoload": { 444 | "classmap": [ 445 | "src/" 446 | ] 447 | }, 448 | "notification-url": "https://packagist.org/downloads/", 449 | "license": [ 450 | "BSD-3-Clause" 451 | ], 452 | "authors": [ 453 | { 454 | "name": "Sebastian Bergmann", 455 | "email": "sebastian@phpunit.de", 456 | "role": "lead" 457 | } 458 | ], 459 | "description": "Simple template engine.", 460 | "homepage": "https://github.com/sebastianbergmann/php-text-template/", 461 | "keywords": [ 462 | "template" 463 | ], 464 | "time": "2015-06-21 13:50:34" 465 | }, 466 | { 467 | "name": "phpunit/php-timer", 468 | "version": "1.0.9", 469 | "source": { 470 | "type": "git", 471 | "url": "https://github.com/sebastianbergmann/php-timer.git", 472 | "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f" 473 | }, 474 | "dist": { 475 | "type": "zip", 476 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/php-timer/3dcf38ca72b158baf0bc245e9184d3fdffa9c46f.zip", 477 | "reference": "3dcf38ca72b158baf0bc245e9184d3fdffa9c46f", 478 | "shasum": "" 479 | }, 480 | "require": { 481 | "php": "^5.3.3 || ^7.0" 482 | }, 483 | "require-dev": { 484 | "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" 485 | }, 486 | "type": "library", 487 | "extra": { 488 | "branch-alias": { 489 | "dev-master": "1.0-dev" 490 | } 491 | }, 492 | "autoload": { 493 | "classmap": [ 494 | "src/" 495 | ] 496 | }, 497 | "notification-url": "https://packagist.org/downloads/", 498 | "license": [ 499 | "BSD-3-Clause" 500 | ], 501 | "authors": [ 502 | { 503 | "name": "Sebastian Bergmann", 504 | "email": "sb@sebastian-bergmann.de", 505 | "role": "lead" 506 | } 507 | ], 508 | "description": "Utility class for timing", 509 | "homepage": "https://github.com/sebastianbergmann/php-timer/", 510 | "keywords": [ 511 | "timer" 512 | ], 513 | "time": "2017-02-26 11:10:40" 514 | }, 515 | { 516 | "name": "phpunit/php-token-stream", 517 | "version": "1.4.11", 518 | "source": { 519 | "type": "git", 520 | "url": "https://github.com/sebastianbergmann/php-token-stream.git", 521 | "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7" 522 | }, 523 | "dist": { 524 | "type": "zip", 525 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/php-token-stream/e03f8f67534427a787e21a385a67ec3ca6978ea7.zip", 526 | "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7", 527 | "shasum": "" 528 | }, 529 | "require": { 530 | "ext-tokenizer": "*", 531 | "php": ">=5.3.3" 532 | }, 533 | "require-dev": { 534 | "phpunit/phpunit": "~4.2" 535 | }, 536 | "type": "library", 537 | "extra": { 538 | "branch-alias": { 539 | "dev-master": "1.4-dev" 540 | } 541 | }, 542 | "autoload": { 543 | "classmap": [ 544 | "src/" 545 | ] 546 | }, 547 | "notification-url": "https://packagist.org/downloads/", 548 | "license": [ 549 | "BSD-3-Clause" 550 | ], 551 | "authors": [ 552 | { 553 | "name": "Sebastian Bergmann", 554 | "email": "sebastian@phpunit.de" 555 | } 556 | ], 557 | "description": "Wrapper around PHP's tokenizer extension.", 558 | "homepage": "https://github.com/sebastianbergmann/php-token-stream/", 559 | "keywords": [ 560 | "tokenizer" 561 | ], 562 | "time": "2017-02-27 10:12:30" 563 | }, 564 | { 565 | "name": "phpunit/phpunit", 566 | "version": "6.0.8", 567 | "source": { 568 | "type": "git", 569 | "url": "https://github.com/sebastianbergmann/phpunit.git", 570 | "reference": "47ee3fa1bca5c50f1d25105201eb20df777bd7b6" 571 | }, 572 | "dist": { 573 | "type": "zip", 574 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/phpunit/47ee3fa1bca5c50f1d25105201eb20df777bd7b6.zip", 575 | "reference": "47ee3fa1bca5c50f1d25105201eb20df777bd7b6", 576 | "shasum": "" 577 | }, 578 | "require": { 579 | "ext-dom": "*", 580 | "ext-json": "*", 581 | "ext-libxml": "*", 582 | "ext-mbstring": "*", 583 | "ext-xml": "*", 584 | "myclabs/deep-copy": "^1.3", 585 | "php": "^7.0", 586 | "phpspec/prophecy": "^1.6.2", 587 | "phpunit/php-code-coverage": "^5.0", 588 | "phpunit/php-file-iterator": "^1.4", 589 | "phpunit/php-text-template": "^1.2", 590 | "phpunit/php-timer": "^1.0.6", 591 | "phpunit/phpunit-mock-objects": "^4.0", 592 | "sebastian/comparator": "^1.2.4 || ^2.0", 593 | "sebastian/diff": "^1.2", 594 | "sebastian/environment": "^2.0", 595 | "sebastian/exporter": "^2.0 || ^3.0", 596 | "sebastian/global-state": "^1.1 || ^2.0", 597 | "sebastian/object-enumerator": "^2.0 || ^3.0", 598 | "sebastian/resource-operations": "^1.0", 599 | "sebastian/version": "^2.0" 600 | }, 601 | "conflict": { 602 | "phpdocumentor/reflection-docblock": "3.0.2", 603 | "phpunit/dbunit": "<3.0" 604 | }, 605 | "require-dev": { 606 | "ext-pdo": "*" 607 | }, 608 | "suggest": { 609 | "ext-xdebug": "*", 610 | "phpunit/php-invoker": "^1.1" 611 | }, 612 | "bin": [ 613 | "phpunit" 614 | ], 615 | "type": "library", 616 | "extra": { 617 | "branch-alias": { 618 | "dev-master": "6.0.x-dev" 619 | } 620 | }, 621 | "autoload": { 622 | "classmap": [ 623 | "src/" 624 | ] 625 | }, 626 | "notification-url": "https://packagist.org/downloads/", 627 | "license": [ 628 | "BSD-3-Clause" 629 | ], 630 | "authors": [ 631 | { 632 | "name": "Sebastian Bergmann", 633 | "email": "sebastian@phpunit.de", 634 | "role": "lead" 635 | } 636 | ], 637 | "description": "The PHP Unit Testing framework.", 638 | "homepage": "https://phpunit.de/", 639 | "keywords": [ 640 | "phpunit", 641 | "testing", 642 | "xunit" 643 | ], 644 | "time": "2017-03-02 15:24:03" 645 | }, 646 | { 647 | "name": "phpunit/phpunit-mock-objects", 648 | "version": "4.0.1", 649 | "source": { 650 | "type": "git", 651 | "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git", 652 | "reference": "eabce450df194817a7d7e27e19013569a903a2bf" 653 | }, 654 | "dist": { 655 | "type": "zip", 656 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/phpunit-mock-objects/eabce450df194817a7d7e27e19013569a903a2bf.zip", 657 | "reference": "eabce450df194817a7d7e27e19013569a903a2bf", 658 | "shasum": "" 659 | }, 660 | "require": { 661 | "doctrine/instantiator": "^1.0.2", 662 | "php": "^7.0", 663 | "phpunit/php-text-template": "^1.2", 664 | "sebastian/exporter": "^3.0" 665 | }, 666 | "conflict": { 667 | "phpunit/phpunit": "<6.0" 668 | }, 669 | "require-dev": { 670 | "phpunit/phpunit": "^6.0" 671 | }, 672 | "suggest": { 673 | "ext-soap": "*" 674 | }, 675 | "type": "library", 676 | "extra": { 677 | "branch-alias": { 678 | "dev-master": "4.0.x-dev" 679 | } 680 | }, 681 | "autoload": { 682 | "classmap": [ 683 | "src/" 684 | ] 685 | }, 686 | "notification-url": "https://packagist.org/downloads/", 687 | "license": [ 688 | "BSD-3-Clause" 689 | ], 690 | "authors": [ 691 | { 692 | "name": "Sebastian Bergmann", 693 | "email": "sb@sebastian-bergmann.de", 694 | "role": "lead" 695 | } 696 | ], 697 | "description": "Mock Object library for PHPUnit", 698 | "homepage": "https://github.com/sebastianbergmann/phpunit-mock-objects/", 699 | "keywords": [ 700 | "mock", 701 | "xunit" 702 | ], 703 | "time": "2017-03-03 06:30:20" 704 | }, 705 | { 706 | "name": "sebastian/code-unit-reverse-lookup", 707 | "version": "1.0.1", 708 | "source": { 709 | "type": "git", 710 | "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", 711 | "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18" 712 | }, 713 | "dist": { 714 | "type": "zip", 715 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/code-unit-reverse-lookup/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18.zip", 716 | "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18", 717 | "shasum": "" 718 | }, 719 | "require": { 720 | "php": "^5.6 || ^7.0" 721 | }, 722 | "require-dev": { 723 | "phpunit/phpunit": "^5.7 || ^6.0" 724 | }, 725 | "type": "library", 726 | "extra": { 727 | "branch-alias": { 728 | "dev-master": "1.0.x-dev" 729 | } 730 | }, 731 | "autoload": { 732 | "classmap": [ 733 | "src/" 734 | ] 735 | }, 736 | "notification-url": "https://packagist.org/downloads/", 737 | "license": [ 738 | "BSD-3-Clause" 739 | ], 740 | "authors": [ 741 | { 742 | "name": "Sebastian Bergmann", 743 | "email": "sebastian@phpunit.de" 744 | } 745 | ], 746 | "description": "Looks up which function or method a line of code belongs to", 747 | "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", 748 | "time": "2017-03-04 06:30:41" 749 | }, 750 | { 751 | "name": "sebastian/comparator", 752 | "version": "2.0.0", 753 | "source": { 754 | "type": "git", 755 | "url": "https://github.com/sebastianbergmann/comparator.git", 756 | "reference": "20f84f468cb67efee293246e6a09619b891f55f0" 757 | }, 758 | "dist": { 759 | "type": "zip", 760 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/comparator/20f84f468cb67efee293246e6a09619b891f55f0.zip", 761 | "reference": "20f84f468cb67efee293246e6a09619b891f55f0", 762 | "shasum": "" 763 | }, 764 | "require": { 765 | "php": "^7.0", 766 | "sebastian/diff": "^1.2", 767 | "sebastian/exporter": "^3.0" 768 | }, 769 | "require-dev": { 770 | "phpunit/phpunit": "^6.0" 771 | }, 772 | "type": "library", 773 | "extra": { 774 | "branch-alias": { 775 | "dev-master": "2.0.x-dev" 776 | } 777 | }, 778 | "autoload": { 779 | "classmap": [ 780 | "src/" 781 | ] 782 | }, 783 | "notification-url": "https://packagist.org/downloads/", 784 | "license": [ 785 | "BSD-3-Clause" 786 | ], 787 | "authors": [ 788 | { 789 | "name": "Jeff Welch", 790 | "email": "whatthejeff@gmail.com" 791 | }, 792 | { 793 | "name": "Volker Dusch", 794 | "email": "github@wallbash.com" 795 | }, 796 | { 797 | "name": "Bernhard Schussek", 798 | "email": "bschussek@2bepublished.at" 799 | }, 800 | { 801 | "name": "Sebastian Bergmann", 802 | "email": "sebastian@phpunit.de" 803 | } 804 | ], 805 | "description": "Provides the functionality to compare PHP values for equality", 806 | "homepage": "http://www.github.com/sebastianbergmann/comparator", 807 | "keywords": [ 808 | "comparator", 809 | "compare", 810 | "equality" 811 | ], 812 | "time": "2017-03-03 06:26:08" 813 | }, 814 | { 815 | "name": "sebastian/diff", 816 | "version": "1.4.1", 817 | "source": { 818 | "type": "git", 819 | "url": "https://github.com/sebastianbergmann/diff.git", 820 | "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e" 821 | }, 822 | "dist": { 823 | "type": "zip", 824 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/diff/13edfd8706462032c2f52b4b862974dd46b71c9e.zip", 825 | "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e", 826 | "shasum": "" 827 | }, 828 | "require": { 829 | "php": ">=5.3.3" 830 | }, 831 | "require-dev": { 832 | "phpunit/phpunit": "~4.8" 833 | }, 834 | "type": "library", 835 | "extra": { 836 | "branch-alias": { 837 | "dev-master": "1.4-dev" 838 | } 839 | }, 840 | "autoload": { 841 | "classmap": [ 842 | "src/" 843 | ] 844 | }, 845 | "notification-url": "https://packagist.org/downloads/", 846 | "license": [ 847 | "BSD-3-Clause" 848 | ], 849 | "authors": [ 850 | { 851 | "name": "Kore Nordmann", 852 | "email": "mail@kore-nordmann.de" 853 | }, 854 | { 855 | "name": "Sebastian Bergmann", 856 | "email": "sebastian@phpunit.de" 857 | } 858 | ], 859 | "description": "Diff implementation", 860 | "homepage": "https://github.com/sebastianbergmann/diff", 861 | "keywords": [ 862 | "diff" 863 | ], 864 | "time": "2015-12-08 07:14:41" 865 | }, 866 | { 867 | "name": "sebastian/environment", 868 | "version": "2.0.0", 869 | "source": { 870 | "type": "git", 871 | "url": "https://github.com/sebastianbergmann/environment.git", 872 | "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac" 873 | }, 874 | "dist": { 875 | "type": "zip", 876 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/environment/5795ffe5dc5b02460c3e34222fee8cbe245d8fac.zip", 877 | "reference": "5795ffe5dc5b02460c3e34222fee8cbe245d8fac", 878 | "shasum": "" 879 | }, 880 | "require": { 881 | "php": "^5.6 || ^7.0" 882 | }, 883 | "require-dev": { 884 | "phpunit/phpunit": "^5.0" 885 | }, 886 | "type": "library", 887 | "extra": { 888 | "branch-alias": { 889 | "dev-master": "2.0.x-dev" 890 | } 891 | }, 892 | "autoload": { 893 | "classmap": [ 894 | "src/" 895 | ] 896 | }, 897 | "notification-url": "https://packagist.org/downloads/", 898 | "license": [ 899 | "BSD-3-Clause" 900 | ], 901 | "authors": [ 902 | { 903 | "name": "Sebastian Bergmann", 904 | "email": "sebastian@phpunit.de" 905 | } 906 | ], 907 | "description": "Provides functionality to handle HHVM/PHP environments", 908 | "homepage": "http://www.github.com/sebastianbergmann/environment", 909 | "keywords": [ 910 | "Xdebug", 911 | "environment", 912 | "hhvm" 913 | ], 914 | "time": "2016-11-26 07:53:53" 915 | }, 916 | { 917 | "name": "sebastian/exporter", 918 | "version": "3.0.0", 919 | "source": { 920 | "type": "git", 921 | "url": "https://github.com/sebastianbergmann/exporter.git", 922 | "reference": "b82d077cb3459e393abcf4867ae8f7230dcb51f6" 923 | }, 924 | "dist": { 925 | "type": "zip", 926 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/exporter/b82d077cb3459e393abcf4867ae8f7230dcb51f6.zip", 927 | "reference": "b82d077cb3459e393abcf4867ae8f7230dcb51f6", 928 | "shasum": "" 929 | }, 930 | "require": { 931 | "php": "^7.0", 932 | "sebastian/recursion-context": "^3.0" 933 | }, 934 | "require-dev": { 935 | "ext-mbstring": "*", 936 | "phpunit/phpunit": "^6.0" 937 | }, 938 | "type": "library", 939 | "extra": { 940 | "branch-alias": { 941 | "dev-master": "3.0.x-dev" 942 | } 943 | }, 944 | "autoload": { 945 | "classmap": [ 946 | "src/" 947 | ] 948 | }, 949 | "notification-url": "https://packagist.org/downloads/", 950 | "license": [ 951 | "BSD-3-Clause" 952 | ], 953 | "authors": [ 954 | { 955 | "name": "Jeff Welch", 956 | "email": "whatthejeff@gmail.com" 957 | }, 958 | { 959 | "name": "Volker Dusch", 960 | "email": "github@wallbash.com" 961 | }, 962 | { 963 | "name": "Bernhard Schussek", 964 | "email": "bschussek@2bepublished.at" 965 | }, 966 | { 967 | "name": "Sebastian Bergmann", 968 | "email": "sebastian@phpunit.de" 969 | }, 970 | { 971 | "name": "Adam Harvey", 972 | "email": "aharvey@php.net" 973 | } 974 | ], 975 | "description": "Provides the functionality to export PHP variables for visualization", 976 | "homepage": "http://www.github.com/sebastianbergmann/exporter", 977 | "keywords": [ 978 | "export", 979 | "exporter" 980 | ], 981 | "time": "2017-03-03 06:25:06" 982 | }, 983 | { 984 | "name": "sebastian/global-state", 985 | "version": "1.1.1", 986 | "source": { 987 | "type": "git", 988 | "url": "https://github.com/sebastianbergmann/global-state.git", 989 | "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4" 990 | }, 991 | "dist": { 992 | "type": "zip", 993 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/global-state/bc37d50fea7d017d3d340f230811c9f1d7280af4.zip", 994 | "reference": "bc37d50fea7d017d3d340f230811c9f1d7280af4", 995 | "shasum": "" 996 | }, 997 | "require": { 998 | "php": ">=5.3.3" 999 | }, 1000 | "require-dev": { 1001 | "phpunit/phpunit": "~4.2" 1002 | }, 1003 | "suggest": { 1004 | "ext-uopz": "*" 1005 | }, 1006 | "type": "library", 1007 | "extra": { 1008 | "branch-alias": { 1009 | "dev-master": "1.0-dev" 1010 | } 1011 | }, 1012 | "autoload": { 1013 | "classmap": [ 1014 | "src/" 1015 | ] 1016 | }, 1017 | "notification-url": "https://packagist.org/downloads/", 1018 | "license": [ 1019 | "BSD-3-Clause" 1020 | ], 1021 | "authors": [ 1022 | { 1023 | "name": "Sebastian Bergmann", 1024 | "email": "sebastian@phpunit.de" 1025 | } 1026 | ], 1027 | "description": "Snapshotting of global state", 1028 | "homepage": "http://www.github.com/sebastianbergmann/global-state", 1029 | "keywords": [ 1030 | "global state" 1031 | ], 1032 | "time": "2015-10-12 03:26:01" 1033 | }, 1034 | { 1035 | "name": "sebastian/object-enumerator", 1036 | "version": "3.0.2", 1037 | "source": { 1038 | "type": "git", 1039 | "url": "https://github.com/sebastianbergmann/object-enumerator.git", 1040 | "reference": "31dd3379d16446c5d86dec32ab1ad1f378581ad8" 1041 | }, 1042 | "dist": { 1043 | "type": "zip", 1044 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/object-enumerator/31dd3379d16446c5d86dec32ab1ad1f378581ad8.zip", 1045 | "reference": "31dd3379d16446c5d86dec32ab1ad1f378581ad8", 1046 | "shasum": "" 1047 | }, 1048 | "require": { 1049 | "php": "^7.0", 1050 | "sebastian/object-reflector": "^1.0", 1051 | "sebastian/recursion-context": "^3.0" 1052 | }, 1053 | "require-dev": { 1054 | "phpunit/phpunit": "^6.0" 1055 | }, 1056 | "type": "library", 1057 | "extra": { 1058 | "branch-alias": { 1059 | "dev-master": "3.0.x-dev" 1060 | } 1061 | }, 1062 | "autoload": { 1063 | "classmap": [ 1064 | "src/" 1065 | ] 1066 | }, 1067 | "notification-url": "https://packagist.org/downloads/", 1068 | "license": [ 1069 | "BSD-3-Clause" 1070 | ], 1071 | "authors": [ 1072 | { 1073 | "name": "Sebastian Bergmann", 1074 | "email": "sebastian@phpunit.de" 1075 | } 1076 | ], 1077 | "description": "Traverses array structures and object graphs to enumerate all referenced objects", 1078 | "homepage": "https://github.com/sebastianbergmann/object-enumerator/", 1079 | "time": "2017-03-12 15:17:29" 1080 | }, 1081 | { 1082 | "name": "sebastian/object-reflector", 1083 | "version": "1.0.0", 1084 | "source": { 1085 | "type": "git", 1086 | "url": "https://github.com/sebastianbergmann/object-reflector.git", 1087 | "reference": "2201553542d60d25db9c5b2c54330df776648008" 1088 | }, 1089 | "dist": { 1090 | "type": "zip", 1091 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/object-reflector/2201553542d60d25db9c5b2c54330df776648008.zip", 1092 | "reference": "2201553542d60d25db9c5b2c54330df776648008", 1093 | "shasum": "" 1094 | }, 1095 | "require": { 1096 | "php": "^7.0" 1097 | }, 1098 | "require-dev": { 1099 | "phpunit/phpunit": "^6.0" 1100 | }, 1101 | "type": "library", 1102 | "extra": { 1103 | "branch-alias": { 1104 | "dev-master": "1.0-dev" 1105 | } 1106 | }, 1107 | "autoload": { 1108 | "classmap": [ 1109 | "src/" 1110 | ] 1111 | }, 1112 | "notification-url": "https://packagist.org/downloads/", 1113 | "license": [ 1114 | "BSD-3-Clause" 1115 | ], 1116 | "authors": [ 1117 | { 1118 | "name": "Sebastian Bergmann", 1119 | "email": "sebastian@phpunit.de" 1120 | } 1121 | ], 1122 | "description": "Allows reflection of object attributes, including inherited and non-public ones", 1123 | "homepage": "https://github.com/sebastianbergmann/object-reflector/", 1124 | "time": "2017-03-12 15:10:22" 1125 | }, 1126 | { 1127 | "name": "sebastian/recursion-context", 1128 | "version": "3.0.0", 1129 | "source": { 1130 | "type": "git", 1131 | "url": "https://github.com/sebastianbergmann/recursion-context.git", 1132 | "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8" 1133 | }, 1134 | "dist": { 1135 | "type": "zip", 1136 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/recursion-context/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8.zip", 1137 | "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8", 1138 | "shasum": "" 1139 | }, 1140 | "require": { 1141 | "php": "^7.0" 1142 | }, 1143 | "require-dev": { 1144 | "phpunit/phpunit": "^6.0" 1145 | }, 1146 | "type": "library", 1147 | "extra": { 1148 | "branch-alias": { 1149 | "dev-master": "3.0.x-dev" 1150 | } 1151 | }, 1152 | "autoload": { 1153 | "classmap": [ 1154 | "src/" 1155 | ] 1156 | }, 1157 | "notification-url": "https://packagist.org/downloads/", 1158 | "license": [ 1159 | "BSD-3-Clause" 1160 | ], 1161 | "authors": [ 1162 | { 1163 | "name": "Jeff Welch", 1164 | "email": "whatthejeff@gmail.com" 1165 | }, 1166 | { 1167 | "name": "Sebastian Bergmann", 1168 | "email": "sebastian@phpunit.de" 1169 | }, 1170 | { 1171 | "name": "Adam Harvey", 1172 | "email": "aharvey@php.net" 1173 | } 1174 | ], 1175 | "description": "Provides functionality to recursively process PHP variables", 1176 | "homepage": "http://www.github.com/sebastianbergmann/recursion-context", 1177 | "time": "2017-03-03 06:23:57" 1178 | }, 1179 | { 1180 | "name": "sebastian/resource-operations", 1181 | "version": "1.0.0", 1182 | "source": { 1183 | "type": "git", 1184 | "url": "https://github.com/sebastianbergmann/resource-operations.git", 1185 | "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52" 1186 | }, 1187 | "dist": { 1188 | "type": "zip", 1189 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/resource-operations/ce990bb21759f94aeafd30209e8cfcdfa8bc3f52.zip", 1190 | "reference": "ce990bb21759f94aeafd30209e8cfcdfa8bc3f52", 1191 | "shasum": "" 1192 | }, 1193 | "require": { 1194 | "php": ">=5.6.0" 1195 | }, 1196 | "type": "library", 1197 | "extra": { 1198 | "branch-alias": { 1199 | "dev-master": "1.0.x-dev" 1200 | } 1201 | }, 1202 | "autoload": { 1203 | "classmap": [ 1204 | "src/" 1205 | ] 1206 | }, 1207 | "notification-url": "https://packagist.org/downloads/", 1208 | "license": [ 1209 | "BSD-3-Clause" 1210 | ], 1211 | "authors": [ 1212 | { 1213 | "name": "Sebastian Bergmann", 1214 | "email": "sebastian@phpunit.de" 1215 | } 1216 | ], 1217 | "description": "Provides a list of PHP built-in functions that operate on resources", 1218 | "homepage": "https://www.github.com/sebastianbergmann/resource-operations", 1219 | "time": "2015-07-28 20:34:47" 1220 | }, 1221 | { 1222 | "name": "sebastian/version", 1223 | "version": "2.0.1", 1224 | "source": { 1225 | "type": "git", 1226 | "url": "https://github.com/sebastianbergmann/version.git", 1227 | "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019" 1228 | }, 1229 | "dist": { 1230 | "type": "zip", 1231 | "url": "https://files.phpcomposer.com/files/sebastianbergmann/version/99732be0ddb3361e16ad77b68ba41efc8e979019.zip", 1232 | "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019", 1233 | "shasum": "" 1234 | }, 1235 | "require": { 1236 | "php": ">=5.6" 1237 | }, 1238 | "type": "library", 1239 | "extra": { 1240 | "branch-alias": { 1241 | "dev-master": "2.0.x-dev" 1242 | } 1243 | }, 1244 | "autoload": { 1245 | "classmap": [ 1246 | "src/" 1247 | ] 1248 | }, 1249 | "notification-url": "https://packagist.org/downloads/", 1250 | "license": [ 1251 | "BSD-3-Clause" 1252 | ], 1253 | "authors": [ 1254 | { 1255 | "name": "Sebastian Bergmann", 1256 | "email": "sebastian@phpunit.de", 1257 | "role": "lead" 1258 | } 1259 | ], 1260 | "description": "Library that helps with managing the version number of Git-hosted PHP projects", 1261 | "homepage": "https://github.com/sebastianbergmann/version", 1262 | "time": "2016-10-03 07:35:21" 1263 | }, 1264 | { 1265 | "name": "webmozart/assert", 1266 | "version": "1.2.0", 1267 | "source": { 1268 | "type": "git", 1269 | "url": "https://github.com/webmozart/assert.git", 1270 | "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f" 1271 | }, 1272 | "dist": { 1273 | "type": "zip", 1274 | "url": "https://files.phpcomposer.com/files/webmozart/assert/2db61e59ff05fe5126d152bd0655c9ea113e550f.zip", 1275 | "reference": "2db61e59ff05fe5126d152bd0655c9ea113e550f", 1276 | "shasum": "" 1277 | }, 1278 | "require": { 1279 | "php": "^5.3.3 || ^7.0" 1280 | }, 1281 | "require-dev": { 1282 | "phpunit/phpunit": "^4.6", 1283 | "sebastian/version": "^1.0.1" 1284 | }, 1285 | "type": "library", 1286 | "extra": { 1287 | "branch-alias": { 1288 | "dev-master": "1.3-dev" 1289 | } 1290 | }, 1291 | "autoload": { 1292 | "psr-4": { 1293 | "Webmozart\\Assert\\": "src/" 1294 | } 1295 | }, 1296 | "notification-url": "https://packagist.org/downloads/", 1297 | "license": [ 1298 | "MIT" 1299 | ], 1300 | "authors": [ 1301 | { 1302 | "name": "Bernhard Schussek", 1303 | "email": "bschussek@gmail.com" 1304 | } 1305 | ], 1306 | "description": "Assertions to validate method input/output with nice error messages.", 1307 | "keywords": [ 1308 | "assert", 1309 | "check", 1310 | "validate" 1311 | ], 1312 | "time": "2016-11-23 20:04:58" 1313 | } 1314 | ], 1315 | "packages-dev": [], 1316 | "aliases": [], 1317 | "minimum-stability": "stable", 1318 | "stability-flags": [], 1319 | "prefer-stable": false, 1320 | "prefer-lowest": false, 1321 | "platform": [], 1322 | "platform-dev": [] 1323 | } 1324 | --------------------------------------------------------------------------------