getMock('ConsoleOutput', array(), array(), '', false); $in = $this->getMock('ConsoleInput', array(), array(), '', false); $this->Shell = $this->getMock( 'BakeShell', array('in', 'out', 'hr', 'err', 'createFile', '_stop', '_checkUnitTest'), array($out, $out, $in) ); } /** * tearDown method * * @return void */ public function tearDown() { parent::tearDown(); unset($this->Dispatch, $this->Shell); } /** * test bake all * * @return void */ public function testAllWithModelName() { App::uses('User', 'Model'); $userExists = class_exists('User'); $this->skipIf($userExists, 'User class exists, cannot test `bake all [param]`.'); $this->Shell->Model = $this->getMock('ModelTask', array(), array(&$this->Dispatcher)); $this->Shell->Controller = $this->getMock('ControllerTask', array(), array(&$this->Dispatcher)); $this->Shell->View = $this->getMock('ModelTask', array(), array(&$this->Dispatcher)); $this->Shell->DbConfig = $this->getMock('DbConfigTask', array(), array(&$this->Dispatcher)); $this->Shell->DbConfig->expects($this->once()) ->method('getConfig') ->will($this->returnValue('test')); $this->Shell->Model->expects($this->never()) ->method('getName'); $this->Shell->Model->expects($this->once()) ->method('bake') ->will($this->returnValue(true)); $this->Shell->Controller->expects($this->once()) ->method('bake') ->will($this->returnValue(true)); $this->Shell->View->expects($this->once()) ->method('execute'); $this->Shell->expects($this->once())->method('_stop'); $this->Shell->expects($this->at(0)) ->method('out') ->with('Bake All'); $this->Shell->expects($this->at(5)) ->method('out') ->with('Bake All complete'); $this->Shell->connection = ''; $this->Shell->params = array(); $this->Shell->args = array('User'); $this->Shell->all(); $this->assertEquals('User', $this->Shell->View->args[0]); } }