public function registerClimate(Container $container)
 {
     $container['climate/system'] = function (Container $container) {
         $system = Mockery::mock(Linux::class);
         $system->shouldReceive('hasAnsiSupport')->andReturn(true);
         $system->shouldReceive('width')->andReturn(80);
         return $system;
     };
     $container['climate/output'] = function (Container $container) {
         $output = Mockery::mock(Output::class);
         $output->shouldReceive('persist')->andReturn($output);
         $output->shouldReceive('sameLine')->andReturn($output);
         $output->shouldReceive('write');
         return $output;
     };
     $container['climate/reader'] = function (Container $container) {
         $reader = Mockery::mock(Stdin::class);
         $reader->shouldReceive('line')->andReturn('line');
         $reader->shouldReceive('char')->andReturn('char');
         $reader->shouldReceive('multiLine')->andReturn('multiLine');
         return $reader;
     };
     $container['climate/util'] = function (Container $container) {
         return new UtilFactory($container['climate/system']);
     };
     $container['climate'] = function (Container $container) {
         $climate = new CLImate();
         $climate->setOutput($container['climate/output']);
         $climate->setUtil($container['climate/util']);
         $climate->setReader($container['climate/reader']);
         return $climate;
     };
 }