38 lines
952 B
PHP
38 lines
952 B
PHP
<?php
|
|
|
|
if (php_sapi_name() != 'cli') {
|
|
die('Must run from command line');
|
|
}
|
|
|
|
error_reporting(E_ALL | E_STRICT);
|
|
ini_set('display_errors', 1);
|
|
ini_set('log_errors', 0);
|
|
ini_set('html_errors', 0);
|
|
|
|
foreach(array(__DIR__ . '/../vendor', __DIR__ . '/../../../../vendor') as $vendorDir) {
|
|
if(is_dir($vendorDir)) {
|
|
require_once $vendorDir . '/autoload.php';
|
|
break;
|
|
}
|
|
}
|
|
|
|
function test_notify(cli\Notify $notify, $cycle = 1000000, $sleep = null) {
|
|
for ($i = 0; $i < $cycle; $i++) {
|
|
$notify->tick();
|
|
if ($sleep) usleep($sleep);
|
|
}
|
|
$notify->finish();
|
|
}
|
|
|
|
function test_notify_msg(cli\Notify $notify, $cycle = 1000000, $sleep = null) {
|
|
$notify->display();
|
|
for ($i = 0; $i < $cycle; $i++) {
|
|
// Sleep before tick to simulate time-intensive work and give time
|
|
// for the initial message to display before it is changed
|
|
if ($sleep) usleep($sleep);
|
|
$msg = sprintf(' Finished step %d', $i + 1);
|
|
$notify->tick(1, $msg);
|
|
}
|
|
$notify->finish();
|
|
}
|