Inheritance: extends PHPUnit_Framework_TestCase
 public function testNextIncrement()
 {
     $nextIncField = array('type' => 'hidden', 'options' => array('label' => false), 'event' => array('name' => 'next_increment', 'params' => array('table' => 'koalas', 'column' => 'gum_leaves', 'min' => 42)));
     $app = $this->getApp(false);
     $this->getExtension($app)->config['csrf'] = false;
     $this->getExtension($app)->config['testing_form']['fields']['next_inc'] = $nextIncField;
     $app['request'] = Request::create('/');
     $boltforms = new BoltForms($app);
     $boltforms->makeForm('testing_form');
     $fields = $this->formValues();
     $fields['next_inc'] = $nextIncField;
     $boltforms->addFieldArray('testing_form', $fields);
     $parameters = array('testing_form' => array('name' => 'Gawain Lynch', 'email' => '*****@*****.**', 'message' => 'Hello'));
     $app['request'] = Request::create('/', 'POST', $parameters);
     $app->boot();
     // Mock the database query
     $mocker = new DoctrineMockBuilder();
     $db = $mocker->getConnectionMock();
     $queries = array();
     $db->expects($this->any())->method('executeQuery')->will($this->returnCallback(function ($query, $params) use(&$queries, $mocker) {
         $queries[] = $query;
         return $mocker->getStatementMock();
     }));
     $db->expects($this->any())->method('fetchColumn')->with($this->equalTo('koalas'))->willReturn(55);
     $app['db'] = $db;
     // Mock Bolt\Users
     $users = $this->getMock('\\Bolt\\Users', array('getUsers'), array($app));
     $users->expects($this->any())->method('getUsers')->willReturn(array('id' => 1));
     $app['users'] = $users;
     $result = $boltforms->processRequest('testing_form', array('success' => true), true);
     $this->assertEquals('SELECT MAX(gum_leaves) as max FROM koalas', $queries[0]);
     $this->assertArrayHasKey('next_inc', $result);
     $this->assertSame(42, $result['next_inc']);
 }
Example #2
0
 public function testHandleWithException()
 {
     $app = $this->getApp();
     $app['request'] = Request::createFromGlobals("/");
     $log = new Logger('logger.system');
     $log->pushHandler(new SystemHandler($app));
     $mocker = new DoctrineMockBuilder();
     $db = $mocker->getConnectionMock();
     $db->expects($this->any())->method('insert')->with($this->equalTo("bolt_log_system"));
     $app['db'] = $db;
     $log->addRecord(Logger::DEBUG, 'test', array('event' => '', 'exception' => new \Exception()));
 }
Example #3
0
 public function testHandle()
 {
     $app = $this->getApp();
     $app['config']->set('general/changelog/enabled', true);
     $log = new Logger('logger.system');
     $handler = new RecordChangeHandler($app);
     $mocker = new DoctrineMockBuilder();
     $db = $mocker->getConnectionMock();
     $db->expects($this->once())->method('insert')->with($this->equalTo('bolt_log_change'), $this->callback(function ($arg) {
         return isset($arg['diff']) && $arg['diff'] === '{"title":["test","test2"]}';
     }));
     $app['db'] = $db;
     $log->pushHandler($handler);
     $log->addRecord(Logger::DEBUG, 'test', ['action' => 'UPDATE', 'contenttype' => 'pages', 'id' => 1, 'old' => ['title' => 'test'], 'new' => ['title' => 'test2'], 'comment' => 'An Update']);
 }
Example #4
0
 public function testGetActivityLevel()
 {
     $app = $this->getApp();
     $mocker = new DoctrineMockBuilder();
     $db = $mocker->getConnectionMock();
     $queries = [];
     $db->expects($this->any())->method('executeQuery')->will($this->returnCallback(function ($query, $params) use(&$queries, $mocker) {
         $queries[] = $query;
         return $mocker->getStatementMock();
     }));
     $app['db'] = $db;
     $app['request'] = Request::createFromGlobals();
     $log = $this->getLogManager($app);
     $log->getActivity('change', 10, 3, ['contenttype' => 'pages']);
 }