コード例 #1
0
ファイル: SimpleQueueTest.php プロジェクト: dilab/cakephp-sqs
 /**
  * Sets up a mocked logger stream
  *
  * @return void
  **/
 public function setUp()
 {
     parent::setUp();
     $class = $this->getMockClass('BaseLog', array('write'), array(), 'SQSBaseLog');
     CakeLog::config('queuetest', array('engine' => $class, 'types' => array('error', 'debug'), 'scopes' => array('sqs')));
     $this->logger = CakeLog::stream('queuetest');
     CakeLog::disable('stderr');
     Configure::write('SQS', array());
 }
コード例 #2
0
 /**
  * setup create a request object to get out of router later.
  *
  * @return void
  */
 public function setUp()
 {
     parent::setUp();
     App::build(array('View' => array(CAKE . 'Test' . DS . 'test_app' . DS . 'View' . DS)), App::RESET);
     Router::reload();
     $request = new CakeRequest(null, false);
     $request->base = '';
     Router::setRequestInfo($request);
     Configure::write('debug', 2);
     CakeLog::disable('stdout');
     CakeLog::disable('stderr');
 }
コード例 #3
0
 /**
  * test LogError()
  *
  * @return void
  */
 public function testLogError()
 {
     @unlink(LOGS . 'error.log');
     // disable stderr output for this test
     if (CakeLog::stream('stderr')) {
         CakeLog::disable('stderr');
     }
     LogError('Testing LogError() basic function');
     LogError("Testing with\nmulti-line\nstring");
     if (CakeLog::stream('stderr')) {
         CakeLog::enable('stderr');
     }
     $result = file_get_contents(LOGS . 'error.log');
     $this->assertRegExp('/Error: Testing LogError\\(\\) basic function/', $result);
     $this->assertNotRegExp("/Error: Testing with\nmulti-line\nstring/", $result);
     $this->assertRegExp('/Error: Testing with multi-line string/', $result);
 }
コード例 #4
0
ファイル: CakeLogTest.php プロジェクト: yuuicchan0912/sample1
 /**
  * test disable invalid stream
  *
  * @expectedException CakeLogException
  * @return void
  */
 public function testStreamDisableInvalid()
 {
     CakeLog::disable('bogus_stream');
 }
コード例 #5
0
 /**
  * Tests you can set priorities on the jobs to be run
  *
  * @return void
  **/
 public function testExecutePriorities()
 {
     CakeLog::disable('stderr');
     Configure::write('Gearman.prefix', 'test');
     $client = $this->getMock('GearmanClient', array('doLowBackground', 'doHighBackground'));
     GearmanQueue::client($client);
     $client->expects($this->any())->method('returnCode')->will($this->returnValue(GEARMAN_SUCCESS));
     $client->expects($this->at(0))->method('doLowBackground')->with('test_foo', json_encode('data'))->will($this->returnValue(GEARMAN_SUCCESS));
     $client->expects($this->at(1))->method('doHighBackground')->with('test_foo', json_encode('data'))->will($this->returnValue(GEARMAN_SUCCESS));
     GearmanQueue::execute('foo', 'data', 'low');
     GearmanQueue::execute('foo', 'data', 'high');
 }
コード例 #6
0
 /**
  * Test file and console and logging
  *
  * @return void
  */
 public function testFileAndConsoleLogging()
 {
     CakeLog::disable('stdout');
     CakeLog::disable('stderr');
     // file logging
     $this->Shell->log_something();
     $this->assertTrue(file_exists(LOGS . 'error.log'));
     unlink(LOGS . 'error.log');
     $this->assertFalse(file_exists(LOGS . 'error.log'));
     // both file and console logging
     require_once CORE_TEST_CASES . DS . 'Log' . DS . 'Engine' . DS . 'ConsoleLogTest.php';
     $mock = $this->getMock('ConsoleLog', array('write'), array(array('types' => 'error')));
     TestCakeLog::config('console', array('engine' => 'Console', 'stream' => 'php://stderr'));
     TestCakeLog::replace('console', $mock);
     $mock->expects($this->once())->method('write')->with('error', $this->Shell->testMessage);
     $this->Shell->log_something();
     $this->assertTrue(file_exists(LOGS . 'error.log'));
     $contents = file_get_contents(LOGS . 'error.log');
     $this->assertContains($this->Shell->testMessage, $contents);
     CakeLog::enable('stdout');
     CakeLog::enable('stderr');
 }