/**
  *
  */
 public function testProgressWithCustomTemplates()
 {
     $output = m::mock('mako\\cli\\output\\Output');
     $output->shouldReceive('write')->once()->with("\r00/10 ____________________   0% ");
     $output->shouldReceive('write')->once()->with("\r01/10 ++__________________  10% ");
     $output->shouldReceive('write')->once()->with("\r02/10 ++++________________  20% ");
     $output->shouldReceive('write')->once()->with("\r03/10 ++++++______________  30% ");
     $output->shouldReceive('write')->once()->with("\r04/10 ++++++++____________  40% ");
     $output->shouldReceive('write')->once()->with("\r05/10 ++++++++++__________  50% ");
     $output->shouldReceive('write')->once()->with("\r06/10 ++++++++++++________  60% ");
     $output->shouldReceive('write')->once()->with("\r07/10 ++++++++++++++______  70% ");
     $output->shouldReceive('write')->once()->with("\r08/10 ++++++++++++++++____  80% ");
     $output->shouldReceive('write')->once()->with("\r09/10 ++++++++++++++++++__  90% ");
     $output->shouldReceive('write')->once()->with("\r10/10 ++++++++++++++++++++ 100% ");
     $output->shouldReceive('write')->once()->with(PHP_EOL);
     $progressBar = new ProgressBar($output, 10);
     $progressBar->setEmptyTemplate('_');
     $progressBar->setFilledTemplate('+');
     $progressBar->draw();
     for ($i = 0; $i < 10; $i++) {
         $progressBar->advance();
     }
 }
Example #2
0
 /**
  * Draws a progress bar and returns a progress bar instance.
  *
  * @access  protected
  * @param   int                                  $items       Total number of items
  * @param   int                                  $redrawRate  Redraw rate
  * @return  \mako\cli\output\helpers\ProgessBar
  */
 protected function progressBar($items, $redrawRate = null)
 {
     $progressBar = new ProgressBar($this->output, $items, $redrawRate);
     $progressBar->setEmptyTemplate('<red>-</red>');
     $progressBar->setFilledTemplate('<green>=</green>');
     $progressBar->draw();
     return $progressBar;
 }