Example #1
0
 public function testGenerator()
 {
     \QA\SoftMocks::redefineGenerator(self::class, 'exampleGenerator', function () {
         (yield 3);
         (yield 4);
         (yield 5);
     });
     $all_values = [];
     foreach ($this->exampleGenerator() as $v) {
         $all_values[] = $v;
     }
     $this->assertEquals([3, 4, 5], $all_values);
 }
 public function originalFunction($name)
 {
     SoftMocks::restoreFunction($name);
 }
Example #3
0
 public static function revertMocks()
 {
     \QA\SoftMocks::restoreAll();
 }
<?php

require_once dirname(__DIR__) . '/vendor/badoo/soft-mocks/src/bootstrap.php';
\QA\SoftMocks::setPhpunitPath('/vendor/phpunit/');
require_once \QA\SoftMocks::rewrite(dirname(__DIR__) . '/vendor/autoload.php');
require_once \QA\SoftMocks::rewrite(__DIR__ . '/unit/BaseLoggerTestCase.php');
Example #5
0
<?php

require_once dirname(__DIR__) . '/vendor/badoo/soft-mocks/src/bootstrap.php';
\QA\SoftMocks::setRewriteInternal(true);
\QA\SoftMocks::setPhpunitPath('/vendor/phpunit/');
require_once \QA\SoftMocks::rewrite(dirname(__DIR__) . '/vendor/autoload.php');
require_once \QA\SoftMocks::rewrite(__DIR__ . '/unit/BaseLoggerTestCase.php');
require_once \QA\SoftMocks::rewrite(__DIR__ . '/CodeCoverageFilter.php');
require_once \QA\SoftMocks::rewrite(__DIR__ . '/PHPUnitCommand.php');
// inject into phpunit
class_exists(\PHPUnit_Util_Fileloader::class);
\QA\SoftMocks::init();
Example #6
0
<?php

require_once 'src/bootstrap.php';
require_once \QA\SoftMocks::rewrite('common.php');
require_once \QA\SoftMocks::rewrite('vendor/autoload.php');
// should be included rewritten if you want redefine external libs
require_once \QA\SoftMocks::rewrite('SoftMocksExample.php');
echo "Result before applying SoftMocks = " . var_export(SoftMocksExample::run(), 1) . PHP_EOL;
SoftMocksExample::applyMocks();
echo "Result after applying SoftMocks = " . var_export(SoftMocksExample::run(), 1) . PHP_EOL;
SoftMocksExample::revertMocks();
echo "Result after reverting SoftMocks = " . var_export(SoftMocksExample::run(), 1) . PHP_EOL;
 public function removeFileFromWhitelist($filename)
 {
     $filename = SoftMocks::rewrite($filename);
     parent::removeFileFromWhitelist($filename);
 }
Example #8
0
<?php

/* You must preload PHP Parser before initializing Soft Mocks so that it does not try to rewrite it */
$php_parser_dir = dirname(__DIR__) . "/vendor/PHP-Parser/lib/PhpParser/";
require $php_parser_dir . "Autoloader.php";
\PhpParser\Autoloader::register(true);
$out = [];
exec('find ' . escapeshellarg($php_parser_dir) . " -type f -name '*.php'", $out);
foreach ($out as $f) {
    require_once $f;
}
/* Soft Mocks init */
require_once dirname(__DIR__) . "/src/QA/SoftMocks.php";
\QA\SoftMocks::init();
\QA\SoftMocks::setPhpunitPath('/phpunit.phar/');